* calc.texi (General Mode Commands): Calc file should be in .emacs.d.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
3f670e9a
EZ
12009-12-19 Eli Zaretskii <eliz@gnu.org>
2
be996d82
EZ
3 * .gdbinit (pitx): Don't use enum names, use their values. Remove
4 reference to non-existing value GET_FROM_COMPOSITION.
5 (pgx): Don't use enum names, use their values.
6 (pitmethod): New helper command.
7 (pitx): Use it to display iteration method.
8 (pgrowit): New command.
9
ad903955
EZ
10 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
11
3f670e9a
EZ
12 Update dependencies in Makefile.in.
13
14 * Makefile.in (alloc.o): Depend on termhooks.h.
15 (atimer.o): Depend on blockinput.h.
16 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
17 and frame.h.
18 (callint.o): Depend on systime.h, coding.h, and composite.h.
19 (callproc.o): Depend on buffer.h.
20 (casefiddle.o): Don't depend on charset.h.
21 (casetab.o): Depend on character.h.
22 (ccl.o): Depend on composite.h.
23 (chartab.o): Depend on ccl.h.
24 (cm.o): Depend on dispextern.h.
25 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
26 (coding.o): Don't depend on $(INTERVALS_H).
27 (composite.o): Don't depend on dispextern.h explicitly (it's in
28 $(INTERVALS_H)). Depend on ccl.h.
29 (data.o): Depend on systime.h, coding.h, composite.h,
30 dispextern.h, font.h, and ccl.h.
31 (dired.o): Depend on composite.h.
32 (dispnew.o): Depend on coding.h. Don't depend explicitly on
33 composite.h (it's in $(INTERVALS_H)).
34 (doc.o): Depend on systime.h, coding.h, and composite.h.
35 (editfns.o): Don't depend explicitly on dispextern.h.
36 (emacs.o): Depend on frame.h and coding.h.
37 (eval.o): Depend on coding.h, composite.h, and xterm.h.
38 (fileio.o): Depend on frame.h and commands.h. Don't depend
39 explicitly on dispextern.h.
40 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
41 composite.h.
42 (fns.o): Don't depend on termhooks.h.
43 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
44 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
45 coding.h, $(INTERVALS_H), window.h, xterm.h.
46 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
47 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
48 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
49 fontset.h, ccl.h, and ftfont.h.
50 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
51 (gtkutil.o): Depend on dispextern.h and composite.h.
52 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
53 termhooks.h, and ccl.h.
54 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
55 (intervals.o): Depend on systime.h and coding.h.
56 (keyboard.o): Depend on composite.h and coding.h.
57 (keymap.o): Depend on coding.h and frame.h.
58 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
59 (macros.o): Depend on systime.h, coding.h, and composite.h.
60 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
61 and atimer.h.
62 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
63 dispextern.h explicitly.
64 (print.o): Depend on termhooks.h, coding.h, and ccl.h. Don't
65 depend explicitly on dispextern.h and composite.h.
66 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
67 (regex.o): Don't depend on charset.h.
68 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
69 (search.o): Don't depend explicitly on composite.h.
70 (sound.o): Depend on atimer.h and systime.h.
71 (syntax.o): Don't depend explicitly on composite.h.
72 (sysdep.o): Depend on coding.h and composite.h.
73 (term.o): Depend on xterm.h and buffer.h.
74 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
75 (textprop.o): Don't depend on dispextern.h explicitly.
76 (undo.o): Depend on dispextern.h.
77 (window.o): Depend on coding.h and termhooks.h. Don't depend on
78 dispextern.h and composite.h explicitly.
79 (xdisp.o): Depend on ccl.h.
80 (xfaces.o): Depend on coding.h and ccl.h.
81 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
82 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
83 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
84 ftfont.h.
85 (xgselect.o): New dependency.
86 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
87 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
88 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
89 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
90 (xsmfns.o): Depend on frame.h and dispextern.h.
91 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
92 sysselect.h.
93
7a6f7fea
AS
942009-12-19 Andreas Schwab <schwab@linux-m68k.org>
95
96 * font.c (Fclear_font_cache): Pass correct cache argument to
97 font_clear_cache.
98
f4c21026
AS
992009-12-16 Andreas Schwab <schwab@linux-m68k.org>
100
101 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
102 twice.
103
f7ab0997
CY
1042009-12-15 Chong Yidong <cyd@stupidchicken.com>
105
106 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
107 calling file-remote-p. Reported by Jim Meyering.
108
fa8e045a
MA
1092009-12-15 Michael Albinus <michael.albinus@gmx.de>
110
111 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
112 avoid compiler warnings. (Bug #5217).
113
a63dba42
KH
1142009-12-14 Kenichi Handa <handa@m17n.org>
115
116 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
117 in 8-bit encoding.
118
36acb2a7
JD
1192009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
120
121 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
122 tooltip windows.
123
223e5fc6
JD
1242009-12-13 Jan Djärv <jan.h.d@swipnet.se>
125
36acb2a7
JD
126 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
127 Xatom_net_window_type.
128
129 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
130 Xatom_net_window_type.
131
b8f00677
JD
132 * xterm.c (my_log_handler): New function.
133 (x_term_init): Set my_log_handler as log handler during gtk_init
134 so we can filter out buggy messages. (bug #5120).
135
e5f0bc9a
JD
136 * xterm.c (xg_scroll_callback): Parameter list changed,
137 use parameter GtkScrollType to determine scroll/line/page.
138 Only allow dragging if a button < 4 is grabbed (bug #5177).
139 (xg_end_scroll_callback): New function.
140 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
141 xg_create_scroll_bar.
142
143 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
144 (scroll_end_callback): Remove.
145 (xg_create_scroll_bar): Add parameter end_callback, bind it to
146 button-release-event. Replace value-changed event with change-value,
147 bug #5177,
148 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
149 bug #5177.
150
151 * gtkutil.h (XG_LAST_SB_DATA): Remove.
152 (xg_create_scroll_bar): Add GCallback end_callback.
153
223e5fc6
JD
154 * xftfont.c (QClcdfilter): New variable.
155 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
156 (syms_of_xftfont): Initialize QClcdfilter.
157
3c055b77
JD
1582009-12-12 Jan Djärv <jan.h.d@swipnet.se>
159
160 * xsettings.c (struct xsettings): Add member seen.
161 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 162 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
163 (apply_xft_settings): Only update Xft settings with what member seen
164 indicates as new.
165
05fe33ff
EZ
1662009-12-12 Eli Zaretskii <eliz@gnu.org>
167
168 * dispextern.h (struct text_pos): Use EMACS_INT;
169 (struct glyph): Use EMACS_INT for charpos.
170 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
171 region_beg_charpos, region_end_charpos,
172 redisplay_end_trigger_charpos, and also for
173 iterator_stack_entry.end_charpos and
174 iterator_stack_entry.stop_charpos.
175
e8d7886a
JD
1762009-12-12 Jan Djärv <jan.h.d@swipnet.se>
177
178 * gtkutil.c (scroll_end_callback): New function (bug #5177)
179 (xg_create_scroll_bar): Call scroll_end_callback on button release
180 event (bug #5177).
181 (xg_event_is_for_scrollbar): != replaced with ==.
182
d0db2ec8
KH
1832009-12-12 Kenichi Handa <handa@m17n.org>
184
185 * ftfont.c (struct ftfont_info): New member matrix.
186 (ftfont_open): Setup xftfont_info->matrix.
187 (MFLTFontFT): New member matrix.
188 (FLOOR, CEIL, ROUND): New macros.
189 (ftfont_get_metrics): Handle matrix transformation.
190 (ftfont_shape_by_flt): New arg matrix. Callers changed.
191
192 * xftfont.c (struct xftfont_info): New member matrix.
193 (xftfont_open): Setup xftfont_info->matrix.
194
1952009-12-10 Kenichi Handa <handa@m17n.org>
196
197 * xdisp.c (append_space_for_newline): Consider face-remapping.
198
2cc7b62f
AS
1992009-12-09 Andreas Schwab <schwab@linux-m68k.org>
200
b87dd913
AS
201 * xsettings.c: Include "keyboard.h".
202
eba5eb94
AS
203 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
204
2cc7b62f
AS
205 Fix implicit function declarations.
206 * cmds.c: Include "frame.h".
207 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
208 * frame.h: Move declaration of delete_frame outside of
209 HAVE_WINDOW_SYSTEM.
210
a4ef73c8
CY
2112009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
212
213 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
214
215 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
216 GTK builds.
217
944a300c
AS
2182009-12-07 Andreas Schwab <schwab@linux-m68k.org>
219
220 * unexelf.c (unexec): Don't search for .data twice.
221
022eef62
CY
2222009-12-05 Chong Yidong <cyd@stupidchicken.com>
223
426ac949
CY
224 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
225 if push failed.
226 (handle_line_prefix): Set avoid_cursor_p here. Check return value
227 of push_display_prop (Bug#5000).
228
022eef62
CY
229 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
230 value of font_list_entities (Bug#5085).
231
be95bee9
JB
2322009-12-04 Juanma Barranquero <lekktu@gmail.com>
233
234 Fix `string-to-number' to deal consistently with integers and floats.
235 * lread.c (isfloat_string): New argument ignore_trailing to accept all
236 trailing characters, not just whitespace.
237 (read1): Pass new arg 0 to keep old behavior.
238 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
239 trailing chars, as it is already done for integers. Doc fixes.
240 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
241
24c2d7ce
EZ
2422009-12-04 Eli Zaretskii <eliz@gnu.org>
243
244 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>: Delete
245 unused enumeration value.
246
7e694795
EZ
2472009-12-03 Eli Zaretskii <eliz@gnu.org>
248
249 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
250
84b31826
SM
2512009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
252
253 * process.c (Fmake_network_process): Fix up the tests for
254 "connectionless socket", so they DTRT for seqpacket sockets as well.
255
f00c449b
SM
2562009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
257
258 * process.c (Qseqpacket): New symbol.
259 (HAVE_SEQPACKET): New macro.
260 (Fmake_network_process): Accept new :type `seqpacket'.
261 (init_process): Add `seqpacket' feature when applicable.
262 (syms_of_process): Initialize Qseqpacket.
263
8096a0ff
YM
2642009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
265
266 * font.c (font_load_for_lface, font_open_by_name): Don't store name
267 if entity is Qnil.
268
3e0de07f
SM
2692009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
270
271 * print.c (print_preprocess): Preprocess the key_and_value table of
272 hashtables, even tho they're "hidden" (bug#5082).
273
abeafb2a
JD
2742009-11-29 Jan Djärv <jan.h.d@swipnet.se>
275
276 * frame.c (frame_make_pointer_invisible)
277 (frame_make_pointer_visible): Declare f before statements.
278
4bf47195
EZ
2792009-11-28 Eli Zaretskii <eliz@gnu.org>
280
281 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
282 omitted dependencies on lisp.h.
283
c525b3f2
JD
2842009-11-27 Jan Djärv <jan.h.d@swipnet.se>
285
ece2d4ed
JD
286 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
287 is NULL.
288
289 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
290
291 * frame.c (frame_make_pointer_invisible)
3e0de07f 292 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
293 frame.
294
c525b3f2
JD
295 * search.c (simple_search): Remove warning by making *p const.
296
2f00e299
DN
2972009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
298
299 * xdisp.c (power_letter): Remove duplicate const.
300
084b049b
JD
3012009-11-25 Jan Djärv <jan.h.d@swipnet.se>
302
a1fadc6f
JD
303 * term.c (delete_tty): Remove check for last terminal (bug#4970).
304
084b049b
JD
305 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
306 defaults (bug #5025).
307
28259cac
SM
3082009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
309
310 * insdel.c (adjust_markers_for_delete): Move it in the
311 right direction! (bug#4803)
312
e8e14166
YM
3132009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
314
315 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
316
317 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
318
86677b58
GM
3192009-11-24 Glenn Morris <rgm@gnu.org>
320
321 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
322
581e51e8
JD
3232009-11-23 Jan Djärv <jan.h.d@swipnet.se>
324
cfc86c7a
JD
325 * Makefile.in: Must create deps for ecrt0.o in its rule.
326
581e51e8
JD
327 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
328 because that is what Gtk+ font dialog understands.
329
330 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
331 of Fcopy_sequence.
332 (font_open_by_name): Put name given into QCname for font-object returned.
333
334 * frame.c (x_set_font): Save original font name as frame parameter
335 font-parameter.
336
337 * xsettings.c (set_default_xft_settings): New function.
338 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
339 is found.
340
8b264ecb
AS
3412009-11-22 Andreas Schwab <schwab@linux-m68k.org>
342
343 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
344 searching backwards through multibyte buffer.
345
872870b2
JD
3462009-11-21 Jan Djärv <jan.h.d@swipnet.se>
347
348 * xterm.c: #include xgselect.h.
349 (x_initialize): Call xgselect_initialize.
350
351 * xsettings.c (something_changedCB): C++ comments => C comments.
352 (init_gconf): Do not deal with any GLib file descriptors, xg_select
353 does that now.
354
355 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
356 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
357 (scroll_bar_button_cb): Remove.
358 (create_menus): C++ comments => C comments. Don't bind grab-notify
359 event.
360 (xg_create_scroll_bar): Don't bind button-press-event and
361 button-release-event.
362
363 * process.c: Include xgselect.h if defined (USE_GTK) ||
364 defined (HAVE_GCONF).
365 (wait_reading_process_output): Call xg_select for the same condition.
366
367 * xgselect.c (xg_select): New function to better integrate with
368 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
369
370 * xgselect.h: New file, declare xg_select, xgselect_initialize.
371
372 * Makefile.in (XOBJ): Add xgselect.o.
373
62a6e103
AS
3742009-11-21 Andreas Schwab <schwab@linux-m68k.org>
375
376 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Remove
377 ignored second argument. All callers changed.
378 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
379 (RE_STRING_CHAR_AND_LENGTH): Likewise.
380 * xdisp.c (string_char_and_length): Likewise.
381
b0ca0f33
DN
3822009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
383
384 * xterm.c (x_new_font):
385 * print.c (print_object):
386 * cmds.c (Fself_insert_command): Move declarations before statements.
387
dd5a6279
CY
3882009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
389
390 * s/cygwin.h: Remove unneeded linker flags.
391
4a8e097d
JD
3922009-11-20 Jan Djärv <jan.h.d@swipnet.se>
393
0d1d0d26
JD
394 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
395
396 * xsettings.h: Declare xsettings_get_system_font.
397
398 * xsettings.c (xsettings_get_system_font): New function.
399 (init_gconf): No use initiating gconf unless we have Xft also.
400 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
401 HAVE_GCONF.
402
4a8e097d
JD
403 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
404 add a blank entry so it doesn't collapse into nothing.
405
8ab1650e
SM
4062009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
407
408 * lread.c (Funintern): Comment out last change.
409
82c602f0
RS
4102009-11-19 Richard Stallman <rms@gnu.org>
411
412 * lread.c (Funintern): Error if symbol is t or nil.
413
87e32266
SM
4142009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
415
416 * insdel.c (make_gap_larger): Don't make as many assumptions about the
417 representation of Lisp integers.
418 Reported by MJ Chan <mjchan.inbox@gmail.com>.
419
1b9ac145
AS
4202009-11-17 Andreas Schwab <schwab@linux-m68k.org>
421
422 * lisp.h: Remove declaration of Ffont_get_system_font.
423 * xfns.c: Move include of "xsettings.h".
424 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
425
dfb3c4c6
JD
4262009-11-17 Jan Djärv <jan.h.d@swipnet.se>
427
87e32266
SM
428 * xsettings.c (something_changedCB, Ffont_get_system_font):
429 Check use_system_font.
dfb3c4c6
JD
430 (syms_of_xsettings): DEFVAR font-use-system-font.
431
9370c1d8
AS
4322009-11-17 Andreas Schwab <schwab@linux-m68k.org>
433
25fe851a
AS
434 * xfns.c (x_default_font_parameter): Remove dead assignment.
435
9370c1d8
AS
436 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
437
637fa988
JD
4382009-11-17 Jan Djärv <jan.h.d@swipnet.se>
439
87e32266 440 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 441 not have FC_LCD_*. #define them if not there.
a6eb20d8 442
87e32266 443 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 444
637fa988
JD
445 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
446
447 * xterm.c (handle_one_xevent): Call xft_settings_event for
448 ClientMessage, PropertyNotify and DestroyNotify.
449 (x_term_init): If we have XFT, get DPI from Xft.dpi.
450 Call xsettings_initialize.
451
452 * xftfont.c (xftfont_fix_match): New function.
453 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
454 Call xftfont_fix_match after XftFontMatch.
455
456 * xfont.c (xfont_driver): Initialize all members.
457
87e32266
SM
458 * xfns.c (x_default_font_parameter):
459 Try font from Ffont_get_system_font.
637fa988
JD
460 Do not get font from x_default_parameter if we got one from
461 Ffont_get_system_font.
87e32266 462 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
463
464 * w32font.c (w32font_driver): Initialize all members.
465
466 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
467
468 * lisp.h: Declare syms_of_xsettings.
469
87e32266
SM
470 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
471 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
472
473 * ftfont.c (ftfont_filter_properties): New function.
474
475 * frame.c (x_set_font): Remove unused variable lval.
476
87e32266 477 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
478
479 * font.c (font_put_extra): Don't return if val is nil, it means
480 boolean option is off.
481 (font_parse_fcname): Collect all extra properties in extra_props
482 and call filter_properties for all drivers with extra_props and
483 font as parameter.
87e32266
SM
484 (font_open_entity): Do not use cache, it does not pick up new
485 fontconfig settings like hinting.
637fa988
JD
486 (font_load_for_lface): If spec had a name in it, store it in entity.
487
488 * emacs.c (main): Call syms_of_xsettings
489
490 * config.in: HAVE_GCONF is new.
491
492 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
493 xsettings.o is new.
494
5a942932
KH
4952009-11-17 Kenichi Handa <handa@m17n.org>
496
497 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
498 back to the default font in case that no suitable font is found.
499
b7c7a4d1
SM
5002009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
501
502 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
503 Suggested by Chad Brown <yandros@mit.edu>.
504 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
505
072f1e39
JD
5062009-11-16 Jan Djärv <jan.h.d@swipnet.se>
507
508 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
509
5d1e70a2
AS
5102009-11-14 Andreas Schwab <schwab@linux-m68k.org>
511
87e32266 512 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 513
a53cfbe5
JD
5142009-11-14 Jan Djärv <jan.h.d@swipnet.se>
515
473a99b7
JD
516 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
517 has a parent.
518
a53cfbe5
JD
519 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
520 dependency files in deps/. Include those files into Makefile.
521
522 * config.in: Generated (AUTO_DEPEND).
523
f04bb9b2
MA
5242009-11-13 Michael Albinus <michael.albinus@gmx.de>
525
b7c7a4d1 526 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
527 Vdbus_registered_functions_table, because it contains also
528 properties. Fix docstring.
b7c7a4d1 529 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 530
8f11f7ec
SM
5312009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
532
533 * alloc.c (mark_object): Don't reprocess marked strings.
534 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
535 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
536
8a605fe8
KH
5372009-11-13 Kenichi Handa <handa@m17n.org>
538
8f11f7ec 539 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
540 semantics of Vword_combining_categories.
541 (Vword_combining_categories): Describe the slight change of the
542 semantics.
543
241c4680
EZ
5442009-11-13 Eli Zaretskii <eliz@gnu.org>
545
546 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
547
548 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
549
5d58e44c
SM
5502009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
551
552 * xdisp.c (syms_of_xdisp): Fix typo in last change.
553
5e13f9d3
JB
5542009-11-12 Juanma Barranquero <lekktu@gmail.com>
555
556 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
557
cf54c754
DR
5582009-11-11 David Reitter <david.reitter@gmail.com>
559
560 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
561 variables to fix 2009-11-09 change.
562
a4ada374
DN
5632009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
564
91433552
DN
565 * process.c (ifflag_def): Make flag_sym constant.
566 (Fnetwork_interface_info): Use a constant pointer.
567 (ifflag_table):
568 * xfns.c (cursor_bits):
569 * xdisp.c (power_letter):
570 * termcap.c (speeds, esctab):
571 * sysdep.c (baud_convert):
572 * keyboard.c (lispy_accent_codes, modifier_names):
573 * image.c (xbm_format, xpm_format, pbm_format, png_format)
574 (jpeg_format, tiff_format, gif_format, svg_format)
575 (interlace_start, interlace_increment, gs_format):
576 * gtkutil.c (separator_names):
577 * fringe.c (swap_nibble):
578 * fns.c (base64_value_to_char, base64_char_to_value):
579 * fileio.c (make_temp_name_tbl):
580 * coding.c (suffixes): Make constant.
581
f4265f6c
DN
582 * frame.c (make_initial_frame):
583 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
584 build_string.
585 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
586
04420943
DN
587 * s/freebsd.h:
588 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
589
0a5d24ae
DN
590 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
591 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
592
a4ada374
DN
593 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
594 * xterm.c (syms_of_xterm):
595 * xfaces.c (syms_of_xfaces):
596 * xdisp.c (syms_of_xdisp):
597 * lread.c (syms_of_lread):
598 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
599 build_string.
91433552 600
a4ada374
DN
601 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
602
af98fc7f
SM
6032009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
604
8ab1650e 605 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 606
e90292a9
JD
6072009-11-10 Jan Djärv <jan.h.d@swipnet.se>
608
609 * keyboard.h: Declare timer_check.
610
611 * keyboard.c (timer_check_2): New function that does what the old
612 timer_check did.
613 (timer_check): Call timer_check_2 until -1 or a non-zero time is
614 returned, i.e. don't return -1 with timers pending.
615
616 * process.c: Remove extern declaration of timer_check.
617
618 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
619 even if timer_check returned -1.
620
af98fc7f
SM
621 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
622 xg_dialog_data.
e90292a9
JD
623 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
624 the event loop.
625 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
626 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
627 Destroy the dialog after xg_dialog_run.
628
045b83c0
SM
6292009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
630
631 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
632
1fb99a3a
JD
6332009-11-10 Jan Djärv <jan.h.d@swipnet.se>
634
635 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
636
04e452cb
JB
6372009-11-09 Juanma Barranquero <lekktu@gmail.com>
638
639 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
640
ef7417fd
SM
6412009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
642
643 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
644 w32menu.c, and nsmenu.m.
645 Simplify the obsolete case where position is nil.
646 (cleanup_popup_menu): New function, moved from nsmenu.m.
647 (struct skp): Remove slot `notreal'.
648 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
649 adjust callers.
650 (single_menu_item): Adjust call to parse_menu_item.
651 (syms_of_menu): Defsubr x-popup-menu.
652 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
653 (keymap_panes): Don't export any more.
654 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
655 (xmenu_show): Declare.
656 * keyboard.c (parse_menu_item): Remove arg `notreal'.
657 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
658 * keyboard.h (parse_menu_item): Update declaration.
659 * xmenu.c (Fx_popup_menu): Remove.
660 (syms_of_xmenu): Don't defsubr x-popup-menu.
661 * w32menu.c (Fx_popup_menu): Remove.
662 (syms_of_w32menu): Don't defsubr x-popup-menu.
663 * nsmenu.m (cleanup_popup_menu): Remove.
664 (ns_menu_show): Rename from ns_popup_menu and remove all the code
665 moved to menu.c's Fx_popup_menu.
666 (Fx_popup_menu): Remove.
667 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
668 menu_items (it's done in menu.c already).
669
424d6179
SM
6702009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
671
672 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
673 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
674
c0df13a6 6752009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
676
677 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 678 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
679 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
680 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
681
2de9f71c
SM
6822009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
683
684 Let integers use up 2 tags to give them one extra bit and thus double
685 their range.
686 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
687 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
688 New macros.
689 (enum Lisp_Type): Use them. Give explicit values.
690 (Lisp_Type_Limit): Remove.
691 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
692 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
693 Pay attention to USE_2_TAGS_FOR_INTS.
694 (INTEGERP): Use LISP_INT_TAG_P.
695 * fns.c (internal_equal): Simplify the default case.
696 (sxhash): Use case_Lisp_Int.
697 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
698 any more.
699 (Ftype_of): Use case_Lisp_Int.
700 (store_symval_forwarding): Take into account the fact that Ints can
701 now have more than one tag.
702 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
703 buffer_slot_type_mismatch):
704 * xfaces.c (face_attr_equal_p):
705 * print.c (print_object):
706 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
707 Use case_Lisp_Int.
708
323637a2
EZ
7092009-11-06 Eli Zaretskii <eliz@gnu.org>
710
7ac65b38
EZ
711 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
712
323637a2
EZ
713 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
714 warning.
715
e511451f
JD
7162009-11-06 Jan Djärv <jan.h.d@swipnet.se>
717
718 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
719
720 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
721
722 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
723 ButtonPressRelease and MotionNotify (bug#4870).
724
5e2327cf
DN
7252009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
726
5adc433e
DN
727 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
728
d67b4f80
DN
729 * xterm.c (syms_of_xterm):
730 * xselect.c (syms_of_xselect):
731 * xmenu.c (syms_of_xmenu):
732 * xfns.c (syms_of_xfns):
733 * xfaces.c (syms_of_xfaces):
734 * xdisp.c (syms_of_xdisp):
735 * window.c (syms_of_window):
736 * w32fns.c (syms_of_w32fns):
737 * undo.c (syms_of_undo):
738 * textprop.c (syms_of_textprop):
739 * terminal.c (syms_of_terminal):
740 * syntax.c (syms_of_syntax):
741 * sound.c (syms_of_sound):
742 * search.c (syms_of_search):
743 * print.c (syms_of_print):
744 * minibuf.c (syms_of_minibuf):
745 * macros.c (syms_of_macros):
746 * keymap.c (syms_of_keymap, initial_define_key)
747 (initial_define_lispy_key):
748 * keyboard.c (syms_of_keyboard):
749 * insdel.c (syms_of_insdel):
750 * image.c (syms_of_image):
751 * fringe.c (syms_of_fringe):
752 * frame.c (syms_of_frame):
753 * fontset.c (syms_of_fontset):
754 * fns.c (syms_of_fns):
755 * fns.c (syms_of_fns):
756 * fileio.c (syms_of_fileio):
757 * fileio.c (syms_of_fileio):
758 * eval.c (syms_of_eval):
759 * doc.c (syms_of_doc):
760 * dispnew.c (syms_of_display):
761 * dired.c (syms_of_dired):
762 * dbusbind.c (syms_of_dbusbind):
763 * data.c (syms_of_data):
764 * composite.c (syms_of_composite):
765 * coding.c (syms_of_coding):
766 * cmds.c (syms_of_cmds):
767 * charset.c (define_charset_internal, syms_of_character):
768 * ccl.c (syms_of_ccl):
769 * category.c (syms_of_category, init_category_once):
770 * casetab.c (syms_of_casetab):
771 * casefiddle.c (syms_of_casefiddle):
772 * callint.c (syms_of_callint):
773 * bytecode.c (syms_of_bytecode):
774 * buffer.c (keys_of_buffer, syms_of_buffer):
775 * alloc.c (syms_of_alloc):
776 * process.c (syms_of_process, init_process):
777 * lread.c (syms_of_lread, init_obarray):
778 * font.c (build_style_table):
779 * emacs.c (syms_of_emacs, main): Replace calls to intern with
780 intern_c_string, calls to make_pure_string with
781 make_pure_c_string. Use pure_cons instead of Fcons.
782
5e2327cf
DN
783 * process.c (socket_options): Make it const.
784 (set_socket_option, init_process): Use a const pointer.
785
786 * lread.c (intern_c_string): New function.
787 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
788 (defvar_int): Uset it. Make the name const char*.
789
790 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
791 (defvar_int): Update prototypes.
792 (DEFUN, EXFUN): Support for prototypes is now required.
793 (intern_c_string): New prototype.
794 (struct Lisp_Subr): Make symbol_name constant.
795
796 * font.c (struct table_entry): Remove unused member. Make NAMES
797 constant.
798 (weight_table, slant_table, width_table): Make constant.
799
800 * emacs.c (struct standard_args): Make name and longname constant.
801
802 * character.h (DEFSYM): Use intern_c_string.
803
a56eaaef
DN
8042009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
805
806 * alloc.c (make_pure_c_string): New function.
807
808 * eval.c (Fautoload): Purecopy all arguments.
809
f6a07420
KH
8102009-11-05 Kenichi Handa <handa@m17n.org>
811
812 * fileio.c (Finsert_file_contents): Be sure set coding-system of
813 the buffer in case of replace.
814
5d28d4b1
DN
8152009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
816
817 * puresize.h (BASE_PURESIZE): Increase to 1620000.
818
b349d111
SM
8192009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
820
d528b1ce
SM
821 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
822 when applicable (bug#4851).
823
b349d111
SM
824 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
825 (P_): Support for prototypes is now required.
826
c38eb027
CY
8272009-10-31 Chong Yidong <cyd@stupidchicken.com>
828
829 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
830 (Bug#4827).
831
0405f8d9
EZ
8322009-10-30 Eli Zaretskii <eliz@gnu.org>
833
d528b1ce 834 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 835
ca0a881a
DN
8362009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
837
838 * puresize.h (BASE_PURESIZE): Increase to 1470000.
839
d528b1ce
SM
840 * lread.c (Fload): Purecopy the file name when building
841 Vpreloaded_file_list.
ca0a881a 842
47e0e0e4
JR
8432009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
844
845 * w32fns.c (syms_of_w32fns): Change default value of
846 w32-scroll-lock-modifier to nil. (Bug#2827)
847
057bce6f
JB
8482009-10-26 Juanma Barranquero <lekktu@gmail.com>
849
782a943e 850 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 851
242bc74c
AS
8522009-10-26 Andreas Schwab <schwab@redhat.com>
853
854 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
855
522d013a
JB
8562009-10-26 Juanma Barranquero <lekktu@gmail.com>
857
858 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
859 For delta < 0, skip check that only makes sense when the mini-window
860 is going to be enlarged. (Bug#4534)
861
18060980
CY
8622009-10-25 Chong Yidong <cyd@stupidchicken.com>
863
864 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
865 string in menu maps (Bug#4471).
866
fec8f0fe
CY
8672009-10-24 Chong Yidong <cyd@stupidchicken.com>
868
869 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
870 FRAME_NS_VIEW on terminal frames (Bug#4765).
871
10d66ec0
AS
8722009-10-24 Andreas Schwab <schwab@linux-m68k.org>
873
1cae01f7
AS
874 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
875 DBUS_TYPE_UINTnn separately to get proper sign extension.
876
58a12889
AS
877 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
878 can properly handle unsigned types.
d528b1ce 879 (make_uid, make_gid): Remove.
58a12889 880
987c9327
AS
881 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
882 types again.
883
522d013a 884 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
885 (system_process_attributes): Likewise.
886
905a9ed3
DN
8872009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
888
889 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
890
891 * eval.c (Fautoload): Purecopy the filename. Simplify.
892
893 * category.c (Fdefine_category): Purecopy docstring.
894
a599b3e8
AS
8952009-10-23 Andreas Schwab <schwab@linux-m68k.org>
896
7b792fc9
AS
897 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
898
a599b3e8
AS
899 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
900
b35ac83e
CY
9012009-10-23 Chong Yidong <cyd@stupidchicken.com>
902
903 * window.c (Fwindow_edges, Fwindow_pixel_edges)
904 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
905 (Bug#4775).
906
e8903e00
SM
9072009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
908
909 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
910 (init_fileio_once):
911 * lisp.h (init_fileio_once): Remove.
912 * emacs.c (main): Don't call init_fileio_once.
913
8f43cbf3
DN
9142009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
915
916 * puresize.h (BASE_PURESIZE): Increase to 1430000.
917
26898943
AS
9182009-10-21 Andreas Schwab <schwab@linux-m68k.org>
919
920 * doprnt.c (doprnt): Fix overflow check.
921
5c646d5a
JD
9222009-10-21 Jan Djärv <jan.h.d@swipnet.se>
923
3132a7ea
JD
924 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
925
5c646d5a
JD
926 * xterm.h (x_wait_for_event): Declare it.
927
928 * xterm.c (pending_event_wait): New variable.
929 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
930 see pending_event_wait.eventtype.
931 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
932 (x_new_font): Call change_frame_size with new rows/columns before we
933 try to resize the frame.
5c646d5a 934 (x_wait_for_event): New function.
d528b1ce
SM
935 (x_set_window_size_1): Don't change gravity unless change_gravity
936 is set.
5c646d5a
JD
937 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
938 don't change frame size, instead wait for the ConfigureNotify.
939 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
940 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
941 (x_initialize): Initialize pending_event_wait.
942
943 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
944 size.
945
946 * widget.c (EmacsFrameSetValues): Add comment.
947 (EmacsFrameSetCharSize): Just call x_set_window_size.
948
949 * gtkutil.c (xg_frame_set_char_size): Flush events and call
950 x_wait_for_event.
d528b1ce 951 (flush_and_sync): Remove again.
5c646d5a
JD
952 (xg_get_font_name): Suggest monospace if no previous font is known.
953
e9c1637d
SM
9542009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
955
956 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 957 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 958
5a72cccb
YM
9592009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
960
961 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
962 processing pending events when event is filtered for input method.
ab04798f 963 (Bug#3681)
5a72cccb 964
2629aa37
JB
9652009-10-20 Juanma Barranquero <lekktu@gmail.com>
966
967 * fns.c: Add #endif accidentally removed in previous change.
968
c3417a74
DN
9692009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
970
971 * fns.c: Remove code for unsupported system: MAC_OS.
972 * image.c: Likewise. Include setjmp.h.
973
9685cef2
JD
9742009-10-19 Jan Djärv <jan.h.d@swipnet.se>
975
976 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
977 pixel -1 (bug #4742).
978
d7306fe6
DN
9792009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
980
019d2c4c
DN
981 * process.c (create_pty): Remove conditionals for no longer
982 supported systems: UNIPLUS and RTU.
983
ee6bacd4
DN
984 * xterm.c:
985 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
986
d7306fe6
DN
987 * alloc.c: Do not define struct catchtag.
988 * eval.c: Move struct catchtag definition ...
989 * lisp.h: ... here.
990
991 * image.c: Move png.h #include earlier to avoid warnings.
992
993 * xterm.c:
994 * xsmfns.c:
995 * xselect.c:
996 * xrdb.c:
997 * xmenu.c:
998 * xftfont.c:
999 * xfont.c:
1000 * xfns.c:
1001 * xfaces.c:
1002 * xdisp.c:
1003 * window.c:
1004 * widget.c:
1005 * w32xfns.c:
1006 * w32uniscribe.c:
1007 * w32term.c:
1008 * w32select.c:
1009 * w32reg.c:
1010 * w32proc.c:
1011 * w32menu.c:
1012 * w32inevt.c:
1013 * w32heap.c:
1014 * w32font.c:
1015 * w32fns.c:
1016 * w32console.c:
1017 * w32.c:
1018 * w16select.c:
1019 * vm-limit.c:
1020 * unexsol.c:
1021 * unexec.c:
1022 * unexcw.c:
1023 * unexaix.c:
1024 * undo.c:
1025 * tparam.c:
1026 * textprop.c:
1027 * terminfo.c:
1028 * terminal.c:
1029 * termcap.c:
1030 * term.c:
1031 * syntax.c:
1032 * sound.c:
1033 * sheap.c:
1034 * search.c:
1035 * scroll.c:
1036 * region-cache.c:
1037 * regex.c:
1038 * ralloc.c:
1039 * process.c:
1040 * print.c:
b024548b
DN
1041 * nsterm.m:
1042 * nsselect.m:
1043 * nsmenu.m:
1044 * nsimage.m:
1045 * nsfont.m:
1046 * nsfns.m:
d7306fe6
DN
1047 * msdos.c:
1048 * minibuf.c:
1049 * menu.c:
1050 * marker.c:
1051 * macros.c:
1052 * keymap.c:
1053 * keyboard.c:
1054 * intervals.c:
1055 * insdel.c:
1056 * indent.c:
1057 * gtkutil.c:
1058 * ftxfont.c:
1059 * ftfont.c:
1060 * fringe.c:
1061 * frame.c:
1062 * fontset.c:
1063 * font.c:
1064 * fns.c:
1065 * floatfns.c:
1066 * filelock.c:
1067 * fileio.c:
1068 * emacs.c:
1069 * editfns.c:
1070 * dosfns.c:
1071 * doprnt.c:
1072 * doc.c:
1073 * dispnew.c:
1074 * dired.c:
1075 * dbusbind.c:
1076 * data.c:
1077 * composite.c:
1078 * coding.c:
1079 * cmds.c:
1080 * cm.c:
1081 * chartab.c:
1082 * charset.c:
1083 * character.c:
1084 * ccl.c:
1085 * category.c:
1086 * casetab.c:
1087 * casefiddle.c:
1088 * callproc.c:
1089 * callint.c:
1090 * bytecode.c:
1091 * buffer.c:
1092 * atimer.c: Include setjmp.h. (Bug#4643)
1093
fd5f21e6
SM
10942009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
1095
4c0354d7
SM
1096 Remove leftover table unibyte_to_multibyte_table.
1097 * character.c (unibyte_to_multibyte_table): Remove.
1098 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
1099 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
1100 * character.h (UNIBYTE_TO_CHAR): New macro.
1101 (MAKE_CHAR_MULTIBYTE): Use it.
1102 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
1103 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
1104 (message_dolog, set_message_1):
1105 * search.c (Freplace_match):
1106 * editfns.c (Fcompare_buffer_substrings):
1107 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
1108 (concat):
1109 * insdel.c (copy_text, count_size_as_multibyte):
1110 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
1111 * term.c (produce_glyphs):
1112 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
1113 * regex.c (RE_CHAR_TO_MULTIBYTE):
1114 * cmds.c (internal_self_insert):
1115 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
1116
fd5f21e6
SM
1117 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
1118
4418646e
DN
11192009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
1120
1121 * puresize.h (BASE_PURESIZE): Increase to 1310000.
1122
35f5c1d2
JB
11232009-10-16 Juanma Barranquero <lekktu@gmail.com>
1124
1125 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
1126
a0cd8f6b
AR
11272009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
1128
1129 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
1130 still needed under Tiger.
1131
1132 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
1133
1134 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
1135 __Apple__.
1136
1137 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
1138
01a8d3fa
KH
11392009-10-15 Kenichi Handa <handa@m17n.org>
1140
1141 * print.c (print_object): Escape a symbol like "2E10" too.
1142
bf6c75c9 11432009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
1144
1145 Cleanups and changes for 64-bit compile under Snow Leopard.
1146 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
1147
1148 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
1149
c5959062 1150 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
1151 (ns_findfonts, nsfont_list_family): Use long format in printf, and
1152 cast argument.
1153 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 1154 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
1155
1156 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
1157
1158 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
1159 where appropriate.
1160
1161 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
1162 where appropriate.
6e4780c5
JB
1163 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
1164 Use stringWithUTF8String.
bf6c75c9
AR
1165 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
1166
6e4780c5
JB
1167 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
1168 Add formal protocol mention to inheritance.
bf6c75c9
AR
1169 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
1170
6e4780c5
JB
1171 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
1172 Fix printf format.
bf6c75c9
AR
1173 (ns_query_color): Use CGFloat where appropriate.
1174 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
1175 (EmacsScroller-mouseDown:) Use long format in printf, and cast
1176 argument.
1177
3d87f118
AR
1178 * config.in (NS_HAVE_NSINTEGER): Drop.
1179
a95c8102
AR
1180 * dbusbind.c (dbus-method-return-internal)
1181 (dbus-method-error-internal): Use long format in printf, and cast
1182 argument.
1183
1184 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
1185 in printf, and cast argument.
1186
6873acca 1187 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
1188 cast argument.
1189
9ec6f100
GM
11902009-10-11 Glenn Morris <rgm@gnu.org>
1191
1192 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
1193
5be883cd
JD
11942009-10-08 Jan Djärv <jan.h.d@swipnet.se>
1195
1196 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
1197 menu bar with a small width so it doesn't enlarge the frame.
1198
d7a39b51
JB
11992009-10-08 Juanma Barranquero <lekktu@gmail.com>
1200
1201 * fontset.c (Fset_fontset_font): Fix typos in error messages.
1202
0c2b6f8e
GM
12032009-10-06 Glenn Morris <rgm@gnu.org>
1204
1205 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
1206 SOME_MACHINE_LISP (this enters indirectly via DOC).
1207
e02131a2
EZ
12082009-10-05 Eli Zaretskii <eliz@gnu.org>
1209
1210 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
1211
b4744254
EZ
12122009-10-04 Eli Zaretskii <eliz@gnu.org>
1213
1214 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
1215 Doc fix.
1216
dbf64827
JB
12172009-10-03 Martin Rudalics <rudalics@gmx.at>
1218
1219 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
1220
e9a0aef8
MA
12212009-10-02 Michael Albinus <michael.albinus@gmx.de>
1222
d528b1ce 1223 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
1224 used anymore outside fileio.c.
1225
1226 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
1227
64eb2b56
JB
12282009-10-01 Juanma Barranquero <lekktu@gmail.com>
1229
1230 * lisp.h (Qdelete_directory_internal):
1231 Declare, instead of Qdelete_directory.
1232
1233 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1234
9d28c33e
SM
12352009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1236
1237 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1238
9d8f3bd9
MA
12392009-10-01 Michael Albinus <michael.albinus@gmx.de>
1240
9d28c33e 1241 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
1242 Fdelete_directory. It is not a command anymore. It has no file
1243 name handler.
1244
9694740b
SM
12452009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1246
1247 * xdisp.c (get_next_display_element): Use an enum in last change.
1248
748e162f
KH
12492009-09-28 Kenichi Handa <handa@m17n.org>
1250
9694740b 1251 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
1252 unibyte_display_via_language_environment in handling
1253 Vnobreak_char_display.
1254
17efd58d
AR
12552009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1256
1257 * nsterm.h (ns_app_name): New extern variable.
1258
1259 * nsterm.m (ns_app_name): New variable.
1260 (ns_term_init): Set and use it.
1261 (ns_term_shutdown): Use it.
1262
1263 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1264 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1265
1266 * nsfns.m (ns_set_name_iconic, ns_set_name)
1267 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1268 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1269
9694740b
SM
1270 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1271 Remove double-casting in client_data comparison.
31c2d412 1272
3208cb35
YM
12732009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1274
1275 * keyboard.c (make_lispy_event): Remember last wheel direction.
1276 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1277
b7d552d6
GM
12782009-09-26 Glenn Morris <rgm@gnu.org>
1279
1280 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1281 internal.elc. Add term/pc-win.elc.
1282 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1283 term/x-win.elc.
1284 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1285 term/w32-win.elc.
1286 (NS_SUPPORT): New.
1287 (lisp): Add NS_SUPPORT.
1288 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1289
4ff670a8
DR
12902009-09-25 David Reitter <david.reitter@gmail.com>
1291
1292 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1293 on Mac OS X 10.6+ (bug#4513).
1294
feabfb6c
JB
12952009-09-24 Juanma Barranquero <lekktu@gmail.com>
1296
1297 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
1298 some parts of Emacs code (like font selection) don't grok them.
1299 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 1300
de59072a
AS
13012009-09-24 Andreas Schwab <schwab@redhat.com>
1302
1303 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1304
a489517b
JB
13052009-09-24 Juanma Barranquero <lekktu@gmail.com>
1306
1307 * dired.c (Fdirectory_files): Fix typo in docstring.
1308
0592970c
AR
13092009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1310
1311 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1312 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1313 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1314 under GNUstep.
1315 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1316
1317 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1318 glyph advancement.
1319
48e8a88b
AR
13202009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1321
1322 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 1323 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
1324
1325 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1326 deleted (bug #4492).
1327
e14f0a78
AR
1328 * nsfont.m (Vns_reg_to_script): New lisp variable.
1329 (syms_of_nsfont): Declare it.
1330 (ns_registry_to_script): New function.
1331 (ns_get_req_script): Call it.
1332 (ns_findfonts): Don't give up on non-unicode registry.
1333
1334 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1335
5b650faa
SM
13362009-09-20 Tom Tromey <tromey@redhat.com>
1337
1338 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1339 batch mode (bug#4228).
1340
a489517b 13412009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
1342
1343 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 1344 carefully. (Bug #4339)
0bae4e09 1345
fcfe06f3
CY
13462009-09-18 Chong Yidong <cyd@stupidchicken.com>
1347
d798ba87 1348 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 1349
31642728
AR
13502009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1351
1352 * emacs.c (inhibit_x_resources): Update doc string for NS.
1353 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 1354 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
1355
1356 * nsterm.h (ns_no_defaults): Remove.
1357
1358 * nsterm.m (ns_no_defaults): Remove.
1359 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1360 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
1361 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1362 don't update the NSWindow itself.
1363 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 1364 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
1365
1366 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1367 ns_use_qd_smoothing.
1368
1369 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1370 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 1371 (x-close-connection): Drop PSFlush() under OS X.
a489517b 1372 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 1373
8686ac71
JB
13742009-09-17 Juanma Barranquero <lekktu@gmail.com>
1375
1376 * emacs.c (inhibit_x_resources): New variable.
1377 (main) [HAVE_NS]: Don't process --quick command line option.
1378 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1379
1380 * lisp.h (inhibit_x_resources): Declare it extern.
1381
1382 * w32reg.c (x_get_string_resource):
1383 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1384
e227ba05
EZ
13852009-09-17 Eli Zaretskii <eliz@gnu.org>
1386
362654a6
JB
1387 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1388 Add lisp/term/internal.elc.
e227ba05 1389
742d40e8
SM
13902009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1391
1392 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1393 (bug#4461).
1394
005bd5a2
DN
13952009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1396
1397 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1398
1399 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1400 (OBJECTS_MACHINE): Remove, unused.
1401
f9af9719
SM
14022009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1403
1404 * frame.c (x_get_resource_string): Remove unused.
1405
0307c7d2
JD
14062009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1407
1408 * xterm.c (x_new_font): Call change_frame_size before calling
1409 x_set_window_size, in case frame size won't change.
1410
1411 * frame.c (x_set_font): Remove dead code.
1412
428b13d6
SM
14132009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1414
1415 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1416
5766c380
SM
14172009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1418
1419 * lread.c (Fload): Don't output a message after loading an obsolete
1420 package any more (done in Lisp now).
1421
2fd0161b
CY
14222009-09-12 Chong Yidong <cyd@stupidchicken.com>
1423
1424 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1425
bc5e75b6
SM
14262009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1427
1428 * keymap.c (Fwhere_is_internal): Use nconc2.
1429
c31c985e
AM
14302009-09-11 Alan Mackenzie <acm@muc.de>
1431
1432 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1433 batch mode.
1434
78012bd2
AS
14352009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1436
1437 * xdisp.c (display_mode_element): Detect cycles.
1438
9d889332
SM
14392009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1440
1441 * keymap.c (where_is_internal): Don't erroneously return nil right after
1442 filling the cache.
1443 (where_is_internal_1): Fix up typo.
1444
7ab5d780
GM
14452009-09-11 Glenn Morris <rgm@gnu.org>
1446
1447 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1448 share a common doc-string.
1449
5238a749
SM
14502009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1451
66d77eda
SM
1452 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1453 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1454
5238a749
SM
1455 * keymap.c (QCadvertised_binding): New constant.
1456 (syms_of_keymap): Initialize it.
1457 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1458 if applicable.
1459
19f48442
SM
14602009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1461
50d4ba39
SM
1462 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1463 (parse_menu_item): Streamline since bindings are recomputed all the
1464 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1465 more and don't support lmenu's menu-alias any more either.
1466
a88a5372
SM
1467 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1468 (where_is_internal): Strip it down to only traverse the keymaps.
1469 Move the cache handling from Fwhere_is_internal to here.
1470 (Fwhere_is_internal): Move the handling of remapping and the choice of
1471 the best binding from where_is_internal to here.
1472 Unify the cached/noncached paths, so remapping is also handled
1473 correctly when the cache is used, and so the cache can be used to
1474 speed up remap-handling when applicable.
1475 Give preference to non-remapped bindings.
1476 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1477 non-remapped bindings.
1478 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1479 command remapping.
1480
19f48442
SM
1481 * xdisp.c (display_mode_element): Move list length limit from 50 to
1482 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1483
599498c3 14842009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1485
1486 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1487
f9b7b5ac
SM
14882009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1489
a53af587
JB
1490 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1491 (Bug#4334)
1492
f9b7b5ac
SM
1493 * keymap.c (where_is_internal): Filter out shadowed remappings.
1494 Assume that where_is_internal returns unshadowed bindings to simplify
1495 the code and get rid of the gotos. Use ASIZE.
1496
04f4b72d
JD
14972009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1498
4da146f2
JD
1499 * xterm.c (x_focus_changed): If we get a focusout and pointer
1500 is invisible, make it visible.
1501
04f4b72d
JD
1502 * xterm.h: Remove condition for declaration of
1503 x_*_window_to_frame.
1504
7cef7ce3
SM
15052009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1506
1507 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1508 initial terminal as well.
1509
a54fa5b7
JD
15102009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1511
1512 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1513 x_menubar_window_to_frame.
a54fa5b7
JD
1514
1515 * xterm.c: Remove declarations also in xterm.h
1516 (XTmouse_position): Do not return valid positions
1517 for clicks in the menubar and the toolbar for Gtk+.
1518
1519 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1520 if the widget for the event has the same top level as a frame,
1521 return the frame.
1522 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1523 internal windows, bug #4122.
1524 (x_non_menubar_window_to_frame): Remove.
1525
5a021dd0
GM
15262009-09-02 Glenn Morris <rgm@gnu.org>
1527
1528 * buffer.c (default-major-mode): Move most of the doc from here...
1529 (major-mode): ... to here.
1530
548fe2f3
NR
15312009-08-30 Nick Roberts <nickrob@snap.net.nz>
1532
1533 * process.c (wait_reading_process_output): Keep the descriptor
1534 when pty is used by a non-child process, e.g., in I/O buffer of
1535 GDB this allows inferior to be restarted.
1536
e0840eef
EZ
15372009-08-29 Eli Zaretskii <eliz@gnu.org>
1538
1539 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1540 both branches into one.
1541
82e98df4
SM
15422009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1543
1544 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1545 (main): Use enable-multibyte-characters rather than
1546 default-enable-multibyte-characters. Output a warning message when
1547 running a unibyte session.
1548
890617cb
YM
15492009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1550
1551 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1552 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1553 (copy_data_segment): Also copy __program_vars section.
1554 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1555 (dump_it) [LC_DYLD_INFO]: Use it.
1556
1557 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1558
e7adeadc
EZ
15592009-08-28 Eli Zaretskii <eliz@gnu.org>
1560
1561 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1562 $(SRC)/buildobj.h.
1563 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1564 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1565 $(SRC)/buildobj.h.
1566 (clean): Add buildobj.h.
1567
3ed8bbdc
TZ
15682009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1569
1570 * print.c (print_object): Set escapeflag to 1 when printing
1571 hashtable keys and values.
1572
155a6764
SM
15732009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1574
1575 * lread.c (read_integer): Use doubles (and potentially return a float
1576 number) as we do in string-to-number.
1577 (read1): Use strtol to read integers, signal errors on strtol's
1578 overflow and use floats if strtol's output is too large for
1579 Elisp integers.
1580
877610de
EZ
15812009-08-27 Eli Zaretskii <eliz@gnu.org>
1582
1583 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1584 (make-buildobj-SH): Fix last change.
1585 (SRC): Move to before where it's first used.
1586
ef73e7be
KH
15872009-08-27 Kenichi Handa <handa@m17n.org>
1588
550c8289
KH
1589 * process.c (send_process): Use encode_coding_object instead of
1590 encode_coding_string to perform eol-conversion even if the string
1591 is unibyte.
1592
60afa08d
KH
1593 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1594 character.
1595
ef73e7be 1596 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1597 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1598
7b3a82d7
DN
15992009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1600
5654bf63
DN
1601 * callproc.c (Fcall_process): Remove always true #if.
1602
7b3a82d7
DN
1603 * lisp.h: Replace #if 0 code for checking with text pointing to
1604 the --enable-checking configure flag.
1605
1606 * emacs.c (main): Mention the --enable-profiling configure flag
1607 instead of using CFLAGS.
1608
878bde49
KR
16092009-08-26 Ken Raeburn <raeburn@raeburn.org>
1610
1611 * Makefile.in (buildobj.h): New target.
1612 (doc.o): Depend on it.
1613 (temacs${EXEEXT}): Don't generate buildobj.lst.
1614 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1615 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1616 ($(BLD)/doc.$(O)): Depend on it.
1617 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1618 provided by Eli Zaretskii.)
1619 ($(TEMACS)): Don't generate buildobj.lst.
1620 * doc.c: Include buildobj.h.
1621 (buildobj): New static variable.
1622 (Fsnarf_documentation): Use it, instead of opening and reading
1623 buildobj.lst.
1624
1574224c
MA
16252009-08-25 Michael Albinus <michael.albinus@gmx.de>
1626
1627 * dbusbind.c (Fdbus_call_method)
1628 (Fdbus_call_method_asynchronously): Use English numeric format for
1629 timeout values in doc string.
1630
d9da2f45
KH
16312009-08-25 Kenichi Handa <handa@m17n.org>
1632
ef73e7be
KH
1633 * alloc.c (mark_char_table): New function.
1634 (mark_object): Use mark_char_table for a char-table.
1635
d9da2f45
KH
1636 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1637 (CHAR_TABLE_REF): Use it.
1638
c8edcc01
KR
16392009-08-23 Ken Raeburn <raeburn@raeburn.org>
1640
1641 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1642 before invoking the newly build emacs to check for load-path
1643 shadowing.
1644
7763401b
GM
16452009-08-22 Glenn Morris <rgm@gnu.org>
1646
1647 * Makefile.in (bootstrap_exe): New variable.
1648 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1649 Use ${bootstrap_exe}.
1650
729eadda
EZ
16512009-08-22 Eli Zaretskii <eliz@gnu.org>
1652
1653 * coding.h (encode_coding_string): Don't encode unibyte strings.
1654 (Bug#4047)
1655
eb4c6ace
MA
16562009-08-22 Michael Albinus <michael.albinus@gmx.de>
1657
1658 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1659
1660 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1661 intended as hotfix only.
1662 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1663
36e34d1b
AR
16642009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1665
1666 * nsterm.m (ns_get_color): Update documentation properly for last
1667 change, and clean up loose ends in the code left by it. Fix
1668 longstanding bug with 16-bit hex parsing, and add support for
1669 yet another X11 format (rgb:r/g/b) for compatibility.
1670 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1671 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1672
f983eb8a
SM
16732009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1674
1675 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1676
3f56d3c6
MA
16772009-08-20 Michael Albinus <michael.albinus@gmx.de>
1678
1679 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1680 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1681 (xd_initialize, xd_pending_messages): Check, whether
1682 $DBUS_SESSION_BUS_ADDRESS is set.
1683
fb641d68
YM
16842009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1685
1686 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1687
1688 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1689
cf59a374
GM
16902009-08-20 Glenn Morris <rgm@gnu.org>
1691
1692 * emacs.c (system-type): Doc fix.
1693
1373f3be
SM
16942009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1695
1696 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1697 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1698
058ed861
MA
16992009-08-18 Michael Albinus <michael.albinus@gmx.de>
1700
1373f3be
SM
1701 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1702 New functions.
058ed861
MA
1703 (xd_initialize): Revert change from 2009-08-16.
1704
563a866e 17052009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1706
1707 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1708 font-group vector, return nil.
5fc05db0 1709
e42bdf01
CY
17102009-08-17 Chong Yidong <cyd@stupidchicken.com>
1711
1712 * process.c (status_notify): Don't perform redisplay.
1713 (Fdelete_process, list_processes_1, process_send_signal):
1714 Expliticly perform redisplay.
1715 (wait_reading_process_output): Always check process status, but
1716 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1717
4230ab74
KR
17182009-08-17 Ken Raeburn <raeburn@raeburn.org>
1719
1373f3be 1720 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1721 (XFLOAT_INIT): New macro for storing a float value.
1722 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1723 * fns.c (sxhash): Copy out the value of a float in order to
1724 examine its bytes.
1725 * dbusbind.c (xd_append_arg): Likewise.
1726
4230ab74
KR
1727 * emacs.c (main): Don't call syms_of_data twice.
1728
a0645cdd
MA
17292009-08-16 Michael Albinus <michael.albinus@gmx.de>
1730
1731 * dbusbind.c (xd_initialize): Add connection file descriptor to
1732 input_wait_mask, in order to let select() detect, whether a new
1733 message has been arrived.
ca4f31ea 1734 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1735
485db0ba
MA
17362009-08-15 Michael Albinus <michael.albinus@gmx.de>
1737
1373f3be
SM
1738 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1739 New functions.
485db0ba
MA
1740
1741 * lisp.h (xd_pending_messages): Declare.
1742
1743 * keyboard.c (readable_events): Call xd_pending_messages.
1744
b5b98ff4
CY
17452009-08-15 Chong Yidong <cyd@stupidchicken.com>
1746
1373f3be 1747 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 1748
f8354c6e
CY
1749 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1750
b5b98ff4
CY
1751 * buffer.c (set_buffer_internal_1)
1752 (swap_out_buffer_local_variables): Check for unbound local
1753 variables (Bug#4138).
1754
8b9fc636
EZ
17552009-08-14 Eli Zaretskii <eliz@gnu.org>
1756
1757 * process.c (create_pty): Fix last change.
1758
ce959360
CY
17592009-08-13 Chong Yidong <cyd@stupidchicken.com>
1760
1761 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1762 (xbm_load_image): Caller changed.
64b807c9 1763 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 1764
c7baf7e9
NR
17652009-08-13 Nick Roberts <nickrob@snap.net.nz>
1766
1767 * process.c (create_pty): New function.
1768 (Fstart_process): Use it to allow Emacs to just associate a pty
1769 with the buffer. See associated change in gdb-mi.el.
1770 (list_processes_1): Deal with no program name.
1771 (start_process_unwind): Use pid == -2 to mean no process.
1772
1ac9108a
SM
17732009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1774
1775 * cmds.c (nonundocount): New global variable.
1776 (keys_of_cmds): Initialize it.
1777 (Fself_insert_command): Use it to combine upto 20 sequential chars
1778 into a single undo entry, just like the Qself_insert_command code in
1779 keyboard.c does.
1780 Call frame_make_pointer_invisible, also like the Qself_insert_command
1781 code in keyboard.c does.
1782 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1783 than its own local replacement for it.
1784
e267324c
KR
17852009-08-10 Ken Raeburn <raeburn@raeburn.org>
1786
1ac9108a 1787 * fns.c (concat): Don't re-set string length to its current value.
77437343 1788
1ac9108a
SM
1789 * coding.h (decode_coding_string, encode_coding_string):
1790 Use SBYTES macro.
f0bed503 1791
1ac9108a 1792 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
1793 (doprnt): Merge with doprnt1, discarding lispstrings code.
1794 * lisp.h (doprnt_lisp): Don't declare.
1795
416e006d
JL
17962009-08-07 Juri Linkov <juri@jurta.org>
1797
1798 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1799
6f7d5780
DN
18002009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1801
1802 * print.c (syms_of_print): Undo previous change.
1803
f19a0f5b
TZ
18042009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1805
1806 * lread.c (read1, syms_of_lread): Read hashtables back from the
1807 readable format.
1808
1809 * print.c (print_preprocess, print_object): Print hashtables fully
1810 and readably.
1811 (syms_of_print): Provide 'hashtable-print-readable.
1812
b9173dc2
AR
18132009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1814
1815 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1816 no family set.
1817 (nsfont_open): Handle case when entity has no family.
1818
1586503c
AR
18192009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1820
1821 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1822 element, not a list, for match case.
1823
087048cd
KH
18242009-07-28 Kenichi Handa <handa@m17n.org>
1825
1826 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1827 rigidly.
1828
1829 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1830 font_parse_xlfd. Check font properties more rigidly.
1831
780c2506
DN
18322009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1833
31fd7c5c
JB
1834 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1835 bsd-common.h.
780c2506 1836
a8c0cc18
KH
18372009-07-27 Kenichi Handa <handa@m17n.org>
1838
1839 * xfaces.c (face_with_height): Call font_clear_prop.
1840
4fbe2306
CY
18412009-07-26 Chong Yidong <cyd@stupidchicken.com>
1842
111d9af3
CY
1843 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
1844
1845 * xterm.c (x_term_init): Use Qx.
1846
4fbe2306
CY
1847 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
1848
1ac9108a 1849 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
1850 (ns_get_color): Revert 2009-07-16 change.
1851
beb0b7f9
EZ
18522009-07-25 Eli Zaretskii <eliz@gnu.org>
1853
1854 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 1855 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 1856
2baf5e76
KR
18572009-07-25 Ken Raeburn <raeburn@raeburn.org>
1858
1ac9108a
SM
1859 * coding.h (decode_coding_string, encode_coding_string):
1860 Use SCHARS macro.
8890e5f5 1861
2baf5e76 1862 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 1863 (load_depth): Delete.
2baf5e76
KR
1864 (Qload_in_progress): New variable.
1865 (load_unwind): Don't reference load_depth or load_in_progress.
1866 (Fload): Likewise; specbind Qload_in_progress instead.
1867 (init_lread): Don't initialize load_depth.
1868 (syms_of_lread): Initialize and protect Qload_in_progress.
1869
1395c6f5
AR
18702009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1871
1872 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
1873
4e2f36cf
AR
18742009-07-23 Yavor Doganov <yavor@gnu.org>
1875
1876 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
1877
5dd9a6f7
AR
18782009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1879
1880 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
1881 Bugs 3792, 3720, 2402.
1882 (ns_lookup_indexed_color): Check for bad index.
1883 (ns_index_color): Init unused slot to 0.
1884 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
1885 Bug 3714, possibly 3082.
5dd9a6f7 1886
c902b920
JR
18872009-07-22 Jason Rumney <jasonr@gnu.org>
1888
1ac9108a
SM
1889 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
1890 Position IME window at cursor (Bug#2570).
c902b920
JR
1891 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
1892 (globals_of_w32fns): Dynamically load functions required above.
1893
1894 * w32term.c (w32_draw_window_cursor): Send message to reposition
1895 any IME window.
1896
090101cf
CY
18972009-07-21 Chong Yidong <cyd@stupidchicken.com>
1898
1899 * fileio.c: Revert 2009-07-16 changes.
1900 (Vauto_save_include_big_deletions): New variable.
1901 (Fdo_auto_save): Disable auto-save only if
1902 auto-save-include-big-deletions is nil.
1903
e6583e3d
CY
19042009-07-21 Chong Yidong <cyd@stupidchicken.com>
1905
1906 * xdisp.c (move_it_to): For continued lines ending in a tab, take
1907 the overflowed pixels into account (Bug#3879).
1908
ece435a5
KR
19092009-07-21 Ken Raeburn <raeburn@raeburn.org>
1910
1911 * lread.c (load_depth): New variable.
1912 (Fload, load_unwind, init_lread): Set it to the load recursion
1913 depth; set load_in_progress as a simple boolean based on the
1914 current load_depth. (Bug#3892)
1915
40b2d973
AR
19162009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1917
1918 * nsfont.m (ns_has_attribute): Remove.
1919 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
1920
10be7e0d
JL
19212009-07-18 Juri Linkov <juri@jurta.org>
1922
1923 * process.c (Fset_process_query_on_exit_flag): Mention killing
1924 a buffer in docstring.
1925
fa055055
KH
19262009-07-17 Kenichi Handa <handa@m17n.org>
1927
1928 * casetab.c (shuffle): Fix the logic of setting up the cycle.
1929
042f7b69
YM
19302009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1931
1932 * nsfns.m (Fns_set_alpha): Remove function.
1933 (syms_of_nsfns): Don't defsubr it.
1934
1935 * nsterm.m (ns_get_color): Remove incompatible color formats.
1936 (ns_color_to_lisp): Generate #rrggbb color format string.
1937
4be941e3
RS
19382009-07-16 Richard Stallman <rms@gnu.org>
1939
1940 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
1941 (Fset_buffer_auto_saved): Handle save_length = -2.
1942
4e6b227d
CY
19432009-07-16 Chong Yidong <cyd@stupidchicken.com>
1944
1945 * xterm.c (Qx_gtk_map_stock): New var.
1946
1947 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
1948 of calling intern each time.
1949
a1856973
YM
19502009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1951
1952 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
1953 does tiling.
1954
1955 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
1956
497e54d8
KH
19572009-07-14 Kenichi Handa <handa@m17n.org>
1958
72d36834
KH
1959 * font.c (font_vconcat_entity_vectors): New function.
1960 (struct font_sort_data): New member font_driver_preference.
1961 (font_compare): Check font_driver_preference.
1962 (font_sort_entities): The format of the first argument changed.
1963 (font_delete_unmatched): Likewise.
1964 (font_list_entities): The return type changed.
1965 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
1966 (font_find_for_lface): Adjuste for the above changes.
1967 Don't suppress the checking of C even if the repertory supports it.
1968 (Flist_fonts): Adjust for the above changes.
72d36834 1969
1ac9108a
SM
1970 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
1971 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
1972 Reject a font who has adstyle property that is different from a
1973 langname derived from registry property.
1ac9108a 1974 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 1975
b6046155
EZ
19762009-07-13 Eli Zaretskii <eliz@gnu.org>
1977
1978 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
1979 local copy of dirfilename.
1980
fb6b6049
KH
19812009-07-13 Kenichi Handa <handa@m17n.org>
1982
e2402a5e
KH
1983 * chartab.c (sub_char_table_ref_and_range): Fix the range check
1984 against max_char.
1985
fb6b6049
KH
1986 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
1987 calling XSYMBOL (sym).
1988
65156807
EZ
19892009-07-11 Eli Zaretskii <eliz@gnu.org>
1990
1ac9108a
SM
1991 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
1992 New function.
1993 (directory_files_internal) [WINDOWSNT]:
1994 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
1995 the filesystem of the directory is fast or slow.
1996
1997 * w32.c (logon_network_drive): Don't assume PATH is an absolute
1998 file name.
1999 (is_slow_fs): New function.
2000 (stat): Use it to determine whether to issue more system calls to
2001 get accurate file attributes, when w32-get-true-file-attributes is
2002 `local'.
2003
e0ab5fcf
JD
20042009-07-10 Jan Djärv <jan.h.d@swipnet.se>
2005
2006 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 2007 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
2008 parameter font-parameter as default to the font dialog.
2009
784ceded
KH
20102009-07-10 Kenichi Handa <handa@m17n.org>
2011
2012 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
2013
fb8edc0b
EZ
20142009-07-09 Eli Zaretskii <eliz@gnu.org>
2015
1ac9108a 2016 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 2017
fb8edc0b
EZ
2018 * w32.c (stat): Treat UNC file names as residing on remote
2019 drives. (Bug#3542)
2020
635c75b1
KH
20212009-07-09 Kenichi Handa <handa@m17n.org>
2022
2023 * fontset.c (fontset_find_font): Fix previous change.
2024
c1d5ce94
MA
20252009-07-08 Michael Albinus <michael.albinus@gmx.de>
2026
2027 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
2028 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
2029 error flag.
2030
edb61b39
KH
20312009-07-08 Kenichi Handa <handa@m17n.org>
2032
374bf7e4
KH
2033 * fontset.c (fontset_find_font): Fix the logic of handling
2034 charset_matched.
2035 (font_for_char): Delete unused var.
2036 (generate_ascii_font_name): Delete it.
2037
edb61b39
KH
2038 * coding.h (JIS_TO_SJIS2): Fix the code range check.
2039
2040 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
2041 (encode_coding_sjis): Fix the code range check.
2042
0f3f018c
CY
20432009-07-07 Chong Yidong <cyd@stupidchicken.com>
2044
2045 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
2046 (Fexpand_file_name): Copy string data properly (Bug#3772).
2047
fcaf6f3a
JD
20482009-07-07 Jan Djärv <jan.h.d@swipnet.se>
2049
2050 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
2051 first MapNotify.
2052
6809ca75
KH
20532009-07-07 Kenichi Handa <handa@m17n.org>
2054
2055 * character.h (unibyte_has_multibyte_table): Delete extern.
2056 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
2057
2058 * charset.c (Fset_charset_priority): Update charset_unibyte.
2059 (syms_of_charset): Initialize charset_unibyte.
2060
2061 * character.c (unibyte_has_multibyte_table): Delete it.
2062 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
2063 charset_unibyte.
2064 (multibyte_char_to_unibyte_safe): Likewise.
2065 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
2066
1ac9108a 2067 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
2068 (x_produce_glyphs): Likewise.
2069
2070 * .gdbinit (xcharset): Fix the treating $arg0.
2071
ad9e2d54
EZ
20722009-07-04 Eli Zaretskii <eliz@gnu.org>
2073
2074 Emulation of `getloadavg' on MS-Windows.
2075 * w32.c: Include float.h
2076 (g_b_init_get_native_system_info, g_b_init_get_system_times)
2077 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
2078 (get_native_system_info, get_system_times): New functions.
2079 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
2080 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
2081 (globals_of_w32): Initialize g_b_init_get_native_system_info,
2082 g_b_init_get_system_times, and num_of_processors.
2083
0a3472c7
JR
20842009-07-03 Jason Rumney <jasonr@gnu.org>
2085
2086 * w32term.c (w32_initialize): Use standard types.
2087
80904120
EZ
20882009-07-03 Eli Zaretskii <eliz@gnu.org>
2089
2090 * dired.c (Ffile_attributes): Decode user and group names by the
2091 locale's encoding. (Bug#3443)
2092
6978862d
DN
20932009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
2094
f8d23104
DN
2095 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
2096 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
2097
2098 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
2099
2100 * term.c (init_tty): Remove spurious #ifdef.
2101
6978862d
DN
2102 * m/mips.h: Mention this file is also used for netbsd.
2103 * m/pmax.h: Remove file.
2104
e044e4fc
JD
21052009-07-03 Jan Djärv <jan.h.d@swipnet.se>
2106
2107 * xterm.h (struct x_display_info): Add invisible_cursor.
2108 (struct x_output): Add current_cursor.
2109
2110 * xterm.c (XTtoggle_invisible_pointer): New function.
2111 (x_define_frame_cursor): Don't define cursor if invisible or the
2112 same as before. Set current_cursor.
2113 (x_create_terminal): Set toggle_invisible_pointer_hook.
2114
2115 * xfns.c (make_invisible_cursor): New function.
2116 (x_set_mouse_color): Call make_invisible_cursor.
2117 Set current_cursor.
2118 (x_window): Set current_cursor.
2119
2120 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
2121
2122 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
2123 inserting a character.
2124 (read_avail_input): Call frame_make_pointer_visible.
2125
2126 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
2127 (frame_make_pointer_invisible, frame_make_pointer_visible):
2128 New functions.
e044e4fc
JD
2129 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
2130
2131 * frame.h: Declare frame_make_pointer_invisible and
2132 frame_make_pointer_visible.
2133 (struct frame): Add pointer_invisible.
2134
574c8efa
JD
21352009-07-02 Jan Djärv <jan.h.d@swipnet.se>
2136
7b507248
JD
2137 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
2138 frame isn't visible.
2139 (xg_frame_resized): If width/height is -1, get size of window
2140 from X server.
2141
2142 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
2143 for MapNotify.
2144
835bdaa7 2145 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 2146 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 2147 (flush_and_sync): Reintroduce.
574c8efa 2148
3f1c6666 21492009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 2150
31fd7c5c 2151 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
2152
2153 * xterm.c (x_handle_net_wm_state): Also look for sticky.
2154 (x_term_init): Initialize Xatom_net_wm_state_sticky.
2155
2156 * frame.h: Declare Qsticky.
2157
cad9ef74
JD
2158 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
2159
2160 * nsfns.m (ns_frame_parm_handlers): Ditto.
2161
2162 * frame.c: Declare Qsticky.
2163 (frame_parms): Add sticky.
2164
2165 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
2166
2167 * xterm.h: Declare x_set_sticky.
2168
2169 * xterm.c (x_set_sticky): New function.
2170
69b16610
JD
2171 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
2172 (xg_tool_bar_menu_proxy): Attach enter/leave events to
2173 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
2174
2175 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
2176
2177 * frame.c: Qmaximized is new.
2178 (x_set_frame_parameters): Do not handle fullscreen specially.
2179 Only set width and height if explicitly set.
2180 (x_set_fullscreen): Handle Qmaximized.
2181 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
2182 (syms_of_frame): Initialize Qmaximized.
2183
1ac9108a
SM
2184 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
2185 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
2186
2187 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
2188 for Expose event. Add call to x_check_fullscreen for MapNotify event.
2189 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
2190 set gravity to NorthWestGravity when USE_GTK.
2191 (set_wm_state): New function.
31fd7c5c 2192 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
2193 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
2194 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 2195 or the case when no window manager is running. That means remove calls
3f1c6666
JD
2196 to x_real_positions and x_fullscreen_adjust.
2197
2198 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
2199 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
2200 flush_and_sync.
2201 (xg_height_changed): New function.
2202 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
2203 and gtk_window_set_policy. Set frame gravity after parsing the
2204 geometry string.
3f1c6666
JD
2205 (xg_update_frame_menubar, free_frame_menubar)
2206 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
2207 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
2208 Remove calls to xg_frame_set_char_size.
2209
fd503d99
KH
22102009-07-01 Kenichi Handa <handa@m17n.org>
2211
2212 * keyboard.c (decode_keyboard_code): New function.
2213 (tty_read_avail_input): Decode the input bytes if necessary.
2214
1ac9108a
SM
2215 * coding.c (setup_coding_system):
2216 Initialize coding->carryover_bytes to 0.
fd503d99
KH
2217 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
2218 use Qno_conversion.
2219
24ed93fb
YM
22202009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2221
2222 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
2223
99061dfc
CY
22242009-06-30 Chong Yidong <cyd@stupidchicken.com>
2225
1ac9108a 2226 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 2227
ff90fbde
JR
22282009-06-30 Jason Rumney <jasonr@gnu.org>
2229
2230 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2231 is already loaded.
2232 Set user model ID if supported (bug#1849).
2233
5f445726
JM
22342009-06-29 Jim Meyering <meyering@redhat.com>
2235
2236 Remove useless if-before-xfree test.
2237 * nsfont.m (nsfont_close): Remove useless test.
2238 * term.c (delete_tty): Likewise.
2239 * w32.c (system_process_attributes): Likewise.
2240 * w32font.c (w32font_close): Likewise.
2241 * xfaces.c (x_free_gc): Likewise.
2242 * xselect.c (buffer): Likewise.
2243
b9607587
AS
22442009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2245
2246 * process.c (send_process): Keep decoded string in a local
2247 variable and protect it from GC. (Bug#3521)
2248
89ba96f4
EZ
22492009-06-28 Eli Zaretskii <eliz@gnu.org>
2250
2251 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2252 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2253
098a1589
CY
22542009-06-28 Chong Yidong <cyd@stupidchicken.com>
2255
485422be
CY
2256 * xdisp.c (start_display, handle_face_prop)
2257 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
2258 (redisplay_window, try_window_id, produce_image_glyph):
2259 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 2260
098a1589
CY
2261 * xterm.c (x_update_window_begin, x_new_focus_frame)
2262 (x_scroll_bar_handle_click, handle_one_xevent)
2263 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2264 (x_make_frame_visible, x_make_frame_invisible)
2265 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2266 code chunks that are now obsolete.
2267
78c38319
MA
22682009-06-28 Michael Albinus <michael.albinus@gmx.de>
2269
2270 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2271 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2272 for hours, when optimzation is enabled.
2273 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2274 (xd_read_message): Make them static.
2275
4189ed40
CY
22762009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2277
2278 * term.c (turn_on_face): Allow simultaneously bold and dim
2279 terminal faces (Bug#3530).
2280
cd9b5e16
CY
22812009-06-27 Chong Yidong <cyd@stupidchicken.com>
2282
4e23bedb
CY
2283 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2284
cd9b5e16
CY
2285 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2286 truncation glyphs (Bug#3686).
2287
07cc3c35
GM
22882009-06-27 Glenn Morris <rgm@gnu.org>
2289
2290 * m/pmax.h: Restore file, with only netbsd portions.
2291
31fd7c5c 22922009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 2293
cd9b5e16 2294 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 2295
42d4a64f
KH
22962009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2297
2298 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2299 the arg FORCE_SYMBOL.
2300
930fe55b 23012009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
2302
2303 * fontset.c (fontset_find_font): When a usable rfont_def is found
2304 in a fallback font-group, make it the first element of the group.
2305
57ebc3fd
CY
23062009-06-24 Chong Yidong <cyd@stupidchicken.com>
2307
2308 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2309
f084f942
KH
23102009-06-24 Kenichi Handa <handa@m17n.org>
2311
2312 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2313 set for C.
2314 (fontset_font): Record the availability of a font for C both in
2315 the realized fontsets of the current one and the default one.
2316
2f686c87
DN
23172009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2318
2319 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2320 conditional, it is always defined on AIX.
2321
666e158e
MB
23222009-06-23 Miles Bader <miles@gnu.org>
2323
2324 * window.c (Vrecenter_redisplay): New variable.
2325 (syms_of_window): Initialize it.
2326 (Qtty): New extern declaration.
2327 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2328
c6da7cd2
JM
23292009-06-23 Jim Meyering <meyering@redhat.com>
2330
1ac9108a
SM
2331 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2332 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 2333 pointer dereferences are guaranteed to be valid.
c6da7cd2 2334
678dca3d
KH
23352009-06-23 Kenichi Handa <handa@m17n.org>
2336
74d75424
KH
2337 * emacs.c (main): Call init_font ().
2338
2339 * font.h (Vfont_log): Extern it.
2340 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2341
2342 * font.c (font_sort_entities, font_list_entities)
2343 (font_matching_entity, font_open_entity)
2344 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2345 (Vfont_log): Delete static.
2346 (font_log_env_checked): Delete this variable.
2347 (font_add_log): Don't check font_log_env_checked.
2348 (font_deferred_log): Check Vfont_log.
2349 (init_font): New function.
2350
678dca3d
KH
2351 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2352
2353 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2354
2355 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2356
2357 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2358
2359 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2360 (face_for_char): Don't call font_deferred_log here.
2361 (font_for_char): Likewise.
2362
8a668709
CY
23632009-06-22 Chong Yidong <cyd@stupidchicken.com>
2364
9a01ee33
CY
2365 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2366 rather than its background_width for drawing the overline and
2367 underline (Bug#489).
2368
2369 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2370 rather than its background_width for drawing the overline and
2371 underline (Bug#489).
ec7c9926
CY
2372 (xg_default_icon_file): New variable.
2373 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2374 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 2375
8a668709
CY
2376 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2377 (load_overlay_strings): Remove externs.
2378 (fast_find_position): Function deleted.
2379 (mouse_face_from_buffer_pos): New function, based on
2380 fast_find_position. Correctly handle before-strings,
2381 display-strings, and after-strings (Bug#1220).
2382 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2383
4d4c02d8
CY
23842009-06-21 Chong Yidong <cyd@stupidchicken.com>
2385
1ac9108a 2386 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
2387 (move_it_in_display_line_to, move_it_in_display_line_to)
2388 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2389
70243478
CY
23902009-06-21 Chong Yidong <cyd@stupidchicken.com>
2391
2392 * Branch for 23.1.
2393
13087e59
JR
23942009-06-21 Jason Rumney <jasonr@gnu.org>
2395
2396 * w32term.c (keyboard_codepage): New static variable.
2397 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2398 (w32_read_socket) [WM_CHAR]: Use it to decode character
2399 input (bug#3237).
2400 (w32_initialize): Initialize it.
2401 (codepage_for_locale): New function.
2402
4735b74e
KR
24032009-06-20 Ken Raeburn <raeburn@raeburn.org>
2404
2405 * process.c (status_message): Pass Faset index argument as a lisp
2406 object, so as to work with USE_LISP_UNION_TYPE.
2407
0e727afa
YM
24082009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2409
2410 * coding.c (Ffind_coding_systems_region_internal):
2411 Cache checked characters.
2412
cf299835
KH
24132009-06-18 Kenichi Handa <handa@m17n.org>
2414
1ac9108a 2415 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2416
90f20d94
AS
24172009-06-18 Andreas Schwab <aschwab@redhat.com>
2418
2419 * xdisp.c (redisplay_internal): Check that the frame is still
2420 live after redisplay of its windows.
2421 (redisplay_windows): Check that the window is still live.
2422
7f1faf1c
KH
24232009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2424
2425 * coding.c (detect_coding_utf_16): Fix previous change.
2426
cc13543e
KH
24272009-06-16 Kenichi Handa <handa@m17n.org>
2428
2429 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2430 UTF-16 by checking the dispersion of Eth and Oth bytes.
2431
977b85f4
AS
24322009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2433
2434 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2435
66bd43d1
KH
24362009-06-15 Kenichi Handa <handa@m17n.org>
2437
2438 * process.c (status_message): Fix previous change. Be sure to
2439 decode a localized string.
2440
cb5ca9c5
YM
24412009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2442
2443 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2444 add comment explaining why.
2445
ec7709ba 24462009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2447
ec7709ba 2448 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2449
4b7f335c
AR
24502009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2451
2452 * nsfont.m (ns_attribute_value): Remove.
2453 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2454 (ns_has_attribute): Shrink the normal range.
2455 (ns_findfonts): Don't worry about requested spec in determining
2456 need for synthItal.
e41820ee 2457 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2458
73b26103
SZ
24592009-06-14 Seiji Zenitani <zenitani@mac.com>
2460
2461 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2462
5753e4da
KH
24632009-06-11 Kenichi Handa <handa@m17n.org>
2464
2465 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2466 overhang for the static composition case.
2467
3561b671
KH
24682009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2469
5753e4da
KH
2470 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2471 overhang for the automatic composition case.
2472
3561b671
KH
2473 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2474 composition case.
2475
852bbd41
CY
24762009-06-10 Chong Yidong <cyd@stupidchicken.com>
2477
2478 * xdisp.c (get_next_display_element): When handling wrap-prefix
2479 and line-prefix, treat \n as a control character (bug#3502).
2480
9903d1e6
KH
24812009-06-10 Kenichi Handa <handa@m17n.org>
2482
2483 * font.c (font_parse_family_registry): Fix for one-char foundry.
2484 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2485
0bcbaaaa
CY
24862009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2487
2488 * process.c (status_message): Fix handling of multibyte signal
2489 string (Bug#3499).
2490
40aa3f13
JM
24912009-06-09 Jim Meyering <meyering@redhat.com>
2492
1f80c7e2
CY
2493 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2494 color name is missing.
40aa3f13 2495
72d51285
KH
24962009-06-09 Kenichi Handa <handa@m17n.org>
2497
2498 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2499 FROM-CODE and TO-CODE are codepoints of CHARSET.
2500
c1d04d84
AR
25012009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2502
2503 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2504
25052009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2506
2507 Changes to support :script/:lang/:otf in NS font driver.
2508 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2509 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2510 indicate not part of font driver interface, and change callers.
2511 (ns_get_family): Remove pointless null check.
2512 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2513 ns_spec_to_descriptor, ns_descriptor_to_entity.
2514 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2515 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2516 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2517 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2518 (ns_get_req_script, ns_accumulate_script_ranges)
2519 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2520 New functions.
2521 (nsfont_list, nsfont_match): Use ns_findfonts.
2522 (nsfont_open): Use font descriptor instead of traits.
2523 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2524 (dump_glyphstring): Rename to ns_dump_glyphstring.
2525
c7eb9816
AR
2526 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2527
c1d04d84
AR
2528 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2529
2530 * fontset.c (fontset_from_font): Remove NS-specific code.
2531
ec7709ba 25322009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2533
2534 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2535 nonactive windows.
2536
31fd7c5c 25372009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2538
1ac9108a 2539 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2540
68852c13 25412009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2542
2543 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2544
6756cd1d
CY
25452009-06-07 Chong Yidong <cyd@stupidchicken.com>
2546
2547 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2548 account for the overflowing of newlines into the last glyph on the
2549 display line (Bug#3482).
2550
28bf482a
DR
25512009-06-05 David Reitter <david.reitter@gmail.com>
2552
ec7709ba
JB
2553 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2554 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2555 Fns_selection_exists_p, Fns_selection_owner_p.
2556
fdb55376
JR
25572009-06-03 Jason Rumney <jasonr@gnu.org>
2558
2559 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2560 available. (Bug#3379)
2561
05129fbe
KH
25622009-05-29 Kenichi Handa <handa@m17n.org>
2563
1ac9108a
SM
2564 * coding.c (get_translation_table):
2565 Check Venable_character_translation.
05129fbe 2566
ec7709ba 25672009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2568
ec7709ba
JB
2569 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2570 (x_make_frame_visible): Move frame to front rather than calling
15891144 2571 ns_raise_frame().
ec7709ba 2572 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2573 isn't key window.
ec7709ba 2574 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2575 drawRect may be called by NSView even if the frame is hidden.
2576
ec7709ba
JB
2577 * nsfns.m (Fx_create_frame): Follow other ports in
2578 determining visibility; default to t. Ensure async_visible is set.
15891144 2579
21f73755
EZ
25802009-05-23 Eli Zaretskii <eliz@gnu.org>
2581
2582 * dired.c (Ffile_attributes): Doc fix.
2583
34001e41
CY
25842009-05-22 Chong Yidong <cyd@stupidchicken.com>
2585
2586 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2587
46306a17
SM
25882009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2589
2590 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2591 and xfont_scratch_props.
2592 (syms_of_xfont): Do it here instead.
2593 (xfont_find_ccl_program): Delete, unused.
2594 (xfont_open): Delete unused var `i'.
2595
ef6e0694
KH
25962009-05-21 Kenichi Handa <handa@m17n.org>
2597
2598 * fontset.c (Qlatin): Don't make it static.
2599
46306a17
SM
2600 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2601 New functions.
ef6e0694
KH
2602 (xfont_scripts_cache, xfont_scratch_props): New variables.
2603 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2604 (xfont_list_pattern): Argument changed. Callers changed.
2605 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2606 (xfont_list): Don't reject a font spec with :script property.
2607 (xfont_has_char): Fix setting of encoding.
2608 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2609 xfont_scratch_props.
2610
26112009-05-19 Kenichi Handa <handa@m17n.org>
2612
46306a17 2613 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2614 Callers changed.
2615
26162009-05-18 Kenichi Handa <handa@m17n.org>
2617
2618 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2619
ac71ced7
SM
26202009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2621
2622 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2623 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2624
1c6d1051
YM
26252009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2626
2627 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2628 (x_delete_terminal): Dissociate resource database from display and
2629 then call XrmDestroyDatabase before closing display.
2630
9b9b779c
AR
26312009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2632
2633 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2634 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2635 whether selected frame is viable before raising it (based on patch
2636 by David Reitter), and improve commentary.
2637 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2638
cccd42d5
KH
26392009-05-15 Kenichi Handa <handa@m17n.org>
2640
2641 * font.c (Ffont_spec): Check arguments.
2642
337fbd17
CY
26432009-05-14 Chong Yidong <cyd@stupidchicken.com>
2644
2645 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2646 weight when testing attributes (Bug#3282).
2647
47a6002f
JD
26482009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2649
2650 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2651 what we expect to get in the next ConfigureNotify event.
2652
9cb363db
YM
2653 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2654 before Xft one (Bug#1696).
2655
b9126609
CY
26562009-05-07 David Reitter <david.reitter@gmail.com>
2657
2658 * nsfns.m (Fx_display_planes): Compute bitplanes using
2659 NSBitsPerPixelFromDepth (Bug#3207).
2660
27a69fd9
CY
26612009-05-10 Chong Yidong <cyd@stupidchicken.com>
2662
2663 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2664
00f37552
TTN
26652009-05-10 Ulrich Mueller <ulm@gentoo.org>
2666
2667 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2668
2d82a920
DR
26692009-05-07 David Reitter <david.reitter@gmail.com>
2670
ec7709ba
JB
2671 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2672 Respect mouse face background.
2d82a920 2673
46b0d52d
DR
26742009-05-07 David Reitter <david.reitter@gmail.com>
2675
ec7709ba
JB
2676 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2677 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2678 in ns_update_begin and ns_update_end.
2679
ce1b23bb
SM
26802009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2681
5996e1b7
SM
2682 * nsfns.m (ns_get_screen): Rewrite.
2683 Don't presume selected-frame is of type `ns'.
2684
ba98e3a0
SM
2685 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2686 all drivers.
2687
ce1b23bb
SM
2688 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2689
bcda200f
YM
26902009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2691
2692 * keyboard.h (add_user_signal): Fix typo in extern.
2693
2694 * lisp.h (add_user_signal): Remove extern.
2695
2696 * unexelf.c (unexec): Consider a section to precede the .bss section
2697 if its addresses overlap that of .bss.
2698 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2699 instead of dumping process.
2700
864660a2
SM
27012009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2702
2703 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2704
50da4e56
SM
27052009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2706
2707 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2708
51520a1a
DN
27092009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2710
2711 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2712 any statements.
2713
409ea3a1
AS
27142009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2715
59c4c60f
AS
2716 * process.c (read_process_output): Make sure the current buffer is
2717 always restored.
2718
409ea3a1
AS
2719 * coding.c (record_conversion_result): Don't modify
2720 Vlast_code_conversion_error for successful result.
2721 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2722
56f00ed2
KH
27232009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2724
2725 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2726 (load_charset_map): Remove unnecessary code.
56f00ed2 2727
4491c9d2
DR
27282009-04-30 David Reitter <david.reitter@gmail.com>
2729
35f5b128 2730 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2731 through f24.
2732
6970f632
CY
27332009-04-30 Chong Yidong <cyd@stupidchicken.com>
2734
2735 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2736
2737 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2738 face_at_buffer_position.
2739 (face_before_or_after_it_pos, get_next_display_element)
2740 (note_mouse_highlight): Update face_at_buffer_position call.
2741
2742 * term.c (term_mouse_highlight):
2743 * msdos.c (IT_note_mouse_highlight):
2744 * fontset.c (Finternal_char_font):
35f5b128 2745 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
2746
2747 * dispextern.h (face_at_buffer_position): Update prototype.
2748
0c616f63
KH
27492009-04-30 Kenichi Handa <handa@m17n.org>
2750
35f5b128 2751 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 2752
ad3aaf33
AS
27532009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2754
2755 * callproc.c (Fcall_process): Fix GC protection. Make sure
2756 current buffer is always restored.
2757
c3c963a0
YM
27582009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2759
2760 * atimer.c (init_atimer): Also clear stopped_atimers.
2761
2762 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2763
7e3386cb
YM
2764 * process.c (create_process): Clean up merger residues of
2765 2008-07-17 change.
2766
91f68422
CY
27672009-04-29 Ulrich Mueller <ulm@gentoo.org>
2768
2769 * lread.c (Vread_circle): New variable.
2770 (read1): Disable recursive read if Vread_circle is nil.
2771
24b34550
KH
27722009-04-29 Kenichi Handa <handa@m17n.org>
2773
2774 * fontset.h (set_default_ascii_font): Delete extern.
2775
2776 * fontset.c (set_default_ascii_font): Delete this unused function.
2777
2778 * frame.c (x_set_font): When ARG is a font-object, check if the
2779 font-object matches with the ASCII font-spec of the frame's
9c358bda 2780 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 2781
77bf07e1
AS
27822009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2783
2784 * fns.c (Flocale_info): Protect vector from GC during decoding.
2785
2786 * process.c (Fstart_process): Protect argv strings from GC during
2787 encoding.
2788
2c55aacf
AS
27892009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2790
2791 * sysdep.c: Include <ctype.h>.
2792
b892d3c9
DR
27932009-04-27 David Reitter <david.reitter@gmail.com>
2794
35f5b128 2795 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
2796 Remove commented-out code.
2797
9d0644c4
JB
27982009-04-26 Johan Bockgård <bojohan@gnu.org>
2799
2800 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2801
b7053016
JR
28022009-04-25 Jason Rumney <jasonr@gnu.org>
2803
2804 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2805
4e8231f3
YM
28062009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2807
2808 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2809 Swap bytes in short integer if fringe bitmap width > 8.
2810
493dcf2c
KH
28112009-04-23 Kenichi Handa <handa@m17n.org>
2812
2813 * xfaces.c (Fx_list_fonts): If a font size is specified in
2814 PATTERN, set it in returned scalable fonts.
2815
401e9e57
CY
28162009-04-22 Chong Yidong <cyd@stupidchicken.com>
2817
708e05dc
CY
2818 * keyboard.c (Fset_input_meta_mode): Doc fix.
2819
2820 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2821
1ac9108a 2822 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
2823
2824 * coding.c (Fterminal_coding_system): Doc fix.
2825
2826 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2827 (Fx_display_pixel_height, Fx_display_planes)
2828 (Fx_display_color_cells, Fx_server_max_request_size)
2829 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2830 (Fx_display_mm_height, Fx_display_mm_width)
2831 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
2832 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2833 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
2834 (check_x_display_info): Handle terminal objects instead of
2835 terminal ids.
2836
401e9e57
CY
2837 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
2838 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
2839 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
2840 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 2841
df80c7f0
KH
28422009-04-21 Kenichi Handa <handa@m17n.org>
2843
5a8f12af 2844 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 2845 (font_score): Check AVGWIDTH too.
908567ef 2846
df80c7f0
KH
2847 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
2848 worst case.
1ac9108a
SM
2849 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
2850 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 2851
705af33f
JR
28522009-04-19 Jason Rumney <jasonr@gnu.org>
2853
2854 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 2855 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
2856
2857 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
2858 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
2859 get_phys_cursor_geometry.
2860
b71ac3dd 2861 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
2862 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
2863 using get_phys_cursor_geometry.
2864
2865 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
2866 correctly calculated.
2867
dc2933eb
JD
28682009-04-19 Jan Djärv <jan.h.d@swipnet.se>
2869
1ac9108a
SM
2870 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
2871 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
2872 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
2873 is deprecated.
2874
973e7849
AS
28752009-04-18 Andreas Schwab <schwab@linux-m68k.org>
2876
2877 * font.c (font_put_frame_data): Use xfree instead of free.
2878
314d66f4
JB
28792009-04-17 Juanma Barranquero <lekktu@gmail.com>
2880
2881 * w32font.c (Qja, Qko): Remove declarations.
2882 (syms_of_w32font): Don't DEFSYM them.
2883
cf702558
CY
28842009-04-17 Chong Yidong <cyd@stupidchicken.com>
2885
2886 * font.c (Qja, Qko): Move definitions here from ftfont.c.
2887
2888 * font.h (Qja, Qko): Extern them.
2889
2890 * ftfont.c (Qja, Qko): Remove declarations.
2891
2892 * xfont.c (Qja, Qko): Remove declarations.
2893
b50504f5
KH
28942009-04-17 Kenichi Handa <handa@m17n.org>
2895
bde25748
KH
2896 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
2897 string from a vector to handle Latin-1 characters correctly.
2898
b50504f5
KH
2899 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
2900 entity even if the cache hits.
2901
f4646fff
AS
29022009-04-16 Andreas Schwab <schwab@linux-m68k.org>
2903
2904 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 2905 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 2906
e7deaab0
AS
2907 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
2908 * lisp.h: Adjust prototypes.
2909
0a0e7d49
CY
29102009-04-16 Chong Yidong <cyd@stupidchicken.com>
2911
2912 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
2913 change (Bug#3003).
2914
3c908a57
KH
29152009-04-16 Kenichi Handa <handa@m17n.org>
2916
1ac9108a 2917 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
2918
2919 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
2920 adstyle.
2921
2922 * ftfont.c (Qja, Qko): Don't make them static.
2923 (enum ftfont_cache_for): New enum.
2924 (fc_charset_table): Undo the previous change.
2925 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
2926 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
2927 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
2928 non-scarable font, try to get AVERAGE_WIDTH.
2929 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
2930 Change ft_face_cache from a list of a hash-table. Don't check
2931 `ja' and `ko' adstyle here.
2932 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
2933 FTFONT_CACHE_FOR_CHARET.
2934 (ftfont_get_charset): Undo the previous change.
1ac9108a 2935 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
2936 (ftfont_close): Likewise.
2937 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
2938
2939 * font.c (font_sort_entites): Change the meaning of the arg
2940 BEST-ONLY. Don't optimize for VEC of lenght 1.
2941 (font_select_entity): Just return the value of font_sort_entites.
2942
2943 * xfaces.c (merge_face_vectors): Reflect font properties in
2944 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
2945 font_clear_prop if a face attribute doesn't change.
2946
3c908a57
KH
2947 * charset.h (charset_ksc5601): Extern it.
2948
2949 * charset.c (charset_ksc5601): New variable.
2950 (Fdefine_charset_internal): Set charset_ksc5601.
2951 (init_charset_once): Initialize charset_ksc5601 to -1.
2952
d65859c3
DN
29532009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
2954
2955 * fileio.c (history_delete_duplicates): Remove unused declaration.
2956
2957 * callint.c (history_delete_duplicates): New declaration.
2958 (Fcall_interactively): Remove command history duplicates when
2959 history_delete_duplicates is true.
2960
3ba010e5
EZ
29612009-04-14 Eli Zaretskii <eliz@gnu.org>
2962
2963 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
2964
06f19b91
KH
29652009-04-14 Kenichi Handa <handa@m17n.org>
2966
2967 * font.c (Ffont_info): Fix docstring. Fix the second element of
2968 the returned value (bug#2949).
2969
2cce8bfc
CY
29702009-04-14 Chong Yidong <cyd@stupidchicken.com>
2971
2972 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
2973
d156542d
KH
29742009-04-14 Kenichi Handa <handa@m17n.org>
2975
2976 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
2977 encoding charset is ascii_compatible.
2978
2979 * charset.c (Fdefine_charset_internal): Make charset
2980 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
2981 code_offset is 0, and covers all ASCII characters.
2982
86fa089e
SM
29832009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2984
2985 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
2986 (ns_string_to_pasteboard_internal):
2987 * nsmenu.m (process_dialog):
2988 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
2989 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
2990 * lisp.h (Fx_load_color_file): Declare.
2991
a8a3728b
KH
29922009-04-13 Kenichi Handa <handa@m17n.org>
2993
1ac9108a 2994 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
2995 (font_select_entity): Suppress the code to optimize for the same
2996 kind of fonts.
2997 (font_load_for_lface): Get a font that supports at least ASCII
2998 characters.
2999
3000 * ftfont.c (Qja, Qko): New variables.
3001 (fc_charset_table): Delete uniquifier data for iso8859-1.
3002 (ftfont_get_latin1_charset): New function.
3003 (get_adstyle_property): New function.
3004 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
3005 bitmap fonts.
3006 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
3007 Delete iso-8859-1 range from the charset of fonts whose adstyle is
3008 `ko' or `ja'.
3009 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 3010 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
3011 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
3012 property.
3013 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
3014 (syms_of_ftfont): DEFSYM Qja and Qko.
3015
483670b5
KH
30162009-04-09 Kenichi Handa <handa@m17n.org>
3017
12b55765
KH
3018 * charset.c (map_charset_chars): For a charset of `superset'
3019 method, fix calculation of code range.
3020
483670b5
KH
3021 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
3022 from the list of extra properties.
3023 (font_clear_prop): Be sure to delete `:name' font property.
3024
57d3b93b
KH
30252009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3026
b4b2c2ca
YM
3027 * dispnew.c (redraw_overlapping_rows): Fix detection of
3028 overlapping for topmost and bottommost rows.
3029
1ac9108a 3030 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 3031
472c3609
JR
30322009-04-06 Jason Rumney <jasonr@gnu.org>
3033
3034 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
3035
ab193662
KH
30362009-04-06 Kenichi Handa <handa@m17n.org>
3037
3038 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
3039
3040 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
3041
0c26f026
KH
30422009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3043
3044 * ftfont.c (ftfont_open): Fix checking of the return value of
3045 FT_Load_Char. Fix setting font->underline_thickness.
3046
e173bbce
CY
30472009-04-04 Chong Yidong <cyd@stupidchicken.com>
3048
3049 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
3050 (Fterminal_parameters, Fterminal_parameter)
3051 (Fset_terminal_parameter): In doc string, refer to terminal
3052 objects rather than terminal ids.
3053
693a2698
EZ
30542009-04-04 Eli Zaretskii <eliz@gnu.org>
3055
3056 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
3057 ret_lim_data. (Bug#2867)
3058
d5221487
CY
30592009-04-03 Chong Yidong <cyd@stupidchicken.com>
3060
3061 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
3062 so they don't get wider than the window, matching 2006-01-23
3063 change to the partner function in xdisp.c (Bug#2800).
3064
223509a3
KH
30652009-04-03 Kenichi Handa <handa@m17n.org>
3066
3067 * print.c (print_object): Make each lowest sub_char_table start a
3068 new line (Bug#2866).
3069
74fcd0b1
KH
30702009-04-02 Kenichi Handa <handa@m17n.org>
3071
3072 * fontset.c (fontset_font): Record no-font when a fontset
3073 explicitly tells not to try another font-specs.
3074
c542407d
SM
30752009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
3076
3077 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
3078
e3869731
KH
30792009-03-30 Kenichi Handa <handa@m17n.org>
3080
d8d2f142
KH
3081 * fontset.c (fontset_from_font): Specify only registry in a
3082 font-spec for all characters supported by that registry.
3083
e3869731
KH
3084 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
3085 even if HAVE_M17N_FLT is not defined.
3086
5da5f805
CY
30872009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
3088
3089 * ftfont.c: Conditionalize prototyping and use of
3090 ftfont_variation_glyphs.
3091
ab226c50
SM
30922009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3093
9628fed7
SM
3094 * frame.c (delete_frame): Work around compiler bug.
3095
3096 * editfns.c (general_insert_function): Adjust to insdel.c changes.
3097 * insdel.c (prepare_to_modify_buffer, signal_before_change):
3098 Some more EMACS_INT.
3099 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
3100
3101 * xdisp.c (dump_glyph): Fix typo.
3102
ae19ba7c
SM
3103 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
3104 (adjust_markers_gap_motion, adjust_markers_for_delete)
3105 (adjust_markers_for_insert, adjust_point)
3106 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
3107 (make_gap, copy_text, count_size_as_multibyte, insert)
3108 (insert_and_inherit, insert_before_markers)
3109 (insert_before_markers_and_inherit, insert_1)
3110 (count_combining_before, count_combining_after, insert_1_both)
3111 (insert_from_string, insert_from_string_before_markers)
3112 (insert_from_string_1, insert_from_gap, insert_from_buffer)
3113 (insert_from_buffer_1, adjust_after_replace)
3114 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
3115 (replace_range_2, del_range, del_range_1, del_range_byte)
3116 (del_range_both, del_range_2, modify_region)
3117 (prepare_to_modify_buffer, signal_before_change)
3118 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
3119 for buffer positions and sizes.
3120 * lisp.h: Adjust prototypes accordingly.
3121
3122 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
3123 (non_regular_inserted, non_regular_nbytes, read_non_regular)
3124 (Finsert_file_contents): Use EMACS_INT for buffer positions.
3125
ab226c50
SM
3126 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
3127
46dfb8fb
JD
31282009-03-27 Jan Djärv <jan.h.d@swipnet.se>
3129
3130 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
3131 lines and columns so we keep the same pixel height and width.
3132
3133 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
3134 the property _NET_WM_STATE has changed.
46dfb8fb
JD
3135 (x_handle_net_wm_state): New function to update frame parameter
3136 fullscreen.
3137 (x_term_init): Initialize atoms for _NET_WM_STATE.
3138
3139 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
3140
d347e494
SM
31412009-03-27 Kevin Ryde <user42@zip.com.au>
3142
3143 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
3144 Gpm_GetEvent as an error that justifies closing the filedescriptor.
3145 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
3146 (Fgpm_mouse_stop): Pass that new parameter.
3147 * termhooks.h (close_gpm): Adjust prototype.
3148
84db11d6
SM
31492009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
3150
c95a5008
SM
3151 * lisp.h (Fx_focus_frame): Declare.
3152
84db11d6
SM
3153 * callint.c (Fcall_interactively): For '^' just delegate the work to
3154 handle-shift-selection.
3155 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
3156
0a1958d6
CY
31572009-03-24 Chong Yidong <cyd@stupidchicken.com>
3158
0bfdff23
CY
3159 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
3160
0a1958d6
CY
3161 * data.c (Qinteractive_form): New variable.
3162 (Finteractive_form): Use it.
3163
3164 * eval.c (Fcommandp): Use Qinteractive_form.
3165
58aec0d6
JR
31662009-03-24 Jason Rumney <jasonr@gnu.org>
3167
3168 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
3169 Calculate total size precisely. Decode environment variables
3170 before substituting. (Bug#38)
3171
553dd618
KH
31722009-03-24 Kenichi Handa <handa@m17n.org>
3173
3174 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 3175 encoding (Bug#2722).
553dd618 3176
c39ea606
JD
31772009-03-23 Jan Djärv <jan.h.d@swipnet.se>
3178
3179 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
3180 that gdpy is set.
3181
bc9b2b5e
AM
31822009-03-22 Alan Mackenzie <acm@muc.de>
3183
3184 * callint.c (Finteractive): Clarify the doc string - even
3185 promptless elements need \n separators.
3186
9f995a76
JR
31872009-03-22 Jason Rumney <jasonr@gnu.org>
3188
3189 * w32term.c (syms_of_w32term): Doc fix for
3190 x-use-underline-position-properties.
3191
22749e9a
EZ
31922009-03-21 Eli Zaretskii <eliz@gnu.org>
3193
3194 * w32.c (getpwuid): Change argument type to unsigned.
3195 (struct w32_id): Change type of `rid' member to unsigned.
3196 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
3197 argument ID to unsigned. All callers changed.
3198 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
3199
e00553bf
EZ
32002009-03-20 Eli Zaretskii <eliz@gnu.org>
3201
3202 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
3203 negative, produce a float value.
3204
3205 * dired.c (make_uid, make_gid): New functions.
3206 (Ffile_attributes): Use them to avoid negative UID and GID.
3207
f761d6b6
JB
32082009-03-20 Juanma Barranquero <lekktu@gmail.com>
3209
3210 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
3211 (syms_of_keyboard) <command-hook-internal, input-method-function>:
3212 Fix typos in docstrings.
3213
d507f8d7
KH
32142009-03-19 Kenichi Handa <handa@m17n.org>
3215
3216 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
3217 changed, use font_load_for_lface to get a new font object.
3218 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
3219
3220 * frame.c (x_set_font): Handle the case that ARG is a cons.
3221
c68845e0
GM
32222009-03-19 Glenn Morris <rgm@gnu.org>
3223
3224 * fileio.c (Fsubstitute_in_file_name): Doc fix.
3225
bfa49dd1
CY
32262009-03-19 Chong Yidong <cyd@stupidchicken.com>
3227
3228 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
3229
8458d4c1
KH
32302009-03-19 Kenichi Handa <handa@m17n.org>
3231
3232 * charset.c (load_charset_map_from_file): When a mapfile can't be
3233 loaded, signal an error.
3234
78e7d1fe
EZ
32352009-03-18 Eli Zaretskii <eliz@gnu.org>
3236
3237 * dired.c (Ffile_attributes): Make sure UID and GID are always
3238 positive, even if the value is too large for a positive EMACS_INT.
3239 Doc fix.
3240
3241 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3242
5da9fdfa
YM
32432009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3244
3245 * xmenu.c (xdialog_show): Move Fredisplay call ...
3246 (Fx_popup_dialog): ... here.
3247
7519c40d
SM
32482009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3249
3250 * dired.c (file_name_completion): Disable the first optimization just
3251 installed, since it is not implemented correctly.
3252
2cd298e2
SM
32532009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3254
3255 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 3256 only if the entry can affect bestmatch.
2cd298e2
SM
3257 Stop the search early, as Ftry_completion already does.
3258
48d37adf
CY
32592009-03-17 Chong Yidong <cyd@stupidchicken.com>
3260
e10c9c93 3261 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 3262
9286b16a
CY
32632009-03-15 Chong Yidong <cyd@stupidchicken.com>
3264
3265 * keyboard.c (parse_menu_item): Don't display remappings as menu
3266 equivalent bindings (Bug#788).
3267
f7b146dc
JR
32682009-03-15 Jason Rumney <jasonr@gnu.org>
3269
3270 * w32term.h (WM_EMACS_PAINT): New message.
3271 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3272 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3273 before passing to lisp thread. (Bug#950)
3274
f761d6b6 32752009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 3276
d93f9575
CY
3277 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3278 variable as it was never reset.
3279 (ns_term_init): Remove initialization of Lisp-settable defaults
3280 and ns_expand_space.
3281 (-setPanelFromDefaultValues): Remove ns_expand_space.
3282 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3283 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
3284 i.e. no additional spacing, similar to Carbon port.
3285
d93f9575
CY
3286 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3287 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 3288
305018ec
JD
32892009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3290
3291 * sound.c (alsa_configure): Remove call to deprecated
3292 snd_pcm_sw_params_set_xfer_align.
3293
f761d6b6 32942009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
3295
3296 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3297 after clicking in a detached tool bar.
3298 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3299
46e722a9
SM
33002009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3301
348db3dd
SM
3302 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3303 int/Lisp_Object mixup).
46e722a9 3304
a3d16f39
KH
33052009-03-13 Kenichi Handa <handa@m17n.org>
3306
3307 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 3308 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
3309 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3310 (set_fontset_font): Change ARG to a vector. Handle range_list in
3311 ARG correctly.
3312 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 3313 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
3314 the above change.
3315 (fontset_from_font): Fix previous change.
fe24f56a 3316 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
3317 entry. If FONTSET is the default fontset, don't set the extra
3318 slot of the returning char-table.
3319
b066e6b6
JB
33202009-03-12 Juanma Barranquero <lekktu@gmail.com>
3321
3322 * nsfns.m (Fx_close_connection): Doc fix.
3323 (Fns_do_applescript): Reflow docstring.
3324 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3325 (Fx_display_pixel_width, Fx_display_pixel_height)
3326 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3327 Fix typos in docstrings.
3328 (Fns_set_alpha): Fix typos in error messages.
3329
d472514e 33302009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 3331
d472514e 3332 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
3333 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3334 were used for such events.
3335
d472514e
JB
3336 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3337 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 3338
d472514e 3339 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
3340 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3341
fb930676
KH
33422009-03-11 Kenichi Handa <handa@m17n.org>
3343
ff85581a
KH
3344 * font.h (font_open_by_spec): Extern it.
3345
c50b7e98
KH
3346 * font.c (font_open_by_spec): New function.
3347 (font_open_by_name): Use font_open_by_spec.
3348
fb930676
KH
3349 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3350 fontset of the frame.
3351
3352 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3353 modify the default font of frames that use this fontset.
3354 (num_auto_fontsets): New variable.
3355 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3356 name. Be sure to set FONTSET_ASCII to the correct font name.
3357 (update_auto_fontset_alist): New function.
3358
df4e8455
JB
33592009-03-11 Juanma Barranquero <lekktu@gmail.com>
3360
3361 * makefile.w32-in: Update dependencies.
3362
0a375797
AR
33632009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3364
3365 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3366
61313fa3
SM
33672009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3368
3369 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3370
b55103fb
CY
33712009-03-10 Chong Yidong <cyd@stupidchicken.com>
3372
3373 * lread.c (Feval_buffer): Doc fix.
3374
dde2559c
KH
33752009-03-09 Kenichi Handa <handa@m17n.org>
3376
3377 * charset.c (Qfile_name_handler_alist): Extern it.
3378 (load_charset_map_from_file): Temporarily bind
3379 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3380
df4e8455 33812009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 3382
47f588bb
GM
3383 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3384 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 3385
4ddf94bd
AR
33862009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3387
4c9bdfc2
AR
3388 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3389 (x_set_window_size): Change back to calculated method of setting
3390 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
3391 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3392 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3393
fe41ae9e
AR
3394 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3395
4c9bdfc2
AR
3396 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3397 accelerator in parens under GNUstep.
3398
825d0875
KH
33992009-03-06 Kenichi Handa <handa@m17n.org>
3400
3401 These changes are to detect incorrect composition sequence without
f3b3be74 3402 looking ahead the source. (Bug#2370)
825d0875
KH
3403
3404 * coding.h: Include "composite.h".
3405 (enum compisition_state): New enum.
3406 (struct compisition_status): New struct.
3407 (struct iso_2022_spec): New member cmp_status.
3408 (struct emacs_mule_spec): New struct.
3409 (struct coding_system): New members ctext_extended_segment_len and
3410 embedded_utf_8. Change the union member
3411 spec.emacs_mule_full_support to spec.emacs_mule.
3412
3413 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3414 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3415 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3416 (ADD_COMPOSITION_DATA): New arg nbytes.
3417 (emacs_mule_char): New arg cmp_status.
3418 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3419 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3420 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3421 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3422 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3423 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3424 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3425 (EMACS_MULE_COMPOSITION_END): New macro.
3426 (emacs_mule_finish_composition): New function.
3427 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3428 (decode_coding_emacs_mule): Avoid long looking ahead while
3429 handling composition.
3430 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3431 (ENCODE_COMPOSITION_RULE): New macro.
3432 (finish_composition): New function.
3433 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3434 (DECODE_COMPOSITION_START): New implementation.
3435 (DECODE_COMPOSITION_END): Likewise.
3436 (STORE_COMPOSITION_RULE): New macro.
3437 (decode_coding_iso_2022): Avoid long looking ahead while handling
3438 composition, CTEXT extended segment, and embedded UTF-8.
3439 (setup_coding_system): For a coding of type iso-2022, reset
3440 CODING_ISO_EXTSEGMENT_LEN (coding) and
3441 CODING_ISO_EMBEDDED_UTF_8 (coding).
3442 (get_translation): Delete arguments last_block, from_nchars,
3443 to_nchars. Callers changed.
3444 (produce_chars): Don't modify charbuf. Adjusted for the change of
3445 get_translation.
98a326f7 3446 (produce_composition): Adjust for the new annotation sequence.
825d0875 3447 (handle_composition_annotation): Likewise.
98a326f7 3448 (consume_chars): Adjust for the change of get_translation.
825d0875 3449
ccbc4452
AR
34502009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3451
4ddf94bd 3452 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3453
988a7ddb
KH
34542009-03-05 Kenichi Handa <handa@m17n.org>
3455
3456 * font.c (font_select_entity): New function.
3457 (font_find_for_lface): Use font_select_entity to select a font.
3458
3459 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3460 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3461 font with C restriction.
3462
98a326f7 34632009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3464
be1bce46 3465 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3466
10ea2b82
JR
34672009-03-04 Jason Rumney <jasonr@gnu.org>
3468
2c93b248 3469 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3470 characters that have already been read. (Bug#2569)
2c93b248 3471
10ea2b82
JR
3472 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3473 Log an error message if check_image_size failed.
3474 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3475 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3476
71a0c011
EZ
34772009-03-02 Eli Zaretskii <eliz@gnu.org>
3478
3479 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3480 when decoding process output.
3481
2f63bba8
RS
34822009-03-01 Richard M Stallman <rms@gnu.org>
3483
3484 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3485
3486 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3487
0a9564cb
EZ
34882009-02-28 Eli Zaretskii <eliz@gnu.org>
3489
3490 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3491 (decode_coding_emacs_mule, decode_coding_iso_2022)
3492 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3493 (decode_coding_raw_text, decode_coding_charset)
3494 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3495 Honor inhibit-eol-conversion. (Bug #2186)
3496
449148b3
JR
34972009-02-28 Jason Rumney <jasonr@gnu.org>
3498
3499 * coding.c (detect_coding_charset): If not checking latin extra,
3500 fail on characters between 0x80 and 0xA0. (Bug#2354)
3501
a4aee864
EZ
35022009-02-28 Eli Zaretskii <eliz@gnu.org>
3503
3504 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3505 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3506
d88bee5a
GM
35072009-02-27 Glenn Morris <rgm@gnu.org>
3508
3509 * callint.c (Finteractive): Doc fix.
3510
a808f22d
KH
35112009-02-27 Kenichi Handa <handa@m17n.org>
3512
3513 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3514
caf8d60c
CY
35152009-02-27 Chong Yidong <cyd@stupidchicken.com>
3516
3517 * font.c (font_style_to_value): Set value for unknown symbols to
3518 100 instead of 255.
b61137ea
CY
3519 (weight_table, slant_table, width_table): Treat "unspecified" as
3520 the default value.
caf8d60c 3521
1a0de25c
JB
35222009-02-26 Juanma Barranquero <lekktu@gmail.com>
3523
3524 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3525
8fc45744
JB
35262009-02-25 Juanma Barranquero <lekktu@gmail.com>
3527
107bd7d1
JB
3528 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3529 error as soon as a recursive load is detected.
8fc45744 3530
f097e223
AR
35312009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3532
3533 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3534 before caching.
3535
8810a12f
KH
35362009-02-24 Kenichi Handa <handa@m17n.org>
3537
3538 * fontset.c (fontset_find_font): Fix the condition for checking
3539 unavailable font.
3540
2c7d1565
GM
35412009-02-24 Glenn Morris <rgm@gnu.org>
3542
3543 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3544 whitespace that confuses documentation.
3545
a20878b6
MB
35462009-02-23 Miles Bader <miles@gnu.org>
3547
3548 * process.c (Flist_system_processes, Fprocess_attributes)
3549 (syms_of_process): Rename `system-process-attributes' to
3550 `process-attributes'.
3551
b3b58c01
AS
35522009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3553
1b3b981b
AS
3554 * coding.h (struct coding_system): Make safe_charsets a pointer to
3555 unsigned char.
3556 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3557 being 255.
3558 (SAFE_CHARSET_P): Likewise.
3559 (setup_iso_safe_charsets): Properly setup safe_charsets.
3560 (Fdefine_coding_system_internal): Likewise.
3561 (setup_coding_system): Likewise. Remove unneeded casts.
3562 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3563 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3564 unneeded casts.
3565
b3b58c01
AS
3566 * insdel.c (del_range_2): Don't modify gap contents when called
3567 from decode_coding_object. (Bug#1809)
3568
0b6f228c
CY
35692009-02-21 Chong Yidong <cyd@stupidchicken.com>
3570
3571 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3572 Qfont_object.
3573 (Ftype_of): Recognize font objects.
3574
3575 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3576
3577 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3578 moved to data.c.
3579
52f8870b
AR
35802009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3581
3582 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3583 async_iconified. Based on a patch by Christian Lynbech
3584 <christian.lynbech@tieto.com>.
3585 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3586
7087d5e9
GM
35872009-02-20 Glenn Morris <rgm@gnu.org>
3588
3589 * syntax.c (Fskip_chars_forward): Fix doc typo.
3590
41d2ceef
CY
35912009-02-20 Chong Yidong <cyd@stupidchicken.com>
3592
3593 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3594
1a3b7ca6
CY
35952009-02-19 Chong Yidong <cyd@stupidchicken.com>
3596
3597 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3598
73cce38d
KH
35992009-02-19 Kenichi Handa <handa@m17n.org>
3600
3601 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3602 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3603
a51092ee
DN
36042009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3605
3606 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3607
c423ecca
KH
36082009-02-18 Kenichi Handa <handa@m17n.org>
3609
3610 * font.c (font_check_otf_features): Fix handling of `nil' element.
3611 (Ffont_spec): Describe :lang and :otf in the docstring.
3612
4c1958f4
AS
36132009-02-16 Andreas Schwab <schwab@suse.de>
3614
3615 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3616 string.
3617
5704f39a
KH
36182009-02-16 Kenichi Handa <handa@m17n.org>
3619
3620 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3621 (Bug#1723)
5704f39a 3622
8f0085aa
CY
36232009-02-14 Chong Yidong <cyd@stupidchicken.com>
3624
a057d86a 3625 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3626
3627 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3628 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3629
aff01dd9
EZ
36302009-02-14 Eli Zaretskii <eliz@gnu.org>
3631
3632 * msdos.c (MAX_SCREEN_BUF): New macro.
3633 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3634 Encode the entire run of glyphs sharing the same face, instead of
3635 doing that one glyph at a time (fixes a bug with displaying
3636 double-size characters).
3637
ba301db3
AR
36382009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3639
3640 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3641
3642 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3643 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3644 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3645
3646 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3647 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3648
51d861de
SM
36492009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3650
3651 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3652 invisible areas.
3653
7fed8996
JR
36542009-02-12 Jason Rumney <jasonr@gnu.org>
3655
631ea4fb
JR
3656 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3657 (add_font_entity_to_list): Call check_face_name even when family
3658 is unspecified.
3659
cb4a3e42
JR
3660 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3661 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3662 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3663
7fed8996 3664 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3665 raster fonts. (Bug#2219)
7fed8996 3666
895416e3
KH
36672009-02-12 Kenichi Handa <handa@m17n.org>
3668
3669 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3670 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3671 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3672 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3673 (find_automatic_composition): While looking forward and backward,
3674 check static composition. Fix where to stop looking forward.
3675 (composition_adjust_point): Fix checking of static composition.
3676 (Fcomposition_get_gstring): Pay attention to
1dacf998 3677 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3678
3679 * lisp.h (fast_looking_at): Extern it.
3680
3681 * search.c (fast_looking_at): New function.
3682
51d861de 3683 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3684 <struct glyph>.u.cmp.to.
3685 (append_composite_glyph): Likewise.
3686
51d861de 3687 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3688 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3689 composition.
51d861de 3690 (append_composite_glyph): Adjust for the change of
895416e3
KH
3691 <strcut glyph>.u.cmp.to.
3692
8510724d
JB
36932009-02-11 Juanma Barranquero <lekktu@gmail.com>
3694
3695 * casetab.c (init_casetab_once):
3696 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3697 * font.c (font_update_lface):
3698 * fontset.c (Fnew_fontset):
3699 * ftfont.c (ftfont_drive_otf):
3700 * xfont.c (xfont_open):
3701 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3702
294fa707
SM
37032009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3704
3705 * fileio.c (Fwrite_region): !NILP -> CONSP.
3706
b5bfebec
AS
37072009-02-10 Andreas Schwab <schwab@suse.de>
3708
3709 * process.c (send_process): Properly relocate pointer into data
adab88bd 3710 when using encoded data. (Bug#2272)
b5bfebec 3711
cb84a2be
KH
37122009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3713
3714 * coding.c (detect_coding_charset): Fix previous change.
3715
89e09428
JR
37162009-02-08 Jason Rumney <jasonr@gnu.org>
3717
3718 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3719 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3720
4470a277
AS
37212009-02-07 Andreas Schwab <schwab@suse.de>
3722
3723 * unexelf.c (unexec): Fix error message.
3724
3175b12a
AR
37252009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3726
3727 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3728 when modal window is active. (Bug #2152)
3175b12a
AR
3729 (applicationShouldTerminate:): Remove now-unneeded while loop
3730 around NSRunAlertPanel.
3731
3732 * nsmenu.m (popupSession): New file-global variable.
3733 (pop_down_menu): End the popupSession before closing dialog.
3734 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3735 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3736 don't query NSApp for events (just sleep instead).
3737
8434d0b8
EZ
37382009-02-07 Eli Zaretskii <eliz@gnu.org>
3739
51d861de
SM
3740 * coding.c (syms_of_coding) <translation-table-for-input>:
3741 Modify doc string to discourage use for character code unification.
8434d0b8 3742
aa82edfd
CY
37432009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3744
3745 * atimer.c (run_timers): Update pending_atimers.
3746
2d283c7c
CY
37472009-02-06 Chong Yidong <cyd@stupidchicken.com>
3748
eb306cab
CY
3749 * image.c (svg_load_image): Fix last change.
3750
2d283c7c
CY
3751 * xfns.c (Fx_create_frame): Signal an error if no font is
3752 found (Bug#2147).
3753
4d8e170e
JB
37542009-02-05 Juanma Barranquero <lekktu@gmail.com>
3755
3756 * character.c (syms_of_character) <script-representative-chars>:
3757 Fix typo in docstring.
3758
c96169a0
AR
37592009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3760
3761 * nsmenu.m (pop_down_menu): New function.
3762 (ns_popup_dialog): Call it on unwind.
3763 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3764 call timer_check() (Bug#2154).
3765 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3766 handling_signal is set.
3767 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3768
31fd7c5c 3769 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
3770
3771 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3772
3773 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3774
51d861de
SM
3775 * keyboard.c (poll_for_input_1, handle_async_input):
3776 Set handling_signal under HAVE_NS.
c96169a0 3777
aacd8ba1
GM
37782009-02-04 Glenn Morris <rgm@gnu.org>
3779
3780 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3781
4cb75c4b
KH
37822009-02-04 Kenichi Handa <handa@m17n.org>
3783
3784 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3785
3786 * charset.c (Fchar_charset): New optional arg restriction.
3787
3788 * coding.h (coding_system_charset_list): Extern it.
3789
3790 * coding.c (coding_system_charset_list): New function.
3791
3792 * composite.c: Include coding.h and termhooks.h.
3793 (composition_gstring_p): Fix for the terminal case.
3794 (composition_gstring_width): Likewise.
3795 (fill_gstring_body): Likewise.
3796 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3797 the frame.
3798 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3799 is within a composition.
867d4bb3 3800 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
3801
3802 * term.c (encode_terminal_code): Fix handling of composition.
3803 (produce_composite_glyph): For static composition, get pixel_width
3804 from struct composition.
3805
826ba17e
AS
38062009-02-02 Andreas Schwab <schwab@suse.de>
3807
3808 * unexelf.c (unexec): Handle unaligned bss offset.
3809
8ad093db
AR
38102009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3811
3812 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3813 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 3814
8ad093db
AR
3815 * keyboard.c (handle_interrupt): Don't call
3816 quit_throw_to_read_char() under NS.
d0a76a6e 3817
8ad093db
AR
3818 * blockinput.h: Remove NS-specific code.
3819
4d18a7a2
DN
38202009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3821
db878925
DN
3822 * dispnew.c (window_change_signal): Don't try to get the size of a
3823 suspended tty frame.
3824 * term.c (Fresume_tty): Resize if the size has changed while the
3825 tty was suspended.
3826
4d18a7a2
DN
3827 * alloc.c (mark_stack): Properly conditionalize previous change.
3828
8984df7c
JB
38292009-01-30 Juanma Barranquero <lekktu@gmail.com>
3830
3831 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3832 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3833 Remove; this code is not used on Windows.
3834
75f4f1ac
EZ
38352009-01-30 Eli Zaretskii <eliz@gnu.org>
3836
3837 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
3838 EOLs that also has stray ^M characters.
3839
07a1e794
JB
38402009-01-30 Juanma Barranquero <lekktu@gmail.com>
3841
3842 * atimer.c (run_timers, alarm_signal_handler):
3843 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
3844 * w32inevt.c (w32_console_read_socket):
3845 * w32term.c (w32_read_socket):
3846 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
3847
a8b11cc9
CY
38482009-01-30 Chong Yidong <cyd@stupidchicken.com>
3849
3850 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
3851 Initialize it as a relative filename pattern.
3852 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
3853 (Fcall_process_region): Simplify temp file creation using
3854 temporary-file-directory.
3855
c279587b
EZ
38562009-01-29 Eli Zaretskii <eliz@gnu.org>
3857
3858 * msdos.c: Rename pending_signals to msdos_pending_signals.
3859 (sig_suspender, sigprocmask): Adjust.
3860
a8fe3242
CY
38612009-01-29 Chong Yidong <cyd@stupidchicken.com>
3862
3863 * keyboard.c (pending_signals): New var.
3864 (poll_for_input, input_available_signal, init_keyboard): Set it.
3865 (process_pending_signals): New function.
3866
3867 * lisp.h (QUIT): Check pending_signals instead of
3868 interrupt_input_pending. Use process_pending_signals.
3869
51d861de 3870 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 3871
51d861de 3872 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
3873
3874 * sysdep.c (emacs_write): Use process_pending_signals.
3875
3876 * xterm.c (XTread_socket): Update pending_signals.
3877
3878 * w32term.c (w32_read_socket): Update pending_signals.
3879
3880 * w32inevt.c (w32_console_read_socket): Update pending_signals.
3881
6570a1c4
KH
38822009-01-29 Kenichi Handa <handa@m17n.org>
3883
3884 * xftfont.c (xftfont_has_char): New function.
3885 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
3886
d72a4afa
AR
38872009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3888
3889 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
3890 under GNUstep.
3891 (ns_query_color): New declaration.
3892
3893 * nsterm.m (ns_confirm_quit): New variable.
3894 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
3895 (EmacsApp-applicationShouldTerminate:): Use it.
3896 (EmacsPrefsController): Let user set it.
3897 (ns_query_color): New function.
3898 (ns_defined_color): Use it.
3899 (ns_initialize): Drop.
3900 (ns_term_init): Add two lines from ns_initialize(), and set
3901 input_interrupt_mode to nil.
3902
3903 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 3904 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 3905
9fe78804
KH
39062009-01-28 Kenichi Handa <handa@m17n.org>
3907
3908 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
3909 (fontset_get_font_group): Remember that no font-group is specified
3910 for C.
9fe78804 3911
fa57de36
CY
39122009-01-27 Chong Yidong <cyd@stupidchicken.com>
3913
930600e9
CY
3914 * fns.c (concat): Check for string overflow (bug#1787).
3915
fa57de36
CY
3916 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
3917 Quadruple undo limits (bug#1501).
3918
7179ce7b
KH
39192009-01-27 Kenichi Handa <handa@m17n.org>
3920
3921 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
3922 directly use GT_Get_Char_index.
3923
3924 * xftfont.c (struct xftfont_info): New member `index'.
3925
3926 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 3927 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 3928
5be8fcc0
CY
39292009-01-26 Kenichi Handa <handa@m17n.org>
3930
3931 * fontset.c (fontset_find_font): Fix handling of non-cons return
3932 value of fontset_get_font_group.
3933 (fontset_font): Revert last change.
3934
19ae3e61
JR
39352009-01-26 Jason Rumney <jasonr@gnu.org>
3936
3937 * w32font.c (w32font_list_internal): Return quickly if registry is
3938 unknown. Simplify final return.
3939 (add_font_entity_to_list): Break complex logic down into more
3940 manageable chunks. Move unknown registry check to
3941 w32font_list_internal.
3942
8612b71a
AR
39432009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
3944
3945 Changes to remove Feval calls from GUI under NS.
3946
d8038940
JB
3947 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
3948 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
3949 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
3950
3951 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
3952 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
3953 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
3954 instead of NON_ASCII_KEYSTROKE_EVENT.
3955 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
3956 (EmacsApp-applicationShouldTerminate:): Query user.
3957 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
3958 instead of Feval.
3959
3960 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
3961
3962 * keyboard.c (kbd_buffer_get_event): Check for it.
3963 (keys_of_keyboard): Define lispy keys for
3964 ns-put/unput-working-text.
3965
3966 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
3967 versions.
3968 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
3969
6288ae55
CY
39702009-01-25 Chong Yidong <cyd@stupidchicken.com>
3971
3972 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 3973 setting current_buffer directly. (Bug#2044)
6288ae55 3974
289e7f8f
CY
39752009-01-24 Chong Yidong <cyd@stupidchicken.com>
3976
5ce87308 3977 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 3978 any work. (Bug#1952, bug#1990).
5ce87308 3979
64cc3cf6 3980 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 3981
b3243e6f
AR
39822009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3983
3984 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
3985 (ns_no_defaults): New declaration.
3986 (main): Use it.
e0d2e69a 3987
d900b2af 3988 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 3989
d900b2af 3990 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 3991
d900b2af
AR
3992 * nsterm.m (ns_no_defaults): New variable.
3993 (ns_initialize): Don't read defaults when ns_no_defaults.
3994 (EmacsView-readSelectionFromPasteboard:)
3995 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 3996 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
3997 (ns_dumpglyphs_stretch): New function.
3998 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 3999 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 4000
e0d2e69a
AR
4001 * nsimage.m (setPixmapData:): Set to ignore image DPI.
4002
3ac71f5d
CY
40032009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
4004
4005 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
4006 call for Sparc64.
4007
3fe53a83
AR
40082009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4009
4010 * nsfns.m:
4011 * nsgui.h:
4012 * nsmenu.m:
4013 * nsselect.m:
4014 * nsterm.h:
4015 * nsterm.m: Remove '23' comments that indicated code added during
4016 update from emacs-20 -> emacs-23.
4017
10f87c6f 40182009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
4019
4020 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 4021 ns_alternate_modifier. (Bug#1217)
a3b53a85 4022
c7cef62d
AR
4023 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
4024 Display all shortcuts, including those w/o super modifier.
4025
575fb8bd
AR
4026 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
4027
918b848b
CY
40282009-01-22 Chong Yidong <cyd@stupidchicken.com>
4029
4030 * fileio.c (Vwrite_region_post_annotation_function)
4031 (Vwrite_region_annotation_buffers): New vars.
4032 (build_annotations_unwind): Just reset
4033 Vwrite_region_annotation_buffers.
4034 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
4035 Call write-region-post-annotation-function.
4036 (build_annotations): Add to Vwrite_region_annotation_buffers if
4037 buffer changes.
4038
a39e2539
AR
40392009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4040
4041 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
4042 Tiger.
51d861de
SM
4043 * nsfns.m (ns_do_applescript):
4044 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 4045
35ed44db
AR
40462009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4047
4048 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
4049
cbe0b5bf
AR
40502009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4051
4052 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 4053
6049d3a0
AR
4054 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
4055
4056 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
4057 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
4058 handle Ctrl-tab. (Bug#1841)
4059 (ns_get_color): Use unsigned long long for scanned hex string value.
4060 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 4061 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 4062 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 4063 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 4064 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 4065 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 4066 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 4067
d3810c21 4068 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 4069 DPI. (Bug#1316)
d3810c21
AR
4070 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
4071 values in onTiger section.
4c7077c3 4072
e301e634
CY
40732009-01-19 Chong Yidong <cyd@stupidchicken.com>
4074
7f82490b
CY
4075 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
4076 Check return value of font_spec_from_name.
64cc3cf6 4077 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
4078
4079 * font.c (font_spec_from_name): Return Qnil if font name could not
4080 be parsed.
4081 (font_parse_name): Treat a `?' character as part of an XLFD.
4082
e301e634
CY
4083 * fns.c (Fsubstring): Doc fix.
4084
1c0db158
KH
40852009-01-19 Kenichi Handa <handa@m17n.org>
4086
51d861de 4087 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
4088 (ftfont_list): Likewise.
4089
acf20901
JB
40902009-01-18 Juanma Barranquero <lekktu@gmail.com>
4091
fff4e459
JB
4092 * dbusbind.c (Fdbus_register_signal):
4093 * process.c (conv_sockaddr_to_lisp):
4094 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
4095
acf20901
JB
4096 * callproc.c (Fgetenv_internal): Doc fix.
4097
e7abcdfb
CY
40982009-01-16 Chong Yidong <cyd@stupidchicken.com>
4099
4100 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
4101 it is not even used.
4102
b60861e6
GM
41032009-01-16 Glenn Morris <rgm@gnu.org>
4104
4105 * font.c (Ffont_variation_glyphs): Silence compiler.
4106
8db52afe
JB
41072009-01-15 Juanma Barranquero <lekktu@gmail.com>
4108
4109 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
4110 Reported by David Robinow <drobinow@gmail.com>.
4111
4cddb209
KH
41122009-01-15 Kenichi Handa <handa@m17n.org>
4113
51d861de 4114 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 4115
f247f67b
JR
41162009-01-14 Jason Rumney <jasonr@gnu.org>
4117
4118 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 4119 never a fontset. (Bug#1562)
f247f67b 4120
f56a4450
KH
41212009-01-14 Kenichi Handa <handa@m17n.org>
4122
4123 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 4124 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 4125
4e99855e
CY
41262009-01-13 Chong Yidong <cyd@stupidchicken.com>
4127
4128 * font.c (font_clear_prop): If clearing the family, clear the font
4129 width index too.
4130
fff4e459 4131 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 4132
24f01470
JB
41332009-01-12 Juanma Barranquero <lekktu@gmail.com>
4134
4135 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
4136 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
4137 functions, use sizeof.
4138
a41240a3
MR
41392009-01-12 Martin Rudalics <rudalics@gmx.at>
4140
4141 * keyboard.c (read_char): Fix case where last_nonmenu_event
4142 returned a bad value with submenus. (Bug#447)
4143
944636b8
CY
41442009-01-12 Chong Yidong <cyd@stupidchicken.com>
4145
4146 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
4147 family, clear the font width index too.
4148
0dad7c6f
JR
41492009-01-11 Jason Rumney <jasonr@gnu.org>
4150
4151 * keyboard.c (cmd_error_internal): Exit when errors occur before
4152 frame creation and not in daemon mode. (Bug#1836)
4153
7c2363af
CY
41542009-01-10 Chong Yidong <cyd@stupidchicken.com>
4155
4156 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
4157 of a display vector, backtrack.
4158 (try_window_reusing_current_matrix): Check glyph type before
4159 referencing charpos member.
4160
97b1b294
EZ
41612009-01-10 Eli Zaretskii <eliz@gnu.org>
4162
4163 Fix Bug #876:
4164
4165 * coding.c (inhibit_null_byte_detection): New variable.
4166 (detect_coding, detect_coding_system): Don't pay attention to null
4167 bytes if inhibit_null_byte_detection is non-zero.
51d861de 4168 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
4169 <inhibit-iso-escape-detection>: Doc fix.
4170
4624b6e3
JR
41712009-01-09 Jason Rumney <jasonr@gnu.org>
4172
4173 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 4174 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
4175 Only report Unicode Plane 2 fonts as unicode-sip.
4176
323b840c
CY
41772009-01-09 Chong Yidong <cyd@stupidchicken.com>
4178
51d861de
SM
4179 * xfaces.c (Fx_font_family_list): Delete function.
4180 Move compatibility version to faces.el.
323b840c 4181
51d861de 4182 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 4183
eba7400d
MR
41842009-01-09 Martin Rudalics <rudalics@gmx.at>
4185
4186 * frame.c (x_set_frame_parameters): Remember requested value for
4187 fullscreen before it's reset by the parameter handler.
4188
4b09796d
GM
41892009-01-09 Glenn Morris <rgm@gnu.org>
4190
4191 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 4192 (last_command_event): ... and update all users.
4b09796d
GM
4193 (last_input_char): For clarity, rename to...
4194 (last_input_event): ... and update all users.
4195 (last-command-char, last-input-char): Move to subr.el as aliases.
4196 * cmds.c, commands.h: Update for last_command_char rename.
4197
14ccea62
CY
41982009-01-08 Chong Yidong <cyd@stupidchicken.com>
4199
51d861de 4200 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 4201
5f004711
JR
42022009-01-08 Jason Rumney <jasonr@gnu.org>
4203
4204 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
4205 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
4206 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
4207 Don't declare.
fff4e459 4208 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
4209 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
4210
b71f6f73
KH
42112009-01-07 Kenichi Handa <handa@m17n.org>
4212
50b06221 4213 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 4214 remember the coding system used for decoding in
50b06221
KH
4215 coding_system (Bug#1039).
4216
b71f6f73 4217 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 4218 breaking the loop. (Bug#870)
b71f6f73
KH
4219 (decode_coding_utf_16, decode_coding_emacs_mule)
4220 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4221 (decode_coding_charset): Likewise.
4222
56f668f7
MR
42232009-01-05 Martin Rudalics <rudalics@gmx.at>
4224
4225 * frame.c (x_set_frame_parameters): Make sure height (width) get
4226 applied when fullwidth (fullheight) is set. (Bug#1522)
4227
5da9424d
JB
42282009-01-04 Juanma Barranquero <lekktu@gmail.com>
4229
4230 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4231 (utc_base): Declare as ULONGLONG, not long double.
4232 (convert_time_raw): Delete.
4233 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4234 (initialize_utc_base): New function.
4235 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4236 (convert_from_time_t): Use initialize_utc_base; compute result with
4237 64-bit arithmetic.
4238 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4239
c4605e09
EZ
42402009-01-03 Eli Zaretskii <eliz@gnu.org>
4241
9acef61c 4242 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
4243 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4244 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4245 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4246 [!subprocesses]: Define.
4247 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4248 (Flist_system_processes, Fsystem_process_attributes)
4249 [!subprocesses]: Call list_system_processes and
4250 system_process_attributes instead of returning Qnil.
4251
9acef61c
JB
4252 * dosfns.c (system_process_attributes, list_system_processes):
4253 New functions.
c4605e09
EZ
4254
4255 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4256
4257 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4258 Don't use the default (no-op) implementation.
4259
8b7d0a16
JR
42602009-01-03 Jason Rumney <jasonr@gnu.org>
4261
a6d46bc1
JR
4262 * keyboard.c (parse_modifiers_uncached): Wheel events are
4263 clicks (bug#687).
4264
8b7d0a16
JR
4265 * w32term.c (x_query_colors, x_query_color): New functions.
4266
4267 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4268 (svg_load_image): Cast returned pointers from dynamically loaded
4269 functions. Eliminate W32 specific code.
4270
bfe11752
DN
42712009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4272
89e2438a
DN
4273 * nsfns.m (x_set_foreground_color, x_set_background_color)
4274 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4275 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4276 x_ prefix instead of ns_. Update references.
4277 (syms_of_nsfns): Add a FIXME comment.
4278
4279 * nsterm.m (x_set_cursor_type): New prototype.
4280 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4281
bfe11752
DN
4282 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4283 for Solaris instead of incorrectly providing Qutime and Qcutime.
4284
031da700
EZ
42852009-01-02 Eli Zaretskii <eliz@gnu.org>
4286
4287 * w32.c (process_times): Compute sum of utime and stime.
4288 (system_process_attributes): Add Qtime to the alist.
4289
4290 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4291 and add them to the alist.
4292
4293 * process.c (top level) <Qtime, Qctime>: New variables.
4294 (syms_of_process): staticpro them.
4295 (Fsystem_process_attributes): Add their documentation to the doc
4296 string.
4297
4298 * process.h: Declare Qtime and Qctime.
4299
df23bf08
JR
43002009-01-02 Jason Rumney <jasonr@gnu.org>
4301
9acef61c 4302 * image.c (Qgobject): New symbol.
df23bf08
JR
4303 (syms_of_image): Initialize it.
4304 (init_svg_functions): Load some functions from gobject library.
4305
5bbdf7aa
DN
43062009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4307
4308 * frame.c (make_terminal_frame): Remove redundant code and useless
4309 block.
4310
63136da6
AS
43112009-01-01 Andreas Schwab <schwab@suse.de>
4312
4313 * process.c (conv_sockaddr_to_lisp): Add workaround for
4314 getsockname bug on BSD.
4315
9ef69046
CY
43162009-01-01 Chong Yidong <cyd@stupidchicken.com>
4317
d6fafbe0
CY
4318 * xfns.c (x_create_tip_frame): Set border width of the X window.
4319
51d861de 4320 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 4321
f9c34147
JR
43222009-01-01 Jason Rumney <jasonr@gnu.org>
4323
9acef61c 4324 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
4325 Don't block input, as per earlier xterm.c changes.
4326
f5497e45
AR
43272008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4328
4329 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4330 (ns_appkit_version_int): New function.
4331 (x-server-version): Use ns_appkit_version_int and follow 21+
4332 convention of returning 3 integers.
4333
c19cab20
KH
43342008-12-30 Kenichi Handa <handa@m17n.org>
4335
4336 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4337 (CHAR_SURROGATE_PAIR_P): New macro.
4338
4339 * font.h (struct font_driver): New member get_variation_glyphs.
4340
9acef61c 4341 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
4342 (Ffont_variation_glyphs): New function.
4343 (syms_of_font): Defsubr it.
4344
4345 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4346 ftfont_variation_glyphs.
4347 (setup_otf_gstring): New function.
4348 (ftfont_drive_otf): Use it.
4349 (ftfont_shape_by_flt): Handle variation selector.
4350 (ftfont_variation_glyphs): New function.
4351
28cd591f
MR
43522008-12-30 Martin Rudalics <rudalics@gmx.at>
4353
4354 * frame.c (Vemacs_iconified): Remove.
4355
7f714baf
JR
43562008-12-30 Jason Rumney <jasonr@gnu.org>
4357
4358 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 4359 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 4360
9d2d22ab
CY
43612008-12-30 Chong Yidong <cyd@stupidchicken.com>
4362
4363 * indent.c (Fvertical_motion): Don't advance iterator if we have
4364 reseated to the desired position.
4365
4366 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4367 checking for pos match.
4368
545312c2
KH
43692008-12-30 Kenichi Handa <handa@m17n.org>
4370
1ede3eb6
KH
4371 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4372 just get the low 8-bit of the code.
4373
545312c2
KH
4374 * font.c (font_intern_prop): Validate str as multibyte.
4375
bd7bbf29
DN
43762008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4377
31e0750e
DN
4378 * dispextern.h (struct face): Move lface and hash from the middle
4379 of bitfields.
4380
bd7bbf29
DN
4381 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4382
b5672e7c
DN
43832008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4384
4385 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4386 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4387 instead of intervals.h.
4388
d704470f
AS
43892008-12-26 Andreas Schwab <schwab@suse.de>
4390
4391 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4392 cons.
4393
54b33868
MR
43942008-12-26 Martin Rudalics <rudalics@gmx.at>
4395
4396 * textprop.c (Qminibuffer_prompt): New variable.
4397 (syms_of_textprop): Initialize it.
4398 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4399 in minibuffer-prompt face. (Bug#1662)
4400
40b615d6
JR
44012008-12-25 Jason Rumney <jasonr@gnu.org>
4402
4403 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4404
baae5c2d
JR
44052008-12-24 Jason Rumney <jasonr@gnu.org>
4406
4407 * ralloc.c (r_alloc_reset_variable): New function.
4408
4409 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4410 record of what points where. (Bug#716)
baae5c2d 4411
a9051c88
DN
44122008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4413
4414 * minibuf.c (read_minibuf): Follow the non-interactive case when
4415 running as a daemon, before detaching.
4416
8b146312
AS
44172008-12-22 Andreas Schwab <schwab@suse.de>
4418
4419 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4420 * gtkutil.c (free_widget_value): Use xfree instead of free.
4421
56f2de10
MR
44222008-12-22 Martin Rudalics <rudalics@gmx.at>
4423
4424 * frame.c (delete_frame): New function derived from
4425 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4426 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4427 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4428 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4429 * frame.h: Extern delete_frame.
4430 * window.c (window_loop):
4431 * terminal.c (delete_terminal):
4432 * xterm.c (x_connection_closed):
4433 * xfns.c (Fx_hide_tip):
9acef61c 4434 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4435
1fc200d6
JR
44362008-12-21 Jason Rumney <jasonr@gnu.org>
4437
4438 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4439 when character maps to .notdef character.
4440
5e252df2
SM
44412008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4442
4443 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4444
99b72cc4
JR
44452008-12-20 Jason Rumney <jasonr@gnu.org>
4446
4447 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4448 a graphical frame on Windows. (Bug#1325)
99b72cc4 4449
acc49a52
JD
44502008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4451
4452 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4453
6ea15123
CY
44542008-12-20 Chong Yidong <cyd@stupidchicken.com>
4455
4456 * minibuf.c (Fread_buffer): Doc fix.
4457
b2dab6c8
JR
44582008-12-20 Jason Rumney <jasonr@gnu.org>
4459
54ea0c87 4460 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4461 server name in UNC paths. (Bug#719)
54ea0c87 4462
b2dab6c8 4463 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4464 charbuf. (Bug#1035)
b2dab6c8 4465
6d1921be
DN
44662008-12-19 Daniel Engeler <engeler@gmail.com>
4467
4468 * sysdep.c (serial_configure): Fix typo.
4469
53934c98
DN
44702008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4471
4472 * sysdep.c: Include alloca.h.
f4f634e8
DN
4473 (system_process_attributes): Add implementation for Solaris.
4474
4475 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4476
06e111a6
DN
44772008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4478
4479 Reorganize implementation of Flist_system_processes and
4480 Fsystem_process_attributes. No functional changes.
4481 * process.c: Don't #include pwd.h, grp.h and limits.h.
4482 (Flist_system_processes): Just call list_system_processes.
4483 (Fsystem_process_attributes): Just call system_process_attributes.
4484 (procfs_list_system_processes, time_from_jiffies)
4485 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4486 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4487
4488 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4489 (list_system_processes): Rename from
4490 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4491 Provide a do nothing implementation.
4492 (system_process_attributes): Rename from
4493 procfs_list_system_processes.
4494 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4495 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4496
4497 * w32.c (list_system_processes): Rename from
4498 w32_list_system_processes.
4499 (system_process_attributes): Rename from
4500 w32_system_process_attributes.
4501
4502 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4503
4504 * process.h (w32_list_system_processes)
4505 (w32_system_process_attributes): Remove.
362654a6
JB
4506 (list_system_processes, system_process_attributes):
4507 New prototypes.
06e111a6 4508
6a705b23
KH
45092008-12-19 Kenichi Handa <handa@m17n.org>
4510
4511 * xfont.c (xfont_decode_coding_xlfd): New function.
4512 (xfont_encode_coding_xlfd): New function.
4513 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4514 (xfont_list): Decode and encode XLFD by iso-8859-1.
4515 (xfont_match): Likewise.
4516 (xfont_list_family): Likewise.
4517 (xfont_open): Likewise.
4518
d66c0241 4519 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4520 names are utf-8.
4521
d66c0241 4522 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4523 names are utf-8.
4524
5a130941
JD
45252008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4526
4527 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4528 changed.
bfd20325
JD
4529 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4530 clicked on a detached tool bar button.
5a130941 4531
fd95644b
DN
45322008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4533
4534 * emacs.c (main): Print and error and exit when no data is read
4535 from the pipe.
4536
e6eee6ae
JR
45372008-12-17 Jason Rumney <jasonr@gnu.org>
4538
4539 * w32font.c (w32font_has_char): Always return -1.
4540
a35dd56b
KH
45412008-12-16 Kenichi Handa <handa@m17n.org>
4542
4543 * font.c (font_open_entity): Fix previous change.
4544
0e3635c2
DN
45452008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4546
4547 * process.c: Include <limits.h>.
4548
d4835507 45492008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4550
4551 * font.c (font_update_drivers): Fix mistake in reconstructing the
4552 driver list.
4553
45542008-12-16 Chong Yidong <cyd@stupidchicken.com>
4555
4556 * font.c (font_clear_cache): Fix format of font cache data.
4557
e2cbc401
CY
45582008-12-15 Chong Yidong <cyd@stupidchicken.com>
4559
4560 * xftfont.c (xftfont_open): Free Xft font pattern if
4561 XftFontOpenPattern fails.
4562
4563 * xterm.c (x_free_frame_resources): Remove extraneous call to
4564 free_frame_faces.
4565
b131d535
CY
45662008-12-13 Chong Yidong <cyd@stupidchicken.com>
4567
4568 * xterm.c (x_delete_display): Move xim_close_dpy call to
4569 x_delete_terminal.
4570 (x_delete_terminal): Call xim_close_dpy.
4571
e6df5336
JR
45722008-12-13 Jason Rumney <jasonr@gnu.org>
4573
4574 * w32font.c (intern_font_name): New function.
4575 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4576 (w32font_open_internal, Fx_select_font): Decode font name.
4577 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4578
4579 * w32font.h (intern_font_name): Declare new function.
4580
4581 * w32uniscribe.c (add_opentype_font_name_to_list):
4582 Use intern_font_name.
4583
20d68145
CY
45842008-12-13 Chong Yidong <cyd@stupidchicken.com>
4585
9f2554de
CY
4586 * frame.c (Fdelete_frame): Call free_font_driver_list.
4587
3d9bec9a
CY
4588 * font.c (free_font_driver_list): Implement missing function.
4589
20d68145
CY
4590 * w32term.c (w32_term_init): Don't initialize the image cache
4591 here; it will be done in init_frame_faces.
4592
4593 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4594 (struct x_display_info): Remove unused member null_pixel. New
4595 member xim_callback_data.
4596
4597 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4598 (xim_initialize): Save pointer to callback function data.
4599 (xim_close_dpy): Free callback function data. Call XCloseIM,
4600 reverting 2008-11-04 change by David Smith.
4601 (x_term_init): Don't initialize the image cache here; it will be
4602 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4603 (x_delete_display): Free x_dnd_atoms member.
4604
96f9306b
KH
46052008-12-13 Kenichi Handa <handa@m17n.org>
4606
6dec9044
JB
4607 * font.c (font_rescale_ratio): Moved from xfaces.c.
4608 Argument type changed. Handle a font-spec too.
96f9306b 4609 (font_score): Check Vface_font_rescale_alist.
6dec9044 4610 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4611
4612 * xfaces.c (font_rescale_ratio): Moved to font.c.
4613
8d5b4964
CY
46142008-12-13 Chong Yidong <cyd@stupidchicken.com>
4615
4616 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4617
e6df5336
JR
46182008-12-12 Jason Rumney <jasonr@gnu.org>
4619
4620 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4621 Vwindow_system_version to the real w32 major version.
4622
97c6058a
DN
46232008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4624
4625 * term.c (init_tty): Move setting the terminal name before the
4626 potential user: maybe_fatal.
4627
ec4e88d7
CY
46282008-12-11 Chong Yidong <cyd@stupidchicken.com>
4629
d4835507
JB
4630 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4631 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4632
b4233ec9
JR
46332008-12-11 Jason Rumney <jasonr@gnu.org>
4634
8ec71e23 4635 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4636 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4637
b4233ec9 4638 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4639 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4640
011a0143
JB
46412008-12-11 Juanma Barranquero <lekktu@gmail.com>
4642
4643 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4644
3c309f34
JB
46452008-12-11 Juanma Barranquero <lekktu@gmail.com>
4646
4647 * process.c (Fsystem_process_attributes, syms_of_process):
4648 Fix typo in name of Ssystem_process_attributes.
4649 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4650
fedc6ab5
JB
46512008-12-11 Juanma Barranquero <lekktu@gmail.com>
4652
4653 * syntax.c (Fmodify_syntax_entry): Doc fix.
4654
ba3de0e8
JB
46552008-12-10 Juanma Barranquero <lekktu@gmail.com>
4656
4657 * font.c (Ffont_spec): Move usage to end of docstring.
4658
174f1c74
JR
46592008-12-10 Jason Rumney <jasonr@gnu.org>
4660
4661 * w32font.c (Qcham): New symbol.
4662 (font_supported_scripts): Add cham, and comments for other new
4663 scripts in bitfield from OpenType spec.
9d32f818
JR
4664 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4665 contain characters beyond the bmp.
174f1c74 4666
7b649478
KH
46672008-12-10 Kenichi Handa <handa@m17n.org>
4668
4669 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4670 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4671 Qunicode_sip.
4672
2133e2d1
JB
46732008-12-10 Juanma Barranquero <lekktu@gmail.com>
4674
4675 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4676 (Fcoding_system_put): Use QCdefault_char.
4677 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4678
9af886ee
CY
46792008-12-09 Chong Yidong <cyd@stupidchicken.com>
4680
74d819eb
CY
4681 * xftfont.c (syms_of_xftfont): Fix typo.
4682
4ccfa1c0 4683 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4684
7c19d3ae
DN
46852008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4686
4687 * emacs.c (main): Close daemon_pipe on exec.
4688
567826bb
CY
46892008-12-08 Chong Yidong <cyd@stupidchicken.com>
4690
4691 * termchar.h (struct tty): New members termcap_term_buffer and
4692 termcap_strings_buffer.
4693
4694 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4695 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4696 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4697 All callers changed.
4698 (init_tty): Store termcap data and string buffers in new struct
4699 tty members termcap_term_buffer and termcap_strings_buffer.
4700 (delete_tty): Free them.
4ccfa1c0 4701 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4702
aa96c42b
SZ
47032008-12-07 Seiji Zenitani <zenitani@mac.com>
4704
4705 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4706 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4707
b7e1d896
CY
47082008-12-06 Chong Yidong <cyd@stupidchicken.com>
4709
4710 * coding.c (make_conversion_work_buffer): Disable buffer
4711 modification hooks in the work buffer.
4712
b5ec91a5
EZ
47132008-12-05 Eli Zaretskii <eliz@gnu.org>
4714
4715 * process.c (procfs_system_process_attributes): If `nread' has a
4716 negative value, assign zero to it.
4717
a5d2a52b
CY
47182008-12-05 Chong Yidong <cyd@stupidchicken.com>
4719
68c5540b 4720 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4721
7bf1bb21
KH
47222008-12-05 Kenichi Handa <handa@m17n.org>
4723
4724 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4725 second character is a combining character.
4726
2fdc7d00
EZ
47272008-12-05 Eli Zaretskii <eliz@gnu.org>
4728
4729 * process.c (procfs_system_process_attributes): Don't use cmd,
4730 cmdsize, and q without initializing them first.
4731
bf6bfba8
JR
47322008-12-04 Jason Rumney <jasonr@gnu.org>
4733
4734 * w32font.c (w32font_draw): Initialize orig_clip before getting
4735 it, and delete it when finished.
4736
a3b1a468
DN
47372008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4738
4739 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4740 case when running as a daemon before detaching.
4741
8b8be8eb
JB
47422008-12-03 Juanma Barranquero <lekktu@gmail.com>
4743
805f2638 4744 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 4745
b1bde622
KH
47462008-12-03 Kenichi Handa <handa@m17n.org>
4747
e500c47d
KH
4748 * font.c (font_at): Set `multibyte' at first.
4749
ca516334
KH
4750 * coding.c (decode_coding_charset): Check type of an element of
4751 vector VALIDS.
7bf1bb21 4752 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 4753
4ccfa1c0 4754 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
4755 (font_for_char): Likewise.
4756
1e5ecd37
CY
47572008-12-03 Chong Yidong <cyd@stupidchicken.com>
4758
d5b01609 4759 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
4760 (font_update_lface): Handle fonts with corrupted size specs,
4761 i.e. non-int and non-float.
d5b01609 4762
11e3a6e4 4763 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 4764 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 4765 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 4766
ab06788b
CY
4767 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4768
1e5ecd37 4769 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 4770 underline_minimum_offset for underline position.
1e5ecd37 4771
63c125ab
DN
47722008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4773
4774 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4775
4776 * character.c (c_string_width): Specify the type for LEN.
4777
3a8406e1
KH
47782008-12-03 Kenichi Handa <handa@m17n.org>
4779
4ccfa1c0 4780 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 4781 (decode_coding_utf_8): Likewise.
4ccfa1c0 4782 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 4783 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 4784
651df7d9
CY
47852008-12-02 Chong Yidong <cyd@stupidchicken.com>
4786
4787 * keyboard.c (make_lispy_position): Only use PT if the selected
4788 window is current.
4789
1f625c6c
AS
47902008-12-02 Andreas Schwab <schwab@suse.de>
4791
f7741ce9
AS
4792 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4793
1f625c6c
AS
4794 * doprnt.c (doprnt1): Fix size of charbuf.
4795
92bc2678
CY
47962008-12-02 Chong Yidong <cyd@stupidchicken.com>
4797
4798 * keyboard.c (timer_check): Revert last change.
4799
93b9e8cc
JB
48002008-12-02 Juanma Barranquero <lekktu@gmail.com>
4801
4802 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4803
fd7a37d5
JB
48042008-12-01 Juanma Barranquero <lekktu@gmail.com>
4805
4806 * makefile.w32-in: Update dependencies.
4807 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4808
c115043b
AS
48092008-12-01 Andreas Schwab <schwab@suse.de>
4810
4811 * font.c (register_font_driver): Use xmalloc.
4812 (font_put_frame_data): Likewise.
4813
f5668d2a
CY
48142008-12-01 Chong Yidong <cyd@stupidchicken.com>
4815
860d96be
CY
4816 * xfaces.c (realize_x_face): Make abort condition clearer.
4817
f5668d2a
CY
4818 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4819
379c17e7
CY
48202008-11-30 Chong Yidong <cyd@stupidchicken.com>
4821
4822 * keyboard.c (timer_check): After a timer runs, ensure that the
4823 selected window's buffer is current.
4824
35f36d65
JB
48252008-11-30 Juanma Barranquero <lekktu@gmail.com>
4826
f952c61c
JB
4827 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4828 It was accidentally restored by the Unicode merge.
4829
35f36d65
JB
4830 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4831
b23077df
JB
48322008-11-29 Juanma Barranquero <lekktu@gmail.com>
4833
4834 * w32proc.c: Include "coding.h".
4835 (Fw32_short_file_name): Encode filename passed to Windows API.
4836 (Fw32_long_file_name): Encode filename passed to Windows API and
4837 decode back the result. (Bug#1433)
4838
b8ebe9dd
KH
48392008-11-29 Kenichi Handa <handa@m17n.org>
4840
8cc53f96
KH
4841 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
4842 not before accessing it.
4843
b8ebe9dd
KH
4844 * charset.c (Fdefine_charset_internal): After calculating
4845 min_char, max_char, and fastmap, copy the charset structure again.
4846 (encode_char): Fix the previous change.
4847
59bc82c0
SZ
48482008-11-28 Seiji Zenitani <zenitani@mac.com>
4849
4850 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
4851
4852 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
4853
4854 * nsterm.m (x_set_frame_alpha): New function.
4855
32247e3d
EZ
48562008-11-27 Eli Zaretskii <eliz@gnu.org>
4857
4858 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
4859
b003e5ff
JB
48602008-11-27 Juanma Barranquero <lekktu@gmail.com>
4861
4862 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
4863 pointer to check_face_name.
4864
708550f5
KH
48652008-11-27 Kenichi Handa <handa@m17n.org>
4866
4867 * category.h (SET_CATEGORY_SET): Call set_category_set.
4868 (set_category_set): Extern it.
4869
4870 * category.c (hash_get_category_set): New function.
4871 (Fmodify_category_entry): Adjusted for the change of
4872 char_table_ref_and_range. Call hash_get_category_set to get a
4873 category set to store in the table.
4874
4875 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
4876 Funify_charset.
4877
2ae37cf0 4878 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
4879 (DECODE_CHAR): Check if the decoder vector is ready.
4880 (ENCODE_CHAR): Check if the encoder char-table is ready.
4881 (maybe_unify_char): Extern it.
4882
4883 * charset.c (Vchar_unified_charset_table): Delete it.
4884 (inhibit_load_charset_map): New variable.
4885 (temp_charset_work): New variable.
4886 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
4887 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
4888 New macros.
4889 (load_charset_map): Meaning of control_flag changed. If
4890 inhibit_load_charset_map is nonzero, setup a table in
4891 temp_charset_work.
4892 (load_charset): New argument control_flag.
4893 (map_charset_for_dump): New function.
4894 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
4895 map_charset_for_dump.
4896 (Fdefine_charset_internal): If the charset method is MAP, load
4897 mapping tables by calling load_charset.
4898 (Funify_charset): Don't load a mapping table but directly set
4899 Vchar_unify_table.
4900 (maybe_unify_char): New function.
4901 (decode_char): Don't handle the deleted method MAP_DEFERRED.
4902 Handle the case of inhibit_load_charset_map being nonzero.
4903 (encode_char): Don't handle the deleted method MAP_DEFERRED.
4904 Handle the case of inhibit_load_charset_map being nonzero.
4905 (Fclear_charset_maps): Just free temp_charset_work.
4906 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
4907 variable.
4908
4909 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
4910 change of char_table_ref_and_range.
4911 (char_table_ref_and_range): Change the meaning of argument FROM
4912 and TO. Now the caller must provide initial values for *FROM
4913 and *TO.
4914
4915 * fontset.c (fontset_add): Adjusted for the change of
4916 char_table_ref_and_range.
4917 (fontset_get_font_group): Likewise.
4918 (Ffontset_info): Likewise.
4919
4920 * keymap.c (describe_vector): Adjusted for the change of
4921 char_table_ref_and_range. For char-table, put boundary between
4922 non-ASCII and 8-bit characters.
4923
4924 * print.c (print_object): For bool-vector, delete unnecessary
4925 check of ASCII_BYTE_P.
4926
9196133b
JR
49272008-11-26 Jason Rumney <jasonr@gnu.org>
4928
4929 * w32font.c (w32font_open_internal): Don't include external
9acef61c 4930 leading in font height. (Bug#879)
9196133b 4931
9f688acf
GM
49322008-11-26 Glenn Morris <rgm@gnu.org>
4933
4934 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
4935 redefinition with ifdef. (Bug#1383)
4936
90d19aff
AR
49372008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4938
4939 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
4940
4ccfa1c0 49412008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
4942
4943 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
4944 New EmacsView methods.
4945 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
4946 Fixes bug #1048,1357,1414.
4947
49482008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4949
4950 Fix bug #1362.
4951 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
4952 is not an indexed color.
4953 * nsterm.m (free_indexed_color): Add argument checking.
4954 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
4955
e7d5ecb3
CY
49562008-11-24 Chong Yidong <cyd@stupidchicken.com>
4957
4958 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
4959 Document confirm-after-completion value for
4960 minibuffer-completion-confirm.
4961
c285743c
JR
49622008-11-24 Jason Rumney <jasonr@gnu.org>
4963
4964 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
4965 warning.
4966
b0857706
JR
49672008-11-23 Jason Rumney <jasonr@gnu.org>
4968
4969 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
4970 restored before returning.
4971
4972 * w32font.c (check_face_name): New function.
4973 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 4974 fonts. (Bug#642)
b0857706 4975
ee50ff07
MR
49762008-11-22 Martin Rudalics <rudalics@gmx.at>
4977
4978 * buffer.c (Fswitch_to_buffer): Reword and mention new option
4979 confirm-nonexistent-file-or-buffer in doc-string.
4980
b8ff72fa
SM
49812008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
4982
4983 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
4984 Fix copy/paste typo. Add checks.
4985
cee53ed4
KH
49862008-11-21 Kenichi Handa <handa@m17n.org>
4987
4988 * coding.c (detect_coding_iso_2022): Reject invalid composition
4989 sequence.
4990 (DECODE_COMPOSITION_START): If the current source is the last
4991 block, and the current composition doesn't end, regard this
4992 sequence as invalid.
4993 (decode_coding_iso_2022): Handle invalid composition sequence.
4994
f6ef1e65
MR
49952008-11-20 Martin Rudalics <rudalics@gmx.at>
4996
4997 * window.c (coordinates_in_window): Don't return
4998 ON_VERTICAL_BORDER for the rightmost position of a mode/header
4999 line when the window is not the rightmost one. (Bug#1372)
5000
e08b1705
MR
50012008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
5002
5003 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
5004
ad98e89f
EZ
50052008-11-15 Eli Zaretskii <eliz@gnu.org>
5006
5007 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
5008 and bright_bg if noninteractive is non-zero.
5009
fb098a4b
CY
50102008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5011
5012 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
5013 x_draw_glyph_string_background.
5014
5015 * w32term.c (x_draw_glyph_string): Likewise.
5016
ce952b6e
CY
50172008-11-15 Chong Yidong <cyd@stupidchicken.com>
5018
5019 * xterm.c (x_draw_glyph_string): Stop drawing the background of
5020 the next glyph string once past the overhang width.
5021
5022 * nsterm.m (ns_draw_glyph_string): Likewise.
5023
5024 * w32term.c (x_draw_glyph_string): Likewise.
5025
26ea7079
CY
50262008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
5027
5028 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
5029 double file close.
5030
1c33c906
MR
50312008-11-14 Martin Rudalics <rudalics@gmx.at>
5032
5033 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
5034 dedicated status of window before attempting to display another
5035 buffer in it.
5036
8fc29035
JB
50372008-11-14 Juanma Barranquero <lekktu@gmail.com>
5038
5039 * msdos.c (Fmsdos_long_file_names):
5040 (syms_of_msdos) <dos-unsupported-char-glyph>:
5041 * dosfns.c (Fint86): Fix typos in docstrings.
5042
55fb4286
EZ
50432008-11-14 Eli Zaretskii <eliz@gnu.org>
5044
5045 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
5046
3fda0315
KY
50472008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
5048
5049 * puresize.h (BASE_PURESIZE): Increase to 1260000.
5050
7e849c17
CY
50512008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
5052
5053 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
5054
5055 * frame.h: Negative alpha means "don't touch".
5056
5057 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
5058
5059 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
5060
b9fd67bd
DN
50612008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
5062
5063 * hftctl.c:
5064 * chpdef.h:
5065 * acldef.h: Remove files used only for systems no longer supported.
5066
5067 * Makefile.in: Fix .o alphabetical ordering.
5068 (hftctl.o): Remove dependency, file removed.
5069 (keymap.o, print.o): Depend on charset.h.
5070
d5998e03
KH
50712008-11-10 Kenichi Handa <handa@m17n.org>
5072
2ae37cf0 5073 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 5074
be70e183
CY
50752008-11-08 Chong Yidong <cyd@stupidchicken.com>
5076
5077 * dired.c (file_name_completion): If completion_ignore_case is
5078 enabled, ignore case when checking completion-regexp-list.
5079
7cf94eac
EZ
50802008-11-08 Eli Zaretskii <eliz@gnu.org>
5081
5082 * vm-limit.c (get_lim_data): Fix last change.
5083
ee107a89
KH
50842008-11-08 Kenichi Handa <handa@m17n.org>
5085
5086 * character.c (Fget_byte): New function.
5087 (syms_of_character): Defsubr Fget_byte.
5088
5fd15622
CY
50892008-11-07 Chong Yidong <cyd@stupidchicken.com>
5090
5091 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
5092 cursor position is valid after scrolling.
5093
13d62fad
JB
50942008-11-06 Juanma Barranquero <lekktu@gmail.com>
5095
5096 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
5097
a1dd2936
GM
50982008-11-06 Glenn Morris <rgm@gnu.org>
5099
5100 * xterm.c (handle_one_xevent): Don't let popup menus cause
5101 mouse-autoselect-window related window switching. (Bug#1261)
5102
860cd236
CY
51032008-11-04 David Smith <davidsmith@acm.org> (tiny change)
5104
5105 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
5106
653a3150
AS
51072008-11-04 Andreas Schwab <schwab@suse.de>
5108
5109 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
5110
870f5cac
CY
51112008-11-03 Chong Yidong <cyd@stupidchicken.com>
5112
5113 * xfns.c (Fx_wm_set_size_hint): New function.
5114
1e02f3cb
MR
51152008-11-03 Martin Rudalics <rudalics@gmx.at>
5116
5117 * textprop.c (Fprevious_single_char_property_change): Return 0
5118 when there's no change in a string. (Bug#1301)
5119
e630dfc6
MR
51202008-11-02 Martin Rudalics <rudalics@gmx.at>
5121
5122 * frame.c (do_switch_frame): New argument NORECORD passed to
5123 Fselect_window.
5124 (Fselect_frame): New argument NORECORD passed to
5125 do_switch_frame.
5126 (Fset_frame_selected_window): New argument NORECORD passed to
5127 Fselect_frame.
5128 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
5129 in call of do_switch_frame.
5130 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
5131 Handle NORECORD argument in call of Fselect_frame.
5132 * lisp.h (do_switch_frame, Fselect_frame)
5133 (Fset_frame_selected_window): Adjust declarations.
5134 * window.c (select_frame_norecord): New function.
5135 (run_window_configuration_change_hook): Use it and call
5136 Fselect_frame with NORECORD set.
5137 (Fselect_window): Pass NORECORD to Fselect_frame.
5138 (Fset_window_configuration): Handle NORECORD argument in call of
5139 do_switch_frame.
5140 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
5141 Fset_frame_selected_window.
5142 * keyboard.c (command_loop_1): Handle NORECORD in call of
5143 Fselect_frame (currently ifdefd).
5144
9020b223
GM
51452008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
5146
5147 * emacs.c (USAGE2): Untabify.
5148
793ffee8
SM
51492008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
5150
5151 * composite.c (fill_gstring_header): Fix copy/paste typo.
5152
ab6d1131
MR
51532008-10-31 Martin Rudalics <rudalics@gmx.at>
5154
5155 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
5156 (Fother_window): Rename argument and rewrite doc-string.
5157 (select_window_norecord): Fix return value. (Bug#1276)
5158
601a9cf1
JB
51592008-10-30 Juanma Barranquero <lekktu@gmail.com>
5160
5161 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
5162 new frames overriding foreground for tooltips. Based on similar patch
5163 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
5164
813b0652
CY
51652008-10-29 Chong Yidong <cyd@stupidchicken.com>
5166
5167 * emacs.c (Fdaemon_initialized): Initialize nfd.
5168
4414f58f
MR
51692008-10-29 Martin Rudalics <rudalics@gmx.at>
5170
5171 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
5172 (Fwindow_text_height): Clarify doc-strings.
5173 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
5174 doc-string of window-scroll-functions.
5175
ecdcaa09
RS
51762008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
5177
5178 * category.c (syms_of_category): Fix typo in docstring.
5179
23fe745a
JB
51802008-10-28 Juanma Barranquero <lekktu@gmail.com>
5181
5182 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
5183 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
5184 Fix typos in docstrings.
5185
ff808935
DN
51862008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
5187
5188 * emacs.c (daemon_pipe): Make non-static.
5189 (IS_DAEMON): Move definition ...
5190 * lisp.h (IS_DAEMON): ... here.
5191 (daemon_pipe): Declare.
5192 (is_daemon): Remove.
5193 * dispnew.c (init_display): Use IS_DAEMON.
5194
fc012771
SM
51952008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5196
5197 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
5198 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
5199
5200 * emacs.c (is_daemon): Remove.
5201 (main): Don't set is_daemon.
5202 (IS_DAEMON): New macro.
5203 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 5204 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
5205 parent exits.
5206 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
5207
d8bdbe6f
CY
52082008-10-27 Chong Yidong <cyd@stupidchicken.com>
5209
d1a072bf
CY
5210 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
5211 over-sized glyph, draw it with the default glyph width.
5212
e2e325aa
CY
5213 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5214 glyph, draw it with the default glyph width.
5215
5216 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5217 glyph, draw it with the default glyph width.
5218
d8bdbe6f
CY
5219 * xdisp.c (try_scrolling): When computing the distance from the
5220 scroll margin to PT, try moving some distance past the window
5221 bottom before giving up.
5222
7bfac547
MR
52232008-10-27 Martin Rudalics <rudalics@gmx.at>
5224
5225 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
5226 (Fset_window_buffer): Explain in doc-string that a window can be
5227 "strongly" dedicated to its buffer.
5228
4ff029f6
DN
52292008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
5230
5231 * emacs.c (daemon_name): New variable.
5232 (main): Deal with --daemon=SERVER_NAME.
5233 (Fdaemonp): Return a name if one was passed to --daemon.
5234
5790ef40
DN
52352008-10-26 Romain Francoise <romain@orebokech.com>
5236
f9bd0df9 5237 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
5238 (main): Create a pipe before forking, make the parent exit only after
5239 the child has closed its end of the pipe. Move closing the
5240 descriptors ...
5241 (Fdaemon_initialized): ... here. New function.
5242
f5385255
SM
52432008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5244
4d632321
SM
5245 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5246 the previous unoptimized table.
5247
f5385255
SM
5248 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5249 the distinction between non-nil and non-t value of `dedicated'.
5250
6c56a0f3
CY
52512008-10-25 Chong Yidong <cyd@stupidchicken.com>
5252
5253 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 5254 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 5255
fec89261
MR
52562008-10-25 Martin Rudalics <rudalics@gmx.at>
5257
5258 * window.c (Fget_buffer_window, Fdelete_windows_on)
5259 (Freplace_buffer_in_windows): Make buffer argument optional and
5260 rename to buffer_or_name.
5261
34fcddd0
CY
52622008-10-24 Chong Yidong <cyd@stupidchicken.com>
5263
f5385255
SM
5264 * xdisp.c (handle_single_display_spec, handle_display_prop):
5265 Undo 2005-05-16 change.
34fcddd0
CY
5266 (handle_stop): Pop iterator if it's loaded with an empty string.
5267 (get_overlay_strings_1): Don't save iterator if it's loaded with
5268 an empty string (bug#1201).
5269
064766f2
KH
52702008-10-24 Kenichi Handa <handa@m17n.org>
5271
5272 * ftfont.c (ftfont_otf_features): Fix previous change.
5273 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5274 calling ftfont_otf_features.
5275
f9bd0df9 52762008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
5277
5278 * font.c (font_match_p): Fix for the case that a vector of
5279 characters is in script-representative-chars.
5280
1dae9197
MA
52812008-10-24 Michael Albinus <michael.albinus@gmx.de>
5282
5283 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 5284 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
5285 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5286 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
5287 macro. (Bug#1186).
5288
f9bd0df9 52892008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
5290
5291 * s/sol2-10.h: New file.
5292
878a4584
JB
52932008-10-23 Juanma Barranquero <lekktu@gmail.com>
5294
5295 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5296 poor beast has survived 9+ years and the jump from xterm.c!).
5297
cd265ca6
MR
52982008-10-23 Martin Rudalics <rudalics@gmx.at>
5299
5300 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5301 Reword doc-string.
f5385255 5302 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 5303
472a4dc9
JB
53042008-10-23 Juanma Barranquero <lekktu@gmail.com>
5305
5306 * character.c (syms_of_character) <script-representative-chars>:
5307 <unicode-category-table>: Doc fixes.
5308
159bd5a2
NF
53092008-10-23 Noah Friedman <friedman@splode.com>
5310
5311 * coding.c (make_conversion_work_buffer): Check that
5312 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5313 Fget_buffer_create.
5314
49f9c344
KH
53152008-10-23 Kenichi Handa <handa@m17n.org>
5316
5317 * font.c (font_add_log): Check the values of extra properties.
5318
12bb3111
MR
53192008-10-22 Martin Rudalics <rudalics@gmx.at>
5320
5321 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5322 Reword doc-string.
5323 (Fset_window_parameter): Use NILP.
5324 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 5325 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 5326
bbeb4e99
JB
53272008-10-22 Juanma Barranquero <lekktu@gmail.com>
5328
5329 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5330
53312008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
5332
5333 * nsfns.m (ns_appkit_version): New function.
5334 (x-server-version): Use it.
5335 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5336 (x-server-vendor): Don't check_ns().
5337
5338 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5339
a9b555d3
JB
53402008-10-22 Juanma Barranquero <lekktu@gmail.com>
5341
5342 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5343 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5344
4626499f
KH
53452008-10-22 Kenichi Handa <handa@m17n.org>
5346
e3681952
KH
5347 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5348 scripts.
5349
4626499f
KH
5350 * category.c (word_boundary_p): Check scripts instead of charset.
5351 Handle nil value in word-separating-categories and
5352 word-combining-categories.
5353 (syms_of_category): Fix docstrings of word-separating-categories
5354 and word-combining-categories.
5355
1560f91a
EZ
53562008-10-21 Eli Zaretskii <eliz@gnu.org>
5357
5358 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5359 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5360
f4668441
MR
53612008-10-21 Martin Rudalics <rudalics@gmx.at>
5362
5363 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5364 Rename arg "buffer" to "buffer_or_name".
5365 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5366 it optional.
5367 (no_switch_window): Remove since the return value is not used.
a9b555d3 5368 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
5369 Consider window as dedicated when Fwindow_dedicated_p returns a
5370 non-nil value.
5371 * lisp.h: Remove prototype for no_switch_window.
5372
fd75ddb2
JD
53732008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5374
5375 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 5376 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 5377
07295713
KH
53782008-10-21 Kenichi Handa <handa@m17n.org>
5379
5380 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5381 check Vlatin_extra_code_table.
5382
712adc82
EZ
53832008-10-20 Eli Zaretskii <eliz@gnu.org>
5384
5385 * fileio.c (Fset_file_modes): Doc fix.
5386
f549eb0b
MA
53872008-10-19 Michael Albinus <michael.albinus@gmx.de>
5388
5389 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5390 in arrays.
5391
aac0c6e3
MR
53922008-10-19 Martin Rudalics <rudalics@gmx.at>
5393
5394 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5395 Mention kill-buffer in doc-string.
5396 (Fset_window_buffer): Reinsert tem check removed in last commit.
5397 (Fenlarge_window, Fshrink_window): Have argument names and
5398 doc-string follow Elisp manual more closely.
5399
54002008-10-18 Eli Zaretskii <eliz@gnu.org>
5401
5402 * fileio.c (Fset_file_modes): Doc fix.
5403
54042008-10-18 Martin Rudalics <rudalics@gmx.at>
5405
5406 * window.c (Fwindow_width, Fset_window_start)
5407 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5408 (Fdelete_windows_on, Freplace_buffer_in_windows):
5409 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5410 (Fwindow_dedicated_p): Make window argument optional.
5411 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5412 (Fset_window_buffer): Respect any non-nil dedicated value for
5413 window. Rename "buffer" argument to "buffer_or_name".
5414
54152008-10-18 Ulrich Mueller <ulm@gentoo.org>
5416
5417 * m/sh3.h: New file, machine description for SuperH.
5418
54192008-10-17 Martin Rudalics <rudalics@gmx.at>
5420
5421 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5422
54232008-10-17 Kenichi Handa <handa@m17n.org>
5424
5425 * ftfont.c (ftfont_otf_features): Fix indexing
5426 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5427
54282008-10-16 Magnus Henoch <mange@freemail.hu>
5429
5430 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5431 (Fdbus_call_method_asynchronously): Ditto.
5432 This change makes C-h f display the argument list.
5433
54342008-10-16 Chong Yidong <cyd@stupidchicken.com>
5435
5436 * fileio.c (Fexpand_file_name): Doc fix.
5437
5438 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5439 of :foreground and :background equivalent to unspecified (20.x
5440 compatibility).
5441
54422008-10-15 Eli Zaretskii <eliz@gnu.org>
5443
5444 * buffer.c (syms_of_buffer): Doc fix.
5445
54462008-10-14 Kenichi Handa <handa@m17n.org>
5447
5448 * font.c (font_clear_prop): When clearing font width, clear the
5449 average width field too.
5450
54512008-10-12 Andreas Schwab <schwab@suse.de>
5452
5453 * ftfont.c (ftfont_shape_by_flt): Make static.
5454 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5455
5456 * font.c: Don't include <m17n-flt.h>.
5457
54582008-10-10 Eli Zaretskii <eliz@gnu.org>
5459
5460 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5461
54622008-10-09 Eli Zaretskii <eliz@gnu.org>
5463
5464 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5465 away code.
5466
54672008-10-09 Chong Yidong <cyd@stupidchicken.com>
5468
5469 * dispnew.c (update_text_area): Avoid looping due to large glyph
5470 overhangs (bug#1070).
5471
54722008-10-09 Kenichi Handa <handa@m17n.org>
5473
5474 * fontset.c (face_for_char): If face->fontset is negative, just
5475 return ascii_face.
5476
f5385255
SM
5477 * font.c (font_delete_unmatched): Fix previous change.
5478 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5479
54802008-10-09 Martin Rudalics <rudalics@gmx.at>
5481
5482 * frame.c (Fraise_frame): On text-only terminals select frame in
5483 order to make it visible. (Bug#1061)
5484
54852008-10-08 Chong Yidong <cyd@stupidchicken.com>
5486
5487 * fontset.c (fontset_find_font): Check frame validity.
5488
54892008-10-07 Chong Yidong <cyd@stupidchicken.com>
5490
a9b555d3 5491 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5492 (xg_display_close): Allow Emacs to close all displays (bug#985).
5493
54942008-10-06 Andreas Schwab <schwab@suse.de>
5495
f5385255 5496 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5497
54982008-10-06 Chong Yidong <cyd@stupidchicken.com>
5499
f5385255 5500 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5501
a9b555d3 5502 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5503
5504 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5505 during initialization.
5506
55072008-10-04 Eli Zaretskii <eliz@gnu.org>
5508
5509 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5510 whole thing on MSDOS frames as well as on a TTY.
5511
5512 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5513 well as for TTY.
5514 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5515 well as on a TTY.
5516
5517 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5518 as well as for TTY.
5519
5520 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5521
5522 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5523 MSDOS frames as well.
5524
55252008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5526
5527 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5528 correct arguments.
b71ac3dd 5529 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5530
55312008-10-03 Glenn Morris <rgm@gnu.org>
5532
5533 * emacs.c (USAGE1): Add --daemon.
5534
55352008-10-02 Eli Zaretskii <eliz@gnu.org>
5536
5537 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5538 100, so it's in percents as advertised.
5539
55402008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5541
5542 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5543 (ns_output.current_cursor, ns_output.desired_cursor)
5544 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5545 (FRAME_NEW_CURSOR_COLOR): Remove.
5546
5547 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5548 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5549 enumeration (HOLLOW_BOX_CURSOR, etc.).
5550
5551 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5552 (draw_window_cursor): Simplify code.
f5385255
SM
5553 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5554 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5555 updates manually.
a9b555d3
JB
5556 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5557 Use core Emacs cursor types.
aac0c6e3 5558
b8ff72fa 5559 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5560
55612008-10-02 Martin Rudalics <rudalics@gmx.at>
5562
5563 * process.c (Faccept_process_output): Fix doc-string.
5564
55652008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5566
5567 * gmalloc.c (__sbrk): Also define for uClibc.
5568
5569 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5570 for uClibc.
5571
55722008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5573
5574 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5575 styles.
5576 (nsfont_open): Reenable the cache.
5577
55782008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5579
5580 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5581 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5582
55832008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5584
5585 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5586 a suspended terminal.
5587
55882008-09-30 Michael Albinus <michael.albinus@gmx.de>
5589
5590 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5591
55922008-09-30 Eli Zaretskii <eliz@gnu.org>
5593
5594 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5595
55962008-09-30 Chong Yidong <cyd@stupidchicken.com>
5597
5598 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5599 in a continued line coincides with a line beginning.
5600
56012008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5602
5603 * nsfont.m (nsfont_trait_distance): Fix bug.
5604 (nsfont_list): Return a list rather than a vector (syncs with Handa
5605 changes of 2008-05-14).
5606 (nsfont_open): Improve logging.
5607
56082008-09-29 Andreas Schwab <schwab@suse.de>
5609
5610 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5611
56122008-09-28 Martin Rudalics <rudalics@gmx.at>
5613
5614 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5615 name as char-resolve-modifiers.
5616 Reported by: Markus Triska <markus.triska@gmx.at>
5617
56182008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5619
5620 * dispnew.c (init_display): Return earlier when running as a daemon.
5621
56222008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5623
5624 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5625
56262008-09-27 Eli Zaretskii <eliz@gnu.org>
5627
5628 * composite.c (Fcomposition_get_gstring)
5629 (Fcompose_region_internal, Fcompose_string_internal)
5630 (Ffind_composition_internal): Doc fix.
5631 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5632 (syms_of_composite) <auto-composition-function>: Doc fix.
5633 (syms_of_composite) <composition-function-table>: Doc fix.
5634
56352008-09-25 Chong Yidong <cyd@stupidchicken.com>
5636
5637 * search.c (wordify): New argument for lax word-ends.
5638 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5639
56402008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5641
5642 * lisp.h (is_daemon): Declare.
5643 * dispnew.c (init_display): Do not try to initialize the terminal
5644 when running as a daemon.
5645
56462008-09-22 Chong Yidong <cyd@stupidchicken.com>
5647
5648 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5649 x_display_pixel_height.
5650
56512008-09-22 Martin Rudalics <rudalics@gmx.at>
5652
5653 * undo.c (record_point): Don't call Fundo_boundary for first
5654 change. (Bug#731)
5655
56562008-09-22 Juanma Barranquero <lekktu@gmail.com>
5657
5658 * emacs.c (Fdaemonp): Doc fix.
5659
56602008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5661
5662 * emacs.c (main): Place #ifdef in the proper place.
5663
56642008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5665
5666 * emacs.c (standard_args): Add --daemon.
5667 (main): Disconnect from the terminal when --daemon is passed.
5668 (is_daemon): New variable.
5669 (Fdaemonp): New function.
5670 (syms_of_emacs): Defsubr it.
5671
56722008-09-20 Chong Yidong <cyd@stupidchicken.com>
5673
5674 * xdisp.c (get_next_display_element): Handle string display
5675 correctly when checking for the end of a box run.
5676
56772008-09-20 Glenn Morris <rgm@gnu.org>
5678
5679 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5680 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5681 (Frename_file): Avoid copying to trash if a rename involves
5682 a delete. (Bug#964).
5683
56842008-09-20 Eli Zaretskii <eliz@gnu.org>
5685
5686 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5687 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5688 frames as well as termcap frames.
5689 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5690 get_named_tty.
5691
56922008-09-19 Eli Zaretskii <eliz@gnu.org>
5693
5694 * process.c (procfs_system_process_attributes): Fix cmdline in
5695 case /proc/PID/cmdline is empty.
5696
5697 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5698 x_display_pixel_height.
5699
57002008-09-19 Juanma Barranquero <lekktu@gmail.com>
5701
5702 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5703
5704 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5705 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5706
57072008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5708
5709 * dispextern.h (struct it): Move line_wrap away from the middle of
5710 bitfields. Move voffset in struct iterator_stack_entry after the
5711 bitfields. Move tab_width near after another short.
5712
57132008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5714
5715 * frame.h (struct frame): Move alpha from the middle of bitfields.
5716
5717 * window.h (struct window): Move frozen_window_start_p after the
5718 rest of the bitfields to reduce padding.
5719
57202008-09-18 Chong Yidong <cyd@stupidchicken.com>
5721
5722 * xterm.h (x_display_info): Remove `height' and `width' members.
5723
5724 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5725
5726 * w32term.h (w32_display_info): Remove `height', `width',
5727 `height_in', and `width_in' members.
5728
b8ff72fa
SM
5729 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5730 New functions.
aac0c6e3
MR
5731 (x_calc_absolute_position): Use them.
5732 (x_term_init): Omit removed `height' and `width' members.
5733
b8ff72fa
SM
5734 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5735 New functions.
aac0c6e3
MR
5736 (w32_read_socket, x_calc_absolute_position): Use them.
5737 (w32_initialize_display_info, w32_term_init): Omit removed members
5738 of w32_display_info.
5739
b8ff72fa
SM
5740 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5741 New functions.
5742 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 5743
b8ff72fa
SM
5744 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5745 New functions.
aac0c6e3
MR
5746 (x_calc_absolute_position): Use them.
5747 (x_term_init): Omit removed `height' and `width' members.
5748
5749 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
5750 (compute_tip_xy):
5751 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
5752 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5753 x_display_pixel_width.
5754
57552008-09-18 Kenichi Handa <handa@m17n.org>
5756
5757 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5758 (composition_compute_stop_pos): Fix handling of static composition.
5759 (Fcomposition_get_gstring): Check FROM and TO at first.
5760
57612008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5762
46e722a9 5763 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
5764 mixup (YAILOM).
5765
57662008-09-17 Chong Yidong <cyd@stupidchicken.com>
5767
5768 * indent.c (Fvertical_motion): Use position reported by iterator
5769 instead of PT for determining screen motion (bug#943).
5770
57712008-09-17 Romain Francoise <romain@orebokech.com>
5772
5773 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5774
57752008-09-17 Kenichi Handa <handa@m17n.org>
5776
5777 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5778
5779 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5780 if necessary.
5781
57822008-09-16 Kenichi Handa <handa@m17n.org>
5783
5784 * coding.c (make_conversion_work_buffer): Avoid calling
5785 Fget_buffer_create if it is not necessary.
5786
57872008-09-15 Martin Rudalics <rudalics@gmx.at>
5788
5789 * window.c (Fselect_window): Don't update window_select_count and
5790 use_time when norecord is not nil.
5791
57922008-09-14 Kenichi Handa <handa@m17n.org>
5793
5794 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5795 specpdl_ptr.
5796
57972008-09-12 Kenichi Handa <handa@m17n.org>
5798
5799 * indent.c (scan_for_column): Don't handle automatic composition
5800 if the current buffer is not associated with a window.
5801
5802 * composite.c (composition_reseat_it): If the current buffer is
5803 not associated with a window, ignore the automatic composition.
5804 (find_automatic_composition): Likewise.
5805
58062008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5807
5808 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5809 (Fgpm_mouse_stop): Use it.
5810 * termhooks.h (close_gpm): Declare.
5811 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5812 connection if Gpm_GetEvent fails.
5813
5814 * window.c (set_window_buffer): Always preserve current-buffer.
5815
58162008-09-12 Glenn Morris <rgm@gnu.org>
5817
5818 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5819
58202008-09-11 Glenn Morris <rgm@gnu.org>
5821
5822 * charset.c (charset-map-path): Doc fix.
5823
58242008-09-10 Kenichi Handa <handa@m17n.org>
5825
5826 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5827
5828 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5829 compose a grapheme cluster with the preceding base glyph.
5830
5831 * composite.c (composition_compute_stop_pos): Fix previous change.
5832 Reset cmp_it->id to -1 at first.
5833
58342008-09-10 Glenn Morris <rgm@gnu.org>
5835
5836 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5837
58382008-09-09 Chong Yidong <cyd@stupidchicken.com>
5839
5840 * keyboard.c (read_key_sequence): Reapply translation maps when
5841 switching keyboards.
5842
58432008-09-09 Kenichi Handa <handa@m17n.org>
5844
5845 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
5846 characters.
5847
5848 * composite.c (FORWARD_CHAR): Fix calculation
5849 of (POSITION).pos_byte.
5850 (composition_compute_stop_pos): Limit the search of composition to
5851 at most 500 characters ahead. If we reach the limit or find a
5852 newline, set cmp_it->ch to -2 and return 0.
5853 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
5854
58552008-09-08 Kenichi Handa <handa@m17n.org>
5856
5857 * indent.c (Fvertical_motion): Be sure to set
5858 it_overshoot_expected if it.cmp_it.id is non-negative.
5859
58602008-09-07 Andreas Schwab <schwab@suse.de>
5861
5862 * callproc.c (Fcall_process): Don't hold references to string data
5863 across garbage collection. Move initialisation of new_argv down
5864 to avoid compiler bug.
5865
58662008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5867
5868 * process.c (Fsystem_process_attributes): Doc fix.
5869
58702008-09-07 Chong Yidong <cyd@stupidchicken.com>
5871
5872 * callproc.c (Fcall_process): Canonicalize current directory name.
5873
5874 * xdisp.c (move_it_to): When moving by vpos, ensure that the
5875 iterator advances to the next line if the current line ends in a
5876 continued tab.
5877
58782008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
5879
5880 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
5881 member to point to cmp_from.
5882
5883 * xdisp.c: Doc fix for references to gidx data member.
5884
58852008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
5886
5887 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
5888
58892008-09-07 Kenichi Handa <handa@m17n.org>
5890
5891 * composite.c (FORWARD_CHAR): Check STOP after
5892 incrementing (POSITION).pos.
5893
58942008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5895
5896 * process.c (Fsystem_process_attributes): Doc fix.
5897
58982008-09-06 Chong Yidong <cyd@stupidchicken.com>
5899
5900 * keyboard.c (Ftop_level): Doc fix.
5901
59022008-09-06 Eli Zaretskii <eliz@gnu.org>
5903
5904 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
5905 minibuffer, don't let lower part of menu invade the echo area.
5906
5907 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
5908 "char *q" to access menu text and advance through it. Revert the
5909 change that displayed ">" instead of ASCII character 0x10.
5910
59112008-09-05 Eli Zaretskii <eliz@gnu.org>
5912
5913 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
5914 toggle boxes and radio buttons on MS-DOS as well.
5915
59162008-09-05 Kenichi Handa <handa@m17n.org>
5917
5918 * composite.c (autocmp_chars): Check lookback count.
5919 (composition_compute_stop_pos): Set cmp_it->lookback.
5920 (composition_reseat_it): Check lookback count.
5921 (struct position_record): New struct.
5922 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
5923 (find_automatic_composition): New function.
5924 (composition_adjust_point): Use find_automatic_composition.
5925
5926 * dispextern.h (struct composition_it): New member lookback.
5927
59282008-09-02 Chong Yidong <cyd@stupidchicken.com>
5929
5930 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
5931 if moving by a single line.
5932
59332008-09-02 Andreas Schwab <schwab@suse.de>
5934
5935 * xterm.c (x_delete_display): Fix merge error.
5936
5937 * fileio.c (Fexpand_file_name): Remove unused variables.
5938
59392008-09-02 Eli Zaretskii <eliz@gnu.org>
5940
5941 * fileio.c (Fexpand_file_name): Copy argument `name' into local
5942 storage on all platforms, not just on DOS_NT.
5943
59442008-09-02 Jason Rumney <jasonr@gnu.org>
5945
b8ff72fa
SM
5946 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
5947 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
5948
59492008-09-01 Chong Yidong <cyd@stupidchicken.com>
5950
5951 * xfaces.c (Finternal_set_alternative_font_family_alist)
5952 (Finternal_set_alternative_font_registry_alist): Properly copy
5953 entire alist structure.
5954
59552008-09-01 Kenichi Handa <handa@m17n.org>
5956
d66c0241 5957 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 5958 representative chars of the script is a vector.
d66c0241
JB
5959 (ftfont_list): Handle the case where the representative chars of
5960 the script is a vector.
aac0c6e3
MR
5961
5962 * character.c (syms_of_character): Docstring of
5963 script-representative-chars fixed.
5964
59652008-08-31 Eli Zaretskii <eliz@gnu.org>
5966
5967 * msdos.c (BUILD_CHAR_GLYPH): New macro.
5968 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
5969 the menu. Allocate larger buffer for `text', to account for
5970 possible ^C characters.
5971
59722008-08-31 Martin Rudalics <rudalics@gmx.at>
5973
5974 * xdisp.c (prepare_menu_bars): Don't call
5975 Vwindow_size_change_functions with arg Qt.
5976
59772008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
5978
5979 * font.h (font_range):
5980 * fileio.c (report_file_error):
46e722a9
SM
5981 * composite.c (composition_update_it): Yet another int/Lisp_Object
5982 mixup (YAILOM).
aac0c6e3
MR
5983
59842008-08-30 Glenn Morris <rgm@gnu.org>
5985
5986 * data.c (Fmake_variable_frame_local): Doc fix.
5987
5988 * frame.c (Fmodify_frame_parameters): Doc fix.
5989
59902008-08-30 Eli Zaretskii <eliz@gnu.org>
5991
5992 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
5993 needed by GetTokenInformation.
5994 (w32_system_process_attributes): Check return values of all system
5995 APIs.
5996
5997 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
5998 only when the state changes.
5999 (IT_update_begin, IT_update_end): Add termscript trace.
6000
6001 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
6002 clipboard is unavailable. Set dst to NULL if it doesn't point to
6003 malloc'ed data.
6004 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
6005 passing random values to xfree.
6006
6007 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 6008 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
6009
60102008-08-29 Jason Rumney <jasonr@gnu.org>
6011
6012 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
6013
60142008-08-29 Eli Zaretskii <eliz@gnu.org>
6015
6016 * composite.c (fill_gstring_body): Avoid compiler warnings.
6017
6018 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
6019 LGLYPH_SET_CODE to avoid compiler warnings.
6020
2ae37cf0 6021 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
6022
6023 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
6024
6025 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
6026 LGLYPH_SET_CODE.
6027
60282008-08-29 Kenichi Handa <handa@m17n.org>
6029
6030 * fileio.c (report_file_error): Don't downcase the first character
6031 of errstring if it is still unibyte.
6032
60332008-08-29 Kenichi Handa <handa@m17n.org>
6034
6035 These changes are to re-implement the automatic composition so
6036 that it doesn't use text properties.
6037
6038 * Makefile.in (ftfont.o): Depend on composite.h.
6039 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
6040
6041 * character.h (Vunicode_category_table): Extern it.
6042
6043 * character.c (Vunicode_category_table): New variable.
6044 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
6045
6046 * chartab.c (optimize_sub_char_table): Perform more greedy
6047 optimization.
6048
b8ff72fa
SM
6049 * composite.h (enum composition_method):
6050 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
6051 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
6052 (Vcomposition_function_table): Extern it.
6053 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
6054 (composition_gstring_put_cache, composition_gstring_from_id)
6055 (composition_gstring_p, composition_gstring_width)
6056 (composition_compute_stop_pos, composition_reseat_it)
6057 (composition_update_it, composition_adjust_point): Extern them.
6058 (Fcomposition_get_gstring): EXFUN it.
6059
d66c0241 6060 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
6061 (Vcomposition_function_table)
6062 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
6063 (gstring_hash_table, gstring_work, gstring_work_headers):
6064 New variables.
aac0c6e3
MR
6065 (gstring_lookup_cache, composition_gstring_put_cache)
6066 (composition_gstring_from_id, composition_gstring_p)
6067 (composition_gstring_width, fill_gstring_header)
6068 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
6069 (composition_reseat_it, composition_update_it)
b8ff72fa 6070 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
6071 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
6072 and gstring_work_headers. DEFVAR_LISP composition-function-table.
6073 Defsubr compostion_get_gstring.
6074
6075 * dispextern.h (struct glyph): New union u.cmp. Delete the member
6076 cmp_id.
6077 (struct glyph_string): Delete the member gidx. New members
6078 cmp_id, cmp_from, and cmp_to.
6079 (enum it_method): Delete GET_FROM_COMPOSITION.
6080 (struct composition_it): New struct.
6081 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
6082 Delete c, len, cmp_id, cmp_len in u.comp.
6083
6084 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 6085 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 6086 (enum lglyph_indices): Likewise.
b8ff72fa 6087 (font_range): Adjust extern.
aac0c6e3
MR
6088 (font_fill_lglyph_metrics): Extern it.
6089
6090 * font.c (QCf): New variable.
6091 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6092 (font_prepare_composition): Delete this function.
6093 (font_range): Type and arguments changed.
6094 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
6095 (font_fill_lglyph_metrics): New function.
b8ff72fa 6096 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 6097 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
6098 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
6099 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
6100
6101 * fontset.h (font_for_char): Extern it.
6102
6103 * fontset.c (font_for_char): New function.
6104
6105 * ftfont.c: Include composite.h.
6106 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 6107 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
6108
6109 * indent.c: Include composite.h and dispextern.h.
6110 (check_composition): Delete this function.
6111 (scan_for_column): Handle composition by
6112 composition_compute_stop_pos, composition_reseat_it, and
6113 composition_update_it.
6114 (compute_motion): Likewise.
6115 (Fvertical_motion): Fix checking of composition.
6116
6117 * keyboard.c (adjust_point_for_property): Check composition by
6118 composition_adjust_point.
6119
b8ff72fa 6120 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
6121 struct glyph_string.
6122
b8ff72fa
SM
6123 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
6124 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
6125 struct glyph.
6126 (produce_composite_glyph): Likewise.
6127
b8ff72fa
SM
6128 * w32term.c (x_draw_composite_glyph_string_foreground):
6129 Adjust for the change of struct glyph_string.
aac0c6e3
MR
6130 (x_draw_glyph_string): Likewise.
6131
6132 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
6133 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6134
6135 * xdisp.c: Include font.h.
6136 (it_props): Delete the entry for Qauto_composed.
6137 (init_iterator): Initialize it->cmp_it.id to -1.
6138 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 6139 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
6140 (handle_auto_composed_prop): Delete it.
6141 (handle_composition_prop): Handle only static composition.
6142 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
6143 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 6144 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
6145 (pop_it): Likewise.
6146 (get_next_element): Delete next_element_from_composition.
6147 (CHAR_COMPOSED_P): New macro.
6148 (get_next_display_element): For automatic composition, get a face
6149 from the font in the glyph-string.
6150 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 6151 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
6152 (next_element_from_string): Check if the character at the current
6153 position is composed by CHAR_COMPOSED_P.
6154 (next_element_from_buffer): Likewise.
d66c0241
JB
6155 (next_element_from_composition): Adjust for the change of struct it.
6156 Update it->cmp_it.
b8ff72fa
SM
6157 (dump_glyph): Adjust for the change of struct glyph.
6158 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
6159 it and struct glyph. Don't handle automatic composition here.
6160 (fill_gstring_glyph_string): New function.
6161 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 6162 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
6163 (BUILD_GSTRING_GLYPH_STRING): New macro.
6164 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
6165 automatic composition.
b8ff72fa 6166 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 6167 struct glyph.
b8ff72fa 6168 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 6169
b8ff72fa 6170 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
6171 the change of struct glyph_string.
6172 (x_draw_glyph_string): Likewise.
6173
61742008-08-29 Glenn Morris <rgm@gnu.org>
6175
6176 * buffer.c (word-wrap): Doc fix.
6177 * xdisp.c (truncate-partial-width-windows): Doc fix.
6178 Increase default to 50.
6179
61802008-08-29 Chong Yidong <cyd@stupidchicken.com>
6181
6182 * xdisp.c (update_tool_bar_unwind): New function.
6183 (update_tool_bar): Temporarily set selected frame before building
6184 tool-bar items.
6185
61862008-08-28 Michael Albinus <michael.albinus@gmx.de>
6187
6188 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
6189 snprintf, respectively.
6190 (xd_append_arg): Convert strings with Fstring_make_unibyte.
6191
61922008-08-28 Chong Yidong <cyd@stupidchicken.com>
6193
6194 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
6195 LDFLAGS to GNUstep CC invocation.
6196
61972008-08-27 Chong Yidong <cyd@stupidchicken.com>
6198
6199 * indent.c (Fvertical_motion): Revert last change. Handle the
6200 general case where we are moving forward, and PT spans multiple
6201 screen lines.
6202
6203 * eval.c (find_handler_clause): Temporarily increase
6204 max-lisp-eval-depth while printing the backtrace buffer, to
6205 guarantee that help-mode code can run.
6206
62072008-08-27 Eli Zaretskii <eliz@gnu.org>
6208
6209 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
6210 colors under -rv.
6211 (IT_set_frame_parameters): Don't swap foreground and background
6212 colors if `(reverse . t)' is present in the frame properties.
6213 (internal_terminal_init): Call init_frame_faces only for the
6214 initial frame.
6215
62162008-08-27 Andreas Schwab <schwab@suse.de>
6217
6218 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
6219
62202008-08-27 Andreas Schwab <schwab@suse.de>
6221
6222 * search.c (search_buffer): Set char_base to zero only at the end.
6223
62242008-08-27 Kenichi Handa <handa@m17n.org>
6225
b8ff72fa 6226 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
6227
62282008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
6229
6230 * xterm.c (x_term_init): Temporarily hide the partially
6231 initialized terminal while calling vendor-specific-keysyms.
6232
62332008-08-26 Eli Zaretskii <eliz@gnu.org>
6234
6235 * msdos.c (internal_terminal_init): Most initializations done only
6236 once, especially initial_screen_colors[] and termscript open.
6237
62382008-08-26 Chong Yidong <cyd@stupidchicken.com>
6239
6240 * eval.c (Fcondition_case): Doc fix.
6241
6242 * widgetprv.h (EmacsFramePart): Change font member to the new font
6243 struct.
6244
6245 * widget.c: Include character.h and font.h for XSETFONT.
6246 (setup_frame_gcs): Compute X font id from font struct, just once.
6247
62482008-08-26 Eli Zaretskii <eliz@gnu.org>
6249
6250 * term.c (get_named_tty): Fix last change.
6251
62522008-08-26 Chong Yidong <cyd@stupidchicken.com>
6253
6254 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 6255 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
6256
62572008-08-25 Eli Zaretskii <eliz@gnu.org>
6258
6259 * frame.c (do_switch_frame): Mark previously displayed frame as
6260 obscured for FRAME_MSDOS_P frames as well.
6261
62622008-08-24 Eli Zaretskii <eliz@gnu.org>
6263
6264 * frame.c (make_terminal_frame): Initialize f->terminal,
6265 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6266 Set the top frame to newly created frame.
6267 (Fmake_terminal_frame): Reuse the_only_display_info.
6268
6269 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6270 estimating available memory.
6271
b97439ce 62722008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
6273
6274 * nsterm.m (ns_draw_window_cursor): Don't call
6275 NSDisableScreenUpdates and NSEnableScreenUpdates on
6276 non-NS_IMPL_COCOA systems.
6277
62782008-08-23 Andreas Schwab <schwab@suse.de>
6279
6280 * process.c (procfs_system_process_attributes): Fix use of
6281 uninitialized variables.
6282
62832008-08-23 Eli Zaretskii <eliz@gnu.org>
6284
6285 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6286
6287 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6288 calling tty-set-up-initial-frame-faces.
6289
b8ff72fa
SM
6290 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6291 Allow MSDOS frames along with X frames.
aac0c6e3
MR
6292
6293 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6294 addition to output_termcap.
6295
6296 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6297
6298 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6299 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6300 highlight.
6301
6302 * process.c [!subprocesses]: Define QCname.
6303 (syms_of_process): Intern and staticpro it.
6304
6305 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
6306 Adjust for changes in encoding/decoding routines.
6307 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
6308 encode_coding and decode_coding.
6309
b8ff72fa 6310 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
6311
6312 * dosfns.c: Include frame.h before termhooks.h.
6313 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6314 variable termscript.
6315
6316 * s/msdos.h (USER_FULL_NAME): Define.
6317 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6318
6319 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6320 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6321 pw->pw_gecos.
6322
6323 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6324 SELECTED_FRAME as additional (1st) argument.
6325 (tty_read_avail_input): Handle output_msdos_raw in
6326 addition to output_termcap.
6327
6328 * msdos.c: Include frame.h before termhooks.h.
6329 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6330 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6331 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6332 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6333 (IT_set_terminal_modes, IT_reset_terminal_modes)
6334 (IT_set_frame_parameters): Use tty->termscript instead of a global
6335 variable termscript.
6336 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6337 global variable terminal_coding. Don't refer to
6338 Vnonascii_translation_table.
6339 (internal_terminal_init): Set Vwindow_system in current_kboard.
6340 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6341 Announce date and time of session start, if termscript is open.
6342 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
6343 term.c:init_tty). Open termscript only of not already open.
6344 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
6345 here instead of dos_ttraw. Don't initialize display if this is an
6346 initial tty. Don't set FRAME_FONT.
6347 (Vwindow_system_version): Bump to 23.
6348 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6349 is available, set up mouse_position_hook.
6350 (dos_ttraw, IT_set_terminal_modes): If called with initial
6351 terminal, do nothing.
6352 (IT_set_frame_parameters): Handle the Qtty_type frame
6353 parameter by calling internal_terminal_init.
6354 (dos_set_window_size, show_mouse_face)
6355 (clear_mouse_face, IT_note_mode_line_highlight)
6356 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6357 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6358 (initialize_msdos_display): New function.
6359 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6360 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6361 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6362 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 6363 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
6364 (request_sigio, unrequest_sigio): Don't define, now defined on
6365 sysdep.c.
6366 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6367
6368 * term.c [MSDOS]: Include msdos.h.
6369 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6370 conditional to DOS_NT. Allow only one call to this function in a
6371 session. Don't allocate a new struct tty_display_info; instead,
6372 reuse the_only_display_info. Call get_tty_size to get screen
6373 dimensions. Call init_baud_rate to set bad_rate.
6374 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6375 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 6376 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
6377 (get_tty_terminal, get_named_tty, Ftty_type)
6378 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6379 output_termcap.
b8ff72fa
SM
6380 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6381 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 6382 only when subprocesses are supported.
aac0c6e3
MR
6383
6384 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6385 f->output_data.x.
6386 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6387 terminal devices.
6388
5582fbc7 6389 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
6390 x_output.
6391 (FRAME_FONT): Use output_data.tty.
6392 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
6393 (struct x_display_info): Rename from display_info. Update all users in
6394 msdos.c.
aac0c6e3 6395 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 6396 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
6397 (dos_ttraw): Update prototype.
6398
6399 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6400 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6401
64022008-08-23 Jason Rumney <jasonr@gnu.org>
6403
6404 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6405 (fn_TIFFSetDirectory): New library function used.
6406 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6407 (tiff_load): Use :index to select among multiple images. Set count
6408 property when multiple images exist.
6409 (gif_format): Use :index, not :image.
6410
64112008-08-23 Chong Yidong <cyd@stupidchicken.com>
6412
6413 * xdisp.c (try_scrolling): Check INT_MAX instead of
6414 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6415 to obtain INT_MAX.
6416
64172008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6418
6419 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6420
64212008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6422
6423 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6424 GNUstep library location.
6425
64262008-08-21 Chong Yidong <cyd@stupidchicken.com>
6427
6428 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6429 before using it.
6430
6431 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6432
64332008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6434
6435 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6436 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6437 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6438 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6439 (EmacsApp-cursor_blink_handler): Remove declaration.
6440 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6441 match 01 Feb 2008 changes in xterm.c.
6442 (ns_read_socket): Add cast to avoid warning.
6443 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6444 GNUstep.
6445
64462008-08-20 Chong Yidong <cyd@stupidchicken.com>
6447
6448 * xselect.c (x_get_foreign_selection): Return nil if desired
6449 selection could not be obtained, instead of signalling an error.
6450
64512008-08-20 David Reitter <david.reitter@gmail.com>
6452
6453 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6454 * nsterm.m: Remove ns-specific code for cursor blinking.
6455 (ns_draw_window_cursor): Clear cursor properly rather than
6456 redrawing the area. Respect width of bar cursors.
6457 These changes enable the use of generic blink-cursor-mode and
6458 generic cursor types in NS and support smooth cursor movements (do
6459 not blink off after command).
6460 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6461 Nextstep, too.
6462
64632008-08-19 Kenichi Handa <handa@m17n.org>
6464
6465 * font.c (Vfont_log_deferred): New variable.
6466 (font_add_log): Check Vfont_log_deferred.
6467 (font_deferred_log): New function.
6468
6469 * font.h (font_deferred_log): Extern it.
6470
6471 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6472 for sorting.
6473 (face_for_char): Use deferred log.
6474
64752008-08-18 Kenichi Handa <handa@m17n.org>
6476
6477 * fontset.c (face_for_char): Add font log.
6478
6479 * font.c (font_add_log): Add the font properties :script, :lang,
6480 and :otf in the log.
6481
64822008-08-17 Chong Yidong <cyd@stupidchicken.com>
6483
6484 * xdisp.c: Remove dead code.
6485 (handle_invisible_prop, next_overlay_string): Defer call to
6486 setup_for_ellipsis.
6487 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6488
64892008-08-15 Chong Yidong <cyd@stupidchicken.com>
6490
6491 * xfaces.c (lookup_derived_face): Properly handle possible zero
6492 return value of get_lface_attributes.
6493 (merge_faces): Don't tell lookup_derived_face to signal an error
6494 if face is not found.
6495
6496 * dired.c (Fdirectory_files): Doc fix.
6497
6498 * process.c (make_process): Initialize kill_without_query struct
6499 member.
6500
65012008-08-15 Eli Zaretskii <eliz@gnu.org>
6502
6503 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6504 Alternative calculation of totphys for Visual Studio 6.
6505
6506 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6507
6508 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6509 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6510 All users changed.
6511 (stat): Only root directory passed to GetDriveType. Allow RAM
6512 disk as well as local fixed disk when w32-get-true-file-attributes
6513 is set to `local'.
6514 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6515 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6516 (w32_cached_id, w32_add_to_cache): New functions.
6517 (get_name_and_id): Look account names in the cache before calling
6518 lookup_account_sid.
6519 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6520 New initialization flags.
6521 (globals_of_w32): Initialize them to zero.
6522 (w32_system_process_attributes): Use w32_cached_id and
6523 w32_add_to_cache.
6524
65252008-08-14 Lawrence Mitchell <wence@gmx.li>
6526
6527 * lread.c (Fread_char, Fread_char_exclusive): If no character
6528 event is read before timeout is reached, return nil, rather than
6529 converting to a number.
6530
65312008-08-14 Chong Yidong <cyd@stupidchicken.com>
6532
6533 * fns.c (use_dialog_box): Doc fix.
6534
6535 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6536 on OS X.
6537
65382008-08-13 Chong Yidong <cyd@stupidchicken.com>
6539
6540 * frame.c (Qns_parse_geometry): New var.
6541 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6542
65432008-08-11 Chong Yidong <cyd@stupidchicken.com>
6544
6545 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6546 space character in calculating tabs.
6547
65482008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6549
6550 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6551
65522008-08-10 Glenn Morris <rgm@gnu.org>
6553
6554 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6555 silence gcc "limited range of data type" warnings in some
6556 make_fixnum_or_float calls.
6557
65582008-08-09 Eli Zaretskii <eliz@gnu.org>
6559
6560 * w32.c (w32_system_process_attributes): If the process does not
6561 exist, return nil.
6562
6563 * w32.c: Include thelp32.h, psapi.h and coding.h.
6564 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6565 declarations.
6566 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6567 (Process32Next_Proc): New typedefs.
6568 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6569 (g_b_init_process32_next, g_b_init_open_thread_token)
6570 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6571 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6572 (g_b_init_get_process_working_set_size)
6573 (g_b_init_global_memory_status_ex): New static variables.
6574 (globals_of_w32): Initialize them.
6575 (create_toolhelp32_snapshot, process32_first, process32_next)
6576 (open_thread_token, impersonate_self, revert_to_self)
6577 (get_process_memory_info, get_process_working_set_size)
6578 (global_memory_status, global_memory_status_ex): New wrapper
6579 functions.
6580 (w32_list_system_processes, w32_system_process_attributes)
6581 (enable_privilege, restore_privilege, ltime, process_times):
6582 New functions.
6583 (convert_time_raw): New function.
6584 (convert_time): Remove conversion of FILETIME into time in 100
6585 nsec units, call convert_time_raw instead.
6586
6587 * process.h (w32_list_system_processes, w32_system_process_attributes):
6588 Add prototypes.
6589 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6590 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6591 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6592 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6593
6594 * process.c (Fsystem_process_attributes): Doc fix.
6595
65962008-08-08 Chong Yidong <cyd@stupidchicken.com>
6597
6598 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6599 a continued multi-char glyph; if so, advance to the actual glyph.
6600
66012008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6602
6603 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6604
6605 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6606 (.m.o): Use it.
6607 * config.in: Regenerate.
6608
66092008-08-07 Chong Yidong <cyd@stupidchicken.com>
6610
6611 * xdisp.c (redisplay_window): Revert last change.
6612 (try_window): Check bottom scroll margin too.
6613
66142008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6615
6616 * config.in: Regenerate.
6617
6618 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6619 -list-load-path-shadows'.
6620 (nsgui.h): Reduce number of things depending on it.
6621
66222008-08-06 Chong Yidong <cyd@stupidchicken.com>
6623
6624 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6625 instead of window-end which does the wrong thing at eob.
6626 (try_cursor_movement): Minor optimization.
6627 (redisplay_window): If scroll margin is defined, don't assume
6628 window doesn't need scrolling.
6629
66302008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6631
6632 * config.in: Regenerate.
6633
6634 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6635 (mostlyclean): Don't delete *.d under NS.
6636
6637 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6638
66392008-08-06 Kenichi Handa <handa@m17n.org>
6640
6641 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6642
66432008-08-06 Andreas Schwab <schwab@suse.de>
6644
6645 * config.in: Regenerate.
6646
66472008-08-05 Chong Yidong <cyd@stupidchicken.com>
6648
6649 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6650 forcing a window start.
6651
6652 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6653 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6654
66552008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6656
6657 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6658 argument.
6659
66602008-08-05 Juanma Barranquero <lekktu@gmail.com>
6661
6662 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6663 <scroll-down-aggressively, before-change-functions>:
6664 <after-change-functions>: Reflow docstrings.
6665
66662008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6667 Ken Raeburn <raeburn@gnu.org>
6668
6669 Dock menu customization, based on a patch by Ken Raeburn, plus some
6670 other fixes.
6671 * nsmenu.m (dockMenu): New variable.
6672 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6673
6674 * nsterm.h (dockMenu): Declare.
6675
6676 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6677 (ns_term_init): Initialize dockMenu.
6678 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6679 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6680 left.
6681
6682 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6683
66842008-08-04 Chong Yidong <cyd@stupidchicken.com>
6685
6686 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6687
6688 * config.in: Regenerate.
6689
66902008-08-04 Seiji Zenitani <zenitani@mac.com>
6691
6692 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6693
66942008-08-04 Chong Yidong <cyd@stupidchicken.com>
6695
6696 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6697
66982008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6699
6700 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6701
6702 * keyboard.h: Comment an #endif.
6703
6704 * lisp.h (have_menus_p): Adjust comment.
6705
6706 * menu.c (find_and_return_menu_selection): Fix comparison with
6707 client_data.
6708
6709 * nsmenu.m (popup_activated_flag): New variable.
6710 (popup_activated): New function.
6711 (menu-or-popup-active-p): New exported lisp definition.
6712 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6713 when popup done.
6714 (ns_popup_dialog): Set popup_activated_flag.
6715
6716 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6717 version for GNUstep (handled by conditional typedef in nsterm.m).
6718 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6719 in rgb.txt).
6720
6721 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6722
6723 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6724
6725 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6726
6727 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6728 shortcircuit if popup_activated like GTK and X toolkit.
6729
6730 * m/inter386.h: Change DARWIN to DARWIN_OS.
6731
6732 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6733 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6734 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6735 comment on NO_SOCK_SIGIO.
6736
67372008-08-03 Chong Yidong <cyd@stupidchicken.com>
6738
6739 * nsterm.m (windowDidResize): Remove stopModal call.
6740
67412008-08-03 Andreas Schwab <schwab@suse.de>
6742
6743 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6744 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6745
67462008-08-02 Chong Yidong <cyd@stupidchicken.com>
6747
6748 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6749 Don't use uninitialized pointer variable when using getrlimit.
6750
67512008-08-02 Jason Rumney <jasonr@gnu.org>
6752
6753 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6754
67552008-08-02 Eli Zaretskii <eliz@gnu.org>
6756
6757 * alloc.c (NSTATICS): Bump to 0x640.
6758
6759 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6760
6761 * lisp.h: Add prototype for directory_files_internal.
6762
6763 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6764 New functions.
6765 (syms_of_process): Defsubr them. Add initializations for various
6766 Q* symbols used in procfs_system_process_attributes.
6767 (procfs_list_system_processes, procfs_system_process_attributes)
6768 [HAVE_PROCFS]: New functions.
6769 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6770 (procfs_get_total_memory): New functions.
6771
67722008-08-01 Juanma Barranquero <lekktu@gmail.com>
6773
6774 * xfaces.c (Fx_load_color_file): Fix previous change;
6775 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6776
67772008-08-01 Michael Albinus <michael.albinus@gmx.de>
6778
6779 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6780
67812008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6782
6783 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6784
67852008-08-01 Chong Yidong <cyd@stupidchicken.com>
6786
6787 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6788
6789 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6790 define NSApplicationDelegateReplySuccess.
6791 (EmacsView -converstationIdentifier): Use long instead of
6792 NSInteger for GNUstep, since it doesn't have NSInteger.
6793
6794 * xmenu.c: Revert last change.
6795
6796 * keyboard.h: Fix last change.
6797
67982008-08-01 Juanma Barranquero <lekktu@gmail.com>
6799
6800 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6801 on Windows.
6802
68032008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6804
6805 Warning clearing and clean-up in NS port.
6806 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6807 Add prototypes.
6808 * nsgui.h (FACE_DEFAULT): Remove, unused.
6809 (XGCValues): Change colors to unsigned long.
6810 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6811 nsterm.m.
6812 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6813 (ns_list_fonts): Remove, unused.
6814 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6815 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6816 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6817 (nsfont_draw): Compare face colors to 0, not nil.
6818 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6819 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6820 (-addSubmenuWithTitle:): Use NSMenuItem class.
6821 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6822 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6823 (ns_clip_to_row): Make gc arg a BOOL.
6824 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6825 ns_clip_to_row() call.
6826 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6827 used). Cast FRAME_FONT assignments.
6828 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6829 (ns_string_to_lispmod): Change arg to const char.
6830 (ns_term_init): Use NSMenuItem class.
6831 (EmacsApp -openFile:): Move to different section of file.
6832 (EmacsApp -application:openFiles:): Don't return a value, call
6833 -replyToOpenOrPrint:.
6834 (EmacsView -keyDown:): Fix up cast.
6835 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6836 (EmacsView -menuDown:): Cast tag in call to
6837 find_and_call_menu_selection().
6838 (ns_list_fonts): Remove, unused.
6839 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
6840 (ns_fontname_to_xlfd): Make static.
6841 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
6842 Remove prototypes (now in keyboard.h).
6843 (next_menubar_widget_id): Remove, unused.
6844 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
6845 Remove prototypes (now in keyboard.h).
6846 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
6847
68482008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
6849
6850 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
6851 (floatfns.o): Depend on syssignal.h.
6852 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
6853
6854 * systty.h: Fix previous change that removed BSD_TERMIOS.
6855 Add comments to #ifdefs.
6856
68572008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6858
6859 * w32fns.c (w32-load-color-file): Remove.
6860 (x-open-connection): Use renamed Fx_load_color_file.
6861 * xfaces.c (x-load-color-file): Add.
6862 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
6863 Emacs.clr.
6864 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
6865
68662008-07-31 Michael Albinus <michael.albinus@gmx.de>
6867
6868 * dbusbind.c (Fdbus_call_method_asynchronously)
6869 (Fdbus_method_error_internal): New defuns.
6870 (xd_read_message): Handle also reply messages.
6871 (Vdbus_registered_functions_table): Extend docstring.
6872
68732008-07-31 Juanma Barranquero <lekktu@gmail.com>
6874
6875 * keyboard.c (gobble_input): Fix previous change.
6876
68772008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6878
6879 * bitmaps/README:
6880 * xfns.c:
6881 * termcap.c:
6882 * term.c:
6883 * syswait.h:
6884 * systty.h:
6885 * systime.h:
6886 * syssignal.h:
6887 * sysdep.c:
6888 * process.h:
6889 * process.c:
6890 * print.c:
6891 * ndir.h:
6892 * lread.c:
6893 * keyboard.c:
6894 * getpagesize.h:
6895 * floatfns.c:
6896 * fileio.c:
6897 * emacs.c:
6898 * doc.c:
6899 * dispnew.c:
6900 * dired.c:
6901 * data.c:
6902 * callproc.c:
6903 * buffer.c:
6904 * README:
6905 * Makefile.in:
6906 * s/template.h:
6907 * s/msdos.h:
6908 * m/vax.h: Remove VMS support.
6909 * s/vms.h:
6910 * vlimit.h:
6911 * uaf.h:
6912 * temacs.opt:
6913 * param.h:
6914 * ioctl.h: Remove file.
6915
69162008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6917
6918 * s/ms-w32.h (MULTI_KBOARD): Remove.
6919 * xterm.c:
6920 * xselect.c:
6921 * xfns.c:
6922 * window.c:
6923 * w32term.c:
6924 * w32fns.c:
6925 * terminal.c:
6926 * termhooks.h:
6927 * term.c:
6928 * sysdep.c:
6929 * keyboard.h:
6930 * keyboard.c:
6931 * frame.h:
6932 * frame.c:
6933 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
6934 * config.in: Regenerate.
6935
69362008-07-30 Jason Rumney <jasonr@gnu.org>
6937
6938 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
6939
6940 * w32font.c (w32font_encode_char): Leave as unicode if in range.
6941 (w32font_open_internal): Get unicode version of textmetrics.
6942 Don't enable or disable glyph indices here.
6943 (w32font_open): Disable use of glyph indices.
6944
6945 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
6946
69472008-07-30 Chong Yidong <cyd@stupidchicken.com>
6948
6949 * minibuf.c (Vread_buffer_function): Doc fix.
6950
69512008-07-30 John Paul Wallington <jpw@pobox.com>
6952
6953 * minibuf.c (read_buffer_completion_ignore_case): New var.
6954 (Fread_buffer): Use it.
6955
69562008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
6957
6958 * systty.h (sensemode): Remove empty #if. Remove reference to
6959 BSD_TERMIOS, unused.
6960
6961 * sysdep.c: Remove reference to DGUX.
6962 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
6963
6964 * config.in: Regenerate.
6965
69662008-07-30 Jason Rumney <jasonr@gnu.org>
6967
6968 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
6969
69702008-07-29 Jason Rumney <jasonr@gnu.org>
6971
6972 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
6973 is populated.
6974 (uniscribe_encode_char): Always use uniscribe.
6975 Avoid using context if cache is populated.
6976
69772008-07-29 Jan Djärv <jan.h.d@swipnet.se>
6978
6979 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
6980 open menu.
6981
6982 * gtkutil.c (menu_nav_ended): Remove.
6983 (create_menus): Remove signal connect for menu_nav_ended.
6984
69852008-07-28 Chong Yidong <cyd@stupidchicken.com>
6986
6987 * xdisp.c (redisplay_window): Check return value of
6988 compute_window_start_on_continuation_line before forcing a window
6989 start.
6990
69912008-07-28 Jason Rumney <jasonr@gnu.org>
6992
6993 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
6994
6995 * w32term.c (w32_enable_unicode_output, cleartype_active):
6996 Remove obsolete display options.
6997 (x_draw_glyph_string_background): Don't use old cleartype_active
6998 workaround.
6999 (w32_initialize): Remove cleartype_active initialization.
7000 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
7001
70022008-07-28 Andreas Schwab <schwab@suse.de>
7003
7004 * lisp.h (init_weak_hash_tables, syms_of_font)
7005 (xd_read_queued_messages, syms_of_dbusbind): Declare.
7006 (remove_hash_entry): Don't declare.
7007 * eval.c (maybe_call_debugger): Make static and move before use.
7008 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
7009 * xdisp.c: Include "gtkutil.h" if USE_GTK.
7010 * xterm.h (x_set_frame_alpha): Declare.
7011
70122008-07-28 Jan Djärv <jan.h.d@swipnet.se>
7013
7014 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
7015 (create_menus): Connect selection-done to menu_nav_ended.
7016
70172008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7018
7019 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
7020 Set Vx_resource_name to a fallback. Replace read of 'buffered'
7021 parameter with read of 'alpha' one.
7022 (Qns_frame_parameter): Remove.
5582fbc7 7023 * nsselect.m (selection-coding-system)
aac0c6e3
MR
7024 (next-selection-coding-system, Vselection_coding_system)
7025 (Vnext_selection_coding_system): Drop.
7026
70272008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7028
7029 * nsfns.m (do-applescript, do_applescript): Rename to
7030 ns-do-applescript, ns_do_applescript, and move within file.
7031
70322008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
7033
7034 Remove support for Mac Carbon.
7035 * mactoolbox.c:
7036 * macterm.h:
7037 * macterm.c:
7038 * macselect.c:
7039 * macmenu.c:
7040 * macgui.h:
7041 * macfns.c:
7042 * mac.c: Remove file.
7043 * s/darwin.h:
7044 * m/intel386.h:
7045 * xfaces.c:
7046 * xdisp.c:
7047 * window.c:
7048 * tparam.c:
7049 * termhooks.h:
7050 * termcap.c:
7051 * term.c:
7052 * syssignal.h:
7053 * sysselect.h:
7054 * sysdep.c:
7055 * process.c:
7056 * lread.c:
7057 * lisp.h:
7058 * keyboard.c:
7059 * image.c:
7060 * fringe.c:
7061 * frame.h:
7062 * frame.c:
7063 * fontset.c:
7064 * font.h:
7065 * font.c:
7066 * fns.c:
7067 * fileio.c:
7068 * emacs.c:
7069 * dispnew.c:
7070 * dispextern.h:
7071 * config.in:
7072 * atimer.c:
2ae37cf0 7073 * Makefile.in: Remove code for Carbon.
aac0c6e3 7074
f0131492 70752008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
7076
7077 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
7078
70792008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7080
7081 * macterm.h (kCGBitmapByteOrder32Host): New define for
7082 non-universal SDKs.
7083
7084 * image.c (mac_create_cg_image_from_image, image_load_image_io)
7085 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7086
7087 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
7088 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7089
70902008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
7091
7092 * w32inevt.c: Include dispextern.h.
7093
70942008-07-26 Andreas Schwab <schwab@suse.de>
7095
7096 * print.c (print_object): Fix off-by-one in last change.
7097
70982008-07-25 Juanma Barranquero <lekktu@gmail.com>
7099
7100 * term.c (syms_of_term): Don't initialize default_orig_pair,
7101 default_set_foreground and default_set_background on Windows.
7102
71032008-07-25 Jason Rumney <jasonr@gnu.org>
7104
7105 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
7106 ScriptItemize. Clean up return value checking. Remove unused
7107 variables.
7108 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
7109 shaping engine.
7110
7111 * w32font.c (w32font_has_char): Handle the case where we can't
7112 determine the script for a character.
7113
71142008-07-25 Chong Yidong <cyd@stupidchicken.com>
7115
7116 * term.c (syms_of_term): Initialize default_orig_pair,
7117 default_set_foreground, and default_set_background.
7118
7119 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
7120 clash (bug#86).
7121 (getloadavg): Callers changed.
7122
7123 * image.c (svg_load_image): Fix last change.
7124 (svg_load_image): Use rsvg_handle_get_dimensions to check that
7125 image size is valid. Use g_object_unref instead of deprecated
7126 rsvg_handle_free to free rsvg handle.
7127 (x_from_xcolors): Don't initialize pixmap (silence compiler).
7128
71292008-07-25 Jason Rumney <jasonr@gnu.org>
7130
7131 * w32font.c (w32font_encode_char): Encode characters outside BMP as
7132 surrogates before looking up glyph index.
7133 (w32font_text_extents): Encode as surrogates if falling back to
7134 functions that need UTF-16 wide chars.
7135
7136 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
7137 BMP as surrogates before looking up glyph index.
7138
71392008-07-25 Chong Yidong <cyd@stupidchicken.com>
7140
7141 * image.c (svg_load_image): Check for failure in return value of
7142 rsvg_handle_get_pixbuf. Free rsvg handle when done.
7143
71442008-07-25 Jason Rumney <jasonr@gnu.org>
7145
7146 * w32font.c (Fx_select_font): Reverse sense of second arg.
7147
71482008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
7149
7150 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
7151 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
7152
7153 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
7154 (PURESIZE): Use it.
7155
71562008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
7157
7158 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
7159 * m/alpha.h (TEXT_END):
7160 * m/ibmrs6000.h (TEXT_END):
7161 * m/macppc.h (TEXT_END):
7162 * s/darwin.h (TEXT_END):
7163 * s/msdos.h (TEXT_END): Remove, unused.
7164 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
7165 * s/cygwin.h: Remove comment.
7166
7167 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
7168 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
7169 * m/intel386.h (DOT_GLOBAL_START):
7170 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
7171 (USG): Remove, file not used on USG platforms.
7172
7173 * Makefile.in (HAVE_X11): Remove empty #else.
7174
71752008-07-24 Andreas Schwab <schwab@suse.de>
7176
7177 * fileio.c (Finsert_file_contents): Properly adjust undo list
7178 after format conversion.
7179
71802008-07-24 Jan Djärv <jan.h.d@swipnet.se>
7181
7182 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
7183 (menu_nav_ended): Remove.
7184 (create_menus): Remove signal connect for menu_nav_ended.
7185 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
7186 create_menus.
7187 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
7188
71892008-07-23 Jason Rumney <jasonr@gnu.org>
7190
7191 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
7192 with opened font.
7193 (w32font_open): Set font type to gdi.
7194
7195 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
7196
71972008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
7198
7199 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
7200 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
7201 defines it.
7202 * unexec.c (ADDR_CORRECT): Define unconditionally.
7203
7204 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
7205
7206 * unexec.c: Remove code depending on !COFF and USG, the file is
7207 not used for such systems.
7208
7209 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
7210 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
7211 (LD_SWITCH_SYSTEM_1): Remove, update users.
7212
7213 * s/darwin.h (DATA_END):
7214 * m/intel386.h (DATA_END):
7215 * m/ibmrs6000.h (DATA_END):
7216 * m/alpha.h (DATA_END): Remove, unused.
7217
7218 * config.in: Regenerate.
7219 * s/ms-w32.h (subprocesses): Define unconditionally.
7220 * s/template.h (subprocesses): Update comment.
7221 * s/vms.h (subprocesses):
7222 * s/usg5-4.h (subprocesses):
7223 * s/hpux10-20.h (subprocesses):
7224 * s/gnu-linux.h (subprocesses):
7225 * s/cygwin.h (subprocesses):
7226 * s/bsd-common.h (subprocesses):
7227 * s/aix4-2.h (subprocesses):
7228 * s/darwin.h (subprocesses): Do not define, defined by default now.
7229
7230 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7231 Remove all references.
7232 (temacs): Add GNUstep specific ld flags.
7233
7234 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7235 similarly to what X does.
7236
72372008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7238
7239 * nsfns.m (x-list-fonts): Remove.
7240 (syms_of_nsfns): Drop the x-list-fonts declaration.
7241 * nsterm.m: Get rid of remaining "//" comments.
7242
72432008-07-22 Chong Yidong <cyd@stupidchicken.com>
7244
7245 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7246
7247 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7248 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7249 (Fns_own_selection_internal, Fx_disown_selection_internal)
7250 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7251
7252 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7253 ... */' style of docstrings. Doc fixes.
7254
72552008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7256
7257 * terminfo.c (UP, BC, PC): Undo previous change.
7258
7259 * nsfns.m: Rename ns prefixed functions/variables to the
7260 corresponding x versions. Update references.
7261
72622008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7263
7264 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7265
72662008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7267
7268 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7269 Remove forwarding functions.
7270 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7271 non-static.
7272 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7273 non-static.
7274 (ns_frame_parm_handlers): Use the new names.
7275 (syms_of_nsfns): Move to the end of file.
7276
7277 * nsterm.m (syms_of_nsterm): Move to the end of file.
7278
7279 * dispnew.c (init_display): Remove code for X10.
7280
72812008-07-22 Jason Rumney <jasonr@gnu.org>
7282
7283 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7284 bare drive.
7285
72862008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7287
7288 * nsterm.m (syms_of_nsterm): Remove debugging println.
7289
72902008-07-22 David Reitter <david.reitter@gmail.com>
7291
7292 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7293 Carbon implementation of the same functionality: execute arbitrary
7294 AppleScript code.
7295
72962008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7297
7298 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7299 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7300 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7301 (Fx_display_mm_height, Fx_display_mm_width)
7302 (Fx_display_backing_store, Fx_display_visual_class)
7303 (Fx_display_save_under, Fx_open_connection)
7304 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7305 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7306 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7307 (Fx_display_pixel_width, Fx_display_pixel_height)
7308 (Fx_display_usable_bounds, Fx_display_planes)
7309 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7310 ... */' style of docstrings.
7311
73122008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7313
7314 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7315 on this platform.
7316 (mips):
7317 * m/iris4d.h (mips): Do not define.
7318 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7319
7320 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7321
7322 * image.c:
7323 * nsfns.m:
7324 * nsselect.m:
7325 * nsterm.h:
7326 * nsterm.m: Rename ns prefixed functions/variables to the
7327 corresponding x versions. Update references.
7328
7329 * m/ibms390x.h (NO_REMAP): Do not undefine.
7330
7331 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7332
73332008-07-21 Chong Yidong <cyd@stupidchicken.com>
7334
7335 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7336 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7337 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7338 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7339 (Fns_display_mm_height, Fns_display_mm_width)
7340 (Fns_display_backing_store, Fns_display_visual_class)
7341 (Fns_display_save_under, Fns_open_connection)
7342 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7343 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7344 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7345 (Fns_display_pixel_width, Fns_display_pixel_height)
7346 (Fns_display_usable_bounds, Fx_display_planes)
7347 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7348
73492008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7350
7351 * print.c (print_object): Check print_depth before searching for
7352 circularities.
7353
73542008-07-21 Michael Albinus <michael.albinus@gmx.de>
7355
7356 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7357 only sprintf.
7358
73592008-07-21 Kenichi Handa <handa@m17n.org>
7360
7361 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7362
73632008-07-20 Andreas Schwab <schwab@suse.de>
7364
7365 * syntax.c (find_start_pos, find_start_value)
7366 (find_start_value_byte, find_start_begv, find_defun_start)
7367 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7368
73692008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7370
7371 * s/sol2-3.h: Insert contents of s/sol2.h.
7372 (LD_SWITCH_SYSTEM): Remove redundant definition.
7373 * s/sol2.h: Remove, unused.
7374
73752008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7376
7377 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7378
73792008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7380
7381 * Makefile.in (ns_appdir): Fix typo in find command.
7382
73832008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7384
7385 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7386
7387 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7388 added not supported anymore.
7389
7390 * s/usg5-4-2.h (LIBS_SYSTEM):
7391 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7392
7393 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7394 * s/lynxos.h (GETPGRP_NO_ARG):
7395 * s/hpux10-20.h (NO_SIOCTL_H):
7396 * s/gnu.h (GETPGRP_NO_ARG):
7397 * s/gnu-linux.h (NO_SIOCTL_H):
7398 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7399 * s/cygwin.h (GETPGRP_NO_ARG):
7400 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7401 (C_DEBUG_SWITCH): Remove duplicate definition.
7402
7403 * m/ibms390.h: Remove boilerplate comments.
7404
7405 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7406
7407 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7408 (wait_reading_process_output): Remove code for SunOS, platform not
7409 supported anymore. Use SOLARIS2 instead of sun.
7410
74112008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7412
7413 * font.c (font_open_by_name): Under NS, default lface height to zero.
7414 (font_open_for_lface): Under NS, set size based on frame fontsize.
7415 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7416 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7417
74182008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7419
7420 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7421 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7422 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7423 YES/NO.
7424 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7425 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7426 * Makefile.in (clean): Clear out build destination dir.
7427
74282008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7429
7430 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7431 xterm, xselect.
7432 * lisp.h: Remove declaration of hash_remove.
7433 * nsgui.h: Remove redefinitions of hash_remove.
7434 * fns.c (hash_remove): Rename to hash_remove_from_table.
7435
74362008-07-19 Seiji Zenitani <zenitani@mac.com>
7437
7438 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7439 strdup() the family UTF8String before modifying it.
7440
74412008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7442
7443 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7444 NS_FACE_BACKGROUND with 0 instead of nil.
7445 * nsfont.m (nsfont_draw): Same.
7446
74472008-07-19 Chong Yidong <cyd@stupidchicken.com>
7448
7449 * nsfns.m (ns_set_background_color): Fix crash.
7450
74512008-07-18 Chong Yidong <cyd@stupidchicken.com>
7452
7453 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7454
74552008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7456
7457 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7458
74592008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7460
7461 * gtkutil.c: Include <config.h> instead of "config.h".
7462
7463 * lisp.h (Foverlay_buffer): Add EXFUN.
7464
7465 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7466 child process to complete child_setup. Undo 2005-09-21 change.
7467
7468 * s/darwin.h: Mention setsid after vfork.
7469
74702008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7471
7472 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7473 Depend on macgui.h.
7474
7475 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7476 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7477
7478 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7479 and f19.
7480 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7481
7482 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7483 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7484 Remove enumerators.
7485
7486 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7487 Check if FACE_FROM_ID returns NULL.
7488
74892008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7490
7491 * w32inevt.c (change_frame_size): Remove extern declaration.
7492 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7493 change_frame_size.
7494
74952008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7496
7497 * getloadavg.c: Revert last change (2008-07-15).
7498
74992008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7500
7501 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7502 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7503 from configure.
7504
75052008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7506
7507 * s/sol2.h:
7508 * s/sol2-4.h: Reorganize conditionals.
7509
7510 * ecrt0.c: Remove code depending on m68000, not used anymore.
7511
7512 * fns.c (hash_remove): Make static.
7513 * lisp.h (hash_remove): Don't prototype.
7514
7515 * m/ibmrs6000.h:
7516 * m/ibms390x.h:
7517 * m/macppc.h: Remove boilerplate comments.
7518
7519 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7520 Solaris, which does not need them.
7521
7522 * m/vax.h: Remove comments about unsupported systems.
7523
7524 * s/darwin.h: Reorganize ifdefs.
7525
75262008-07-17 Andreas Schwab <schwab@suse.de>
7527
7528 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7529
75302008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7531
7532 Use SDATA. Follow coding convention of placing operators at
7533 beginning of next line rather than end of previous line, and placing
7534 spaces around infix operators.
7535
7536 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7537 in case it was defined already.
7538 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7539 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7540 ns_default.
7541 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7542 Lisp_Objects.
7543 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7544 (ns_defined_color, ns_color_to_lisp): Declare.
7545 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7546 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7547 it's accepted even with USE_LISP_UNION_TYPE.
7548 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7549 (update_frame_tool_bar): Remove apparently obsolete tests for
7550 non-integerness of f->tool_bar_lines.
7551 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7552 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7553 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7554 (nsfont_open): Don't confuse NULL for Qnil.
7555 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7556 * menu.h (find_and_call_menu_selection):
7557 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7558 (find_and_return_menu_selection): Always return something.
7559 * frame.h: Include dispextern.h for Display_Info.
7560 (display_x_get_resource): Declare.
7561
75622008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7563
7564 * syntax.c: Remove stdio.h include accidentally introduced in
7565 Emacs.app commit.
7566 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7567 NS_IMPL_COCOA.
7568 * keyboard.c (handle_async_input, input_available_signal): Remove
7569 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7570
75712008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7572
7573 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7574 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7575 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7576 Use SDATA.
7577
7578 * keymap.c: Remove all NS-specific code.
7579 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7580 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7581 where_is_preferred_modifier, return a different value depending on how
7582 preferred is the binding.
7583 (where_is_internal): Adjust accordingly.
7584 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7585 Adjust to new preferred_sequence_p.
7586 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7587 * keyboard.c (parse_solitary_modifier): Not static any more.
7588 * keyboard.h (parse_solitary_modifier): Declare.
7589
75902008-07-16 Andreas Schwab <schwab@suse.de>
7591
7592 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7593 of easymenu.
7594
75952008-07-16 Chong Yidong <cyd@stupidchicken.com>
7596
7597 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7598 that we don't move off the line.
7599
76002008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7601
7602 * keyboard.c (Qsuper): Remove.
7603 (parse_menu_item): Don't call where_is_internal specially for NS.
7604
76052008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7606
7607 * s/gnu-linux.h: Remove boilerplate comments.
7608
7609 * m/alpha.h (__ELF__): Consolidate conditions.
7610
7611 * m/m68k.h (linux): Use GNU_LINUX instead.
7612 Remove boilerplate comments.
7613
7614 * m/intel386.h: Undo refactoring from previous change.
7615 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7616 too, remove dead code.
7617 (linux): Use GNU_LINUX instead.
7618
76192008-07-16 Jason Rumney <jasonr@gnu.org>
7620
7621 * w32gui.h: Repeat 26 June changes lost by last change.
7622
76232008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7624
7625 * systty.h: Remove code for Aix on 386, unsupported platform.
7626
7627 * s/ms-w32.h: Remove boilerplate comments.
7628 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7629
7630 * s/gnu-linux.h (TERM): Remove support.
7631 (HAVE_SYSVIPC): Remove, unused.
7632 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7633 for this system.
7634
7635 * process.c: Remove support for IRIS, unused.
7636 Remove support for TERM, not relevant anymore.
7637
7638 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7639 used with the definition.
7640
7641 * s/aix4-2.h (static): Do not undef.
7642
7643 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7644 only used on Aix.
7645 (HAVE_SYSVIPC): Remove, unused.
7646
7647 * m/hp800.h (CANNOT_DUMP): Do not undef.
7648
7649 * m/alpha.h: Fix comment.
7650
7651 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7652 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7653 used by this configuration.
7654 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7655 * unexec.c: Remove code depending on HPUX and
7656 USG_SHARED_LIBRARIES, not used with this file. Remove code
7657 depending on IRIS, unused. Remove if 0-ed code.
7658
7659 * s/template.h: Remove comments about static.
7660
7661 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7662 Remove if 0-ed code.
7663 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7664 were the same as the default.
7665 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7666 Remove boilerplate comments.
7667 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7668 (HAVE_SYSVIPC): Remove, unused.
7669 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7670
7671 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7672 Remove boilerplate comments.
7673 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7674 Remove boilerplate comments.
7675 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7676 Remove boilerplate comments.
7677 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7678
7679 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7680 USG systems which do not use DATA_SEG_BITS.
7681 Refactor code. Remove boilerplate comments.
7682
7683 * m/ibms390.h:
7684 * m/m68k.h:
7685 * s/bsd-common.h:
7686 * s/cygwin.h:
7687 * s/darwin.h:
7688 * s/freebsd.h:
7689 * s/gnu.h:
7690 * s/msdos.h: Remove boilerplate comments.
7691
7692 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7693 do not use this file.
aac0c6e3
MR
7694 (IRIS_4D): Remove, unused.
7695
7696 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7697 do not use this file.
aac0c6e3
MR
7698 (SIGN_EXTEND_CHAR):
7699 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7700 * unexmips.c: Remove file, unused.
7701
7702 * editfns.c (Fuser_full_name): Replace the only use of
7703 USER_FULL_NAME with its value.
7704 * config.in: Regenerate.
7705
77062008-07-16 David Reitter <david.reitter@gmail.com>
7707
7708 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7709 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7710
77112008-07-16 Glenn Morris <rgm@gnu.org>
7712
7713 * emacs.c (system-type): Doc fix.
7714
77152008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7716
7717 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7718 If the cache doesn't work, let's fix it, rather than work around it.
7719
77202008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7721
7722 * Makefile.in: Correct additions for nsfont.o in last commit.
7723 * nsfont.m: New file (forgot last commit).
7724
77252008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7726
7727 * callproc.c (set_initial_environment): Initialize
7728 Vprocess_environment under CANNOT_DUMP (fixes crash when
7729 batch-compiling for bootstrap).
7730
77312008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7732 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7733
7734 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7735 fix crash due to different init order.
7736
77372008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7738
7739 Changes and additions for NeXTstep windowing system (Cocoa and
7740 GNUstep) support.
7741
7742 * Makefile.in:
7743 * config.in: Support defines and build commands for NS port.
7744 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7745 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7746 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7747 windowing.
7748 (struct face): Add synth_ital field.
7749 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7750 (init_display): Initialize Vinitial_window_system to "ns" when so
7751 compiled.
7752 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7753 (display_arg): Use under NS.
7754 (main): Under NS, allocate autorelease pool and handle command line
7755 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7756 (standard_args): Add NS-specific args.
7757 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7758 * font.c (DEFAULT_ENCODING): New variable.
7759 (font_find_for_lface): Use it.
7760 (syms_of_font): Load syms_of_nsfont under NS.
7761 * font.h: Declare nsfont_driver when compiled under NS.
7762 * fontset.c: When compiling under NS, include nsterm.h.
7763 (fontset_from_font): Autoconstruct fontset under NS.
7764 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7765 symbol, document and use it.
7766 (do_switch_frame): When for_deletion under Cocoa, add
7767 Fraise_frame(Qnil).
7768 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7769 (x_get_arg): Allow "yes" and "no" as boolean values.
7770 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7771 Qright under Cocoa.
7772 (focus-follows-mouse): Default to 0 under NS.
7773 * frame.h (enum output_method): Add output_ns.
7774 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7775 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7776 (FRAME_WINDOW_P): NS-specific definition.
7777 * fringe.c (max_used_fringe_bitmap): Make public.
7778 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7779 (getloadavg): Use NeXT code under descendant OS's.
7780 * image.c (includes and header section, x_create_bitmap_from_data)
7781 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7782 (image_background_transparent, x_clear_image_1)
7783 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7784 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7785 (x_to_xcolors, x_from_xcolors, x_disable_image)
7786 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7787 other GUIs, including XPM support using code originally written for
7788 Carbon GUI.
7789 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7790 using NS API.
7791 (image_ascent): Use font metrics macros instead of direct struct field
7792 access.
7793 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7794 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7795 Also, handle NS as GTK for menu bar purposes.
7796 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7797 toolkit where they differ.
7798 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7799 use cachelist, still needed under NS.
7800 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7801 (struct widget_value): Define it here for menu.c.
7802 * keymap.c (includes): Include modifier internals.
7803 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7804 NS.
7805 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7806 support for preferring sequences using certain modifiers, specified by
7807 the FIRSTONLY argument.
7808 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7809 under NS GNUstep implementation.
7810 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7811 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7812 * menu.c: Include nsterm.h under NS.
7813 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7814 (free_menubar_widget_tree_value, update_submenu_strings)
7815 (find_and_call_menu_selection): Treat NS as X and NT.
7816 (find_and_return_menu_selection): New function, used for popup menus.
7817 * nsgui.h:
7818 * nsterm.h:
7819 * nsfns.m:
7820 * nsimage.m:
7821 * nsmenu.m:
7822 * nsselect.m:
7823 * nsterm.m: New files.
7824 * process.c (wait_reading_process_output): Under NS, call ns_select()
7825 instead of plain select().
7826 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7827 beginning of buffer.
7828 * sysselect.h (init_process): Rename when compiling under Cocoa to
7829 avoid name conflict.
7830 * termhooks.h (display_info): Add ns_display_info to union.
7831 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7832 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7833 COCOA environment.
7834 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7835 unexec() signature. (Note, this will dump, but the resulting file
7836 crashes; unexosx is used instead; keeping around for reference and
7837 possible aid in getting dump working under GNUstep.)
7838 * w32gui.h (button_type, widget_value): Remove definitions (now in
7839 keyboard.h).
7840 * window.c: Include nsterm.h when compiling under NS.
7841 * xdisp.c (includes): Include nsterm.h when compiling under NS.
7842 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
7843 other GUI windowing systems.
7844 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
7845 GTK.
7846 (x_consider_frame_title): Under NS, set icon type and frame
7847 modified-state indicator; use ns_set_name_as_filename() when using
7848 formatted title.
7849 (update_window_cursor): Make public when compiling under NS.
7850 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
7851 (hourglass_atimer, Vhourglass_delay
7852 * xfaces.c (header section, init_frame_faces, clear_font_table)
7853 (defined_color, unload_color, x_face_list_fonts)
7854 (prepare_face_for_display): Add NS support parallel to other GUIs.
7855 Emulate GCs like other non-X GUIs.
7856 (split_font_name): Don't lowercase font name under NS.
7857 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
7858 under NS.
7859 * s/darwin.h: Add support for compilation under NS.
7860
78612008-07-15 Jason Rumney <jasonr@gnu.org>
7862
7863 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
7864 (w32_show_hourglass): Rename from show_hourglass.
7865 (w32_hide_hourglass): Rename from hide_hourglass.
7866 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
7867 (Vhourglass_delay): Declare extern.
7868 (hourglass_started): Remove.
7869
7870 * xdisp.c (Vhourglass_delay): Remove static.
7871 (hourglass_started, start_hourglass, cancel_hourglass):
7872 Don't include these versions on WINDOWSNT.
7873
78742008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7875
7876 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
7877 variables (formerly in xfns.c).
7878 (show_hourglass, hide_hourglass): New prototypes (same).
7879 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
7880 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
7881 in xfns.c).
7882 (syms_of_xdisp): Declare/initialize display-hourglass,
7883 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
7884 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
7885 formerly in xfns.c.
7886 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7887 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7888 (start_hourglass, cancel_hourglass): Remove.
7889 (show_hourglass, hide_hourglass): Remove prototypes and static
7890 modifiers.
7891 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
7892 hourglass_atimer, hourglass_shown_p declaration/initialization.
7893 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7894 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7895 (start_hourglass, cancel_hourglass): Remove.
7896 (show_hourglass, hide_hourglass): Remove prototypes and static
7897 modifiers.
7898 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
7899 hourglass_atimer, hourglass_shown_p declaration/initialization.
7900 * w32fns.c (display_hourglass_p, Vhourglass_delay)
7901 (DEFAULT_HOURGLASS_DELAY): Remove.
7902 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
7903 hourglass_shown_p declaration/initialization.
7904
79052008-07-14 Jason Rumney <jasonr@gnu.org>
7906
7907 * w32fns.c (w32_get_arg): Remove wrapper function.
7908 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
7909 directly.
7910 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
7911
79122008-07-14 Kenichi Handa <handa@m17n.org>
7913
7914 * xfont.c (xfont_open): Add workaround for X's bug.
7915
79162008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7917
7918 * fontset.c: Include <stdio.h> unconditionally.
7919
79202008-07-13 Michael Albinus <michael.albinus@gmx.de>
7921
7922 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
7923 for filtering.
7924
79252008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
7926
7927 * s/vms.h: Use __GNUC__ instead of _GNUC_.
7928
7929 * m/macppc.h:
7930 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
7931
7932 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
7933 (SPECIAL_EMACS_INT):
7934 * m/ia64.h (SPECIAL_EMACS_INT):
7935 * m/amdx86-64.h (SPECIAL_EMACS_INT):
7936 * s/gnu.h (NLIST_STRUCT):
7937 * s/aix4-2.h (X11R5_INHIBIT_I18N):
7938 * s/gnu-linux.h (LINUX):
7939 * s/msdos.h (HAVE_FACES):
7940 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
7941
7942 * systty.h:
7943 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
7944 anymore.
7945
79462008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
7947
7948 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
7949 always defined as int.
7950
7951 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
7952 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
7953 * s/gnu-linux.h (HAVE_WAIT_HEADER):
7954 * s/freebsd.h (HAVE_WAIT_HEADER):
7955 * s/bsd-common.h (HAVE_UNION_WAIT):
7956 * s/aix4-2.h (HAVE_WAIT_HEADER):
7957 * m/mips.h (HAVE_UNION_WAIT):
7958 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
7959 (COFF, static): Do not define, they are undefined later in the file.
7960
7961 * process.c (update_status): Don't use a union.
7962 (status_convert):
7963 (sigchld_handler): Use int instead of WAITTYPE.
7964
79652008-07-12 Chong Yidong <cyd@stupidchicken.com>
7966
7967 * indent.c (Fvertical_motion): Restore hscroll before moving to
7968 goal column.
7969
79702008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7971
7972 * lisp.h: Remove left over code.
7973
79742008-07-11 Andreas Schwab <schwab@suse.de>
7975
7976 * lisp.h: Fix logic in last change.
7977
7978 * menu.h: New file.
7979 * menu.c: Include it.
7980 * xmenu.c: Likewise.
7981 * Makefile.in: Update dependencies.
7982
79832008-07-11 Kenichi Handa <handa@m17n.org>
7984
7985 * fontset.c (fontset_from_font): Cancel the previous change.
7986
79872008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
7988
7989 * lisp.h:
7990 * w32heap.c:
7991 * emacs.c:
7992 * alloc.c: Replace all references of NO_UNION_TYPE with
7993 USE_LISP_UNION_TYPE.
7994
7995 * m/xtensa.h (NO_UNION_TYPE):
7996 * m/vax.h (NO_UNION_TYPE):
7997 * m/template.h (NO_UNION_TYPE):
7998 * m/sparc.h (NO_UNION_TYPE):
7999 * m/mips.h (NO_UNION_TYPE):
8000 * m/macppc.h (NO_UNION_TYPE):
8001 * m/m68k.h (NO_UNION_TYPE):
8002 * m/iris4d.h (NO_UNION_TYPE):
8003 * m/intel386.h (NO_UNION_TYPE):
8004 * m/ibms390x.h (NO_UNION_TYPE):
8005 * m/ibms390.h (NO_UNION_TYPE):
8006 * m/ibmrs6000.h (NO_UNION_TYPE):
8007 * m/ia64.h (NO_UNION_TYPE):
8008 * m/hp800.h (NO_UNION_TYPE):
8009 * m/arm.h (NO_UNION_TYPE):
8010 * m/amdx86-64.h (NO_UNION_TYPE):
8011 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
8012 defining it the same.
8013
80142008-07-10 Chong Yidong <cyd@stupidchicken.com>
8015
8016 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
8017
80182008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8019
8020 * fileio.c:
8021 * sysdep.c
8022 * systty.h:
8023 * m/ibmrs6000.h:
8024 * m/iris4d.h:
8025 * s/aix4-2.h:
8026 * s/freebsd.h:
8027 * s/gnu-linux.h:
8028 * s/hpux10-20.h:
8029 * s/hpux11.h:
8030 * s/netbsd.h:
8031 * s/sol2-3.h:
8032 * s/sol2-4.h:
8033 * s/sol2.h:
8034 * s/usg5-4.h:
8035 * s/vms.h: Remove references to unused variables.
8036
80372008-07-10 Andreas Schwab <schwab@suse.de>
8038
8039 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
8040 pattern before matching the generic family.
8041
80422008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8043
8044 * unexec.c:
8045 * s/vms.h:
8046 * s/usg5-4-2.h:
8047 * s/sol2-5.h:
8048 * s/freebsd.h:
8049 * s/darwin.h: Remove dead code.
8050
8051 * m/template.h:
8052 * m/sparc.h:
8053 * m/mips.h:
8054 * m/m68k.h:
8055 * m/iris4d.h:
8056 * m/intel386.h:
8057 * m/ibms390x.h:
8058 * m/ibms390.h:
8059 * m/ia64.h:
8060 * m/hp800.h:
8061 * m/arm.h:
8062 * m/amdx86-64.h: Remove dead code and references to unused
8063 and compiler defined symbols.
8064
8065 * unexmips.c:
8066 * unexelf.c: Remove references to desupported systems.
8067
8068 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
8069
8070 * m/powermac.h: Remove boilerplate comments.
8071 (NO_REMAP): Remove unused definition.
8072
8073 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
8074 define them.
8075
80762008-07-10 Kenichi Handa <handa@m17n.org>
8077
8078 * xfont.c (xfont_open): Log the reason of failure.
8079
80802008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
8081
8082 * fontset.c (fontset_get_font_group):
8083 * font.c (font_check_otf): Specify argument types.
8084
80852008-07-09 Kenichi Handa <handa@m17n.org>
8086
8087 * coding.c (detect_coding_utf_8): Set detect_info->found only when
8088 non-ASCII char is found.
8089
8090 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
8091 (reorder_font_vector): Change the arg preferred_family to font.
8092 Prefer the spec matching with font.
8093 (fontset_get_font_group): New function.
8094 (fontset_find_font): Change the format of an element of a realized
8095 fontset. Use fontset_get_font_group.
8096 (fontset_font): Try the current fontset, the default fontset, the
8097 fallbacks of the current fontset, and the fallbacks of the default
8098 fontset in this order.
8099 (face_for_char): Delete the shortcut to use the current font.
8100 (fontset_from_font): Don't set fonts for Latin in the fontset.
8101
8102 * font.h (font_make_object, font_match_p): Adjust prototypes.
8103
8104 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
8105
8106 * font.c (font_make_object): New arg entity and pixelsize.
8107 (font_check_otf_features, font_check_otf): New functions.
8108 (font_match_p): Check :lang, :script, and :otf properties.
8109
8110 * xfont.c (xfont_open): Adjust it for the change of
8111 font_make_object.
8112 (xfont_text_extents): Fix initial setting of metrics.
8113
8114 * ftfont.c (struct ftfont_info): New member index, delete member
8115 fc_charset_idx. Make the member order compatible with struct
8116 xftfont_info.
8117 (fc_charset_table): Change charset names to registry names.
8118 (ftfont_pattern_entity): Delete the args registry and
8119 fc_charset_idx. Change the value of :font-entity property
8120 to (FONTNAME . INDEX). Always set :registry property to
8121 `iso10646-1'.
8122 (struct ftfont_cache_data): New struct.
8123 (ftfont_lookup_cache): New arg for_face.
8124 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
8125 (ftfont_driver): Set the member otf_capability.
8126 (ftfont_get_charset): Adjust it for the change of
8127 fc_charset_table.
8128 (OTF_TAG_SYM): New macro.
8129 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
8130 for the change of fc_charset_table.
8131 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
8132 ftfont_pattern_entity. Add FC_INDEX to objset.
8133 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
8134 and ftfont_pattern_entity.
8135 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
8136 font_make_object, struct ftfont_info.
8137 (ftfont_has_char): Use ftfont_get_fc_charset.
8138 (ftfont_otf_features, ftfont_otf_capability): New functions.
8139 (ftfont_shape): Use ftfont_get_otf.
8140 (ftfont_text_extents): Fix initial setting of metrics.
8141
8142 * xftfont.c (struct xftfont_info): New member ft_size. Make the
8143 member order compatible with struct ftfont_info.
8144 (xftfont_open): Add FC_CHARSET to the pattern. Set
8145 xftfont_info->ft_size. Don't unlock the face. Check BDF
8146 properties if appropriate.
8147 (xftfont_close): Unlock the face.
8148 (xftfont_anchor_point, xftfont_shape): Deleted.
8149 (syms_of_xftfont): Don't set members anchor_point and shape of
8150 xftfont_driver.
8151
8152 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
8153 font_make_object.
8154
8155 * w32font.c (w32font_open): Adjust it for the change of
8156 font_make_object.
8157 (w32font_open_internal): Don't set properties of font_object here.
8158
81592008-07-08 Chong Yidong <cyd@stupidchicken.com>
8160
8161 * macfns.c (x_create_tip_frame):
8162 * w32fns.c (x_create_tip_frame):
8163 * xfns.c (x_create_tip_frame): Pass parameter argument to
8164 face-set-after-frame-default.
8165
8166 * xfaces.c (Finternal_merge_in_global_face): Save merged
8167 attributes for the default face back into the face vector.
8168
81692008-07-08 Andreas Schwab <schwab@suse.de>
8170
8171 * fontset.h: Declare fontset_from_font. Don't declare
8172 new_fontset_from_font and fontset_from_font_name.
8173 * xterm.c: Include "fontset.h".
8174 * Makefile.in (xterm.o): Update dependencies.
8175
81762008-07-08 Glenn Morris <rgm@gnu.org>
8177
8178 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
8179 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
8180
81812008-07-07 Chong Yidong <cyd@stupidchicken.com>
8182
8183 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
8184 (x_set_frame_parameters): Don't bind it.
8185
81862008-07-07 Juanma Barranquero <lekktu@gmail.com>
8187
8188 * w32fns.c (map_w32_filename): Declare extern.
8189
81902008-07-07 Jason Rumney <jasonr@gnu.org>
8191
8192 * w32term.c (WS_EX_LAYERED): Define if not already.
8193
81942008-07-06 Chong Yidong <cyd@stupidchicken.com>
8195
8196 * xfaces.c (set_font_frame_param): Don't try to set the font
8197 parameter if it is still unspecified in the lface.
8198
81992008-07-05 Chong Yidong <cyd@stupidchicken.com>
8200
8201 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
8202 face if it didn't already exist.
8203
8204 * xdisp.c (try_window_id): Give up if word-wrapping is on.
8205
82062008-07-05 Andreas Schwab <schwab@suse.de>
8207
8208 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
8209
82102008-07-05 Chong Yidong <cyd@stupidchicken.com>
8211
8212 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
8213 word-wrapping.
8214 (IT_DISPLAYING_WHITESPACE): New macro.
8215 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
8216 when word-wrapping. Simplify word-wrapping logic. Use correct
8217 pixel positions when saving copies of the iterator.
8218 (display_line): Use proper wrap point if the last character on a
8219 line was preceded by whitespace.
8220
82212008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
8222
8223 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
8224
82252008-07-04 Kenichi Handa <handa@m17n.org>
8226
8227 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
8228
8229 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
8230
82312008-07-02 Jason Rumney <jasonr@gnu.org>
8232
8233 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 8234 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
8235
8236 * xdisp.c (next_element_from_display_vector): Move assignment out
8237 of if statement.
8238
82392008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8240
8241 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8242
8243 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8244 (syms_of_fileio): Initialize and export them.
8245 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8246
8247 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8248 (Fsystem_move_file_to_trash): New function.
8249 (syms_of_w32fns): Export it to lisp.
8250
82512008-07-01 Jason Rumney <jasonr@gnu.org>
8252
8253 * w32font.c (w32font_text_extents): Don't count overhang as part
8254 of width.
8255
82562008-06-30 Miles Bader <miles@gnu.org>
8257
8258 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8259 Add `avoid_cursor_p' field.
8260
8261 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8262 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8263 (append_glyph, append_composite_glyph, produce_image_glyph)
8264 (append_stretch_glyph): Initialize avoid_cursor_p.
8265 (get_it_property): Rename from `get_line_height_property'.
8266 (x_produce_glyphs): Use get_it_property.
8267 (handle_line_prefix, push_display_prop): New functions.
8268 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8269 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8270 New variables.
8271 (syms_of_xdisp): Initialize them.
8272
82732008-06-30 Kenichi Handa <handa@m17n.org>
8274
8275 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8276 XftDefaultSubstitute (they are called in XftFontMatch).
8277 (xftfont_open): Fix args to ftfont_font_format.
8278
8279 * ftfont.c (fc_charset_table): New member lang.
8280 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 8281 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
8282 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8283 (ftfont_open): Fix args to ftfont_font_format.
8284 (ftfont_font_format): New arg filename.
8285
82862008-06-30 Chong Yidong <cyd@stupidchicken.com>
8287
8288 * xfaces.c (Finternal_merge_in_global_face): If default face was
8289 modified, realize it again. Update the font face attribute.
8290
82912008-06-29 Jason Rumney <jasonr@gnu.org>
8292
8293 * w32term.c (x_set_frame_alpha): Fix logic.
8294
82952008-06-29 Kenichi Handa <handa@m17n.org>
8296
8297 * fontset.c (Finternal_char_font): Return font-object instead of
8298 font-name.
8299
8300 * composite.c (get_composition_id): Fix the width calculation for TAB.
8301
83022008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8303
8304 * indent.c (Fvertical_motion): Properly handle float column arg.
8305
83062008-06-28 Jason Rumney <jasonr@gnu.org>
8307
8308 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8309 (pfnSetLayeredWindowAttributes): New function pointer.
8310 (w32_initialize): Initialize it when supported.
8311 (x_set_frame_alpha): New function.
8312
8313 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8314 (w32_frame_parm_handlers): Set alpha handler.
8315
8316 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8317
83182008-06-27 Jason Rumney <jasonr@gnu.org>
8319
8320 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8321 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8322 (w32_to_x_charset, x_to_w32_charset)
8323 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8324 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8325 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8326 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8327 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8328 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8329 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8330 (Qw32_charset_unicode): Remove.
8331 (syms_of_w32fns): Update for above changes.
8332
8333 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8334 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8335 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8336 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8337 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8338 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8339 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8340 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8341 (syms_of_w32font): Update for above changes.
8342
83432008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8344
8345 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8346 removed #if.
8347 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8348
83492008-06-26 Juanma Barranquero <lekktu@gmail.com>
8350 Eli Zaretskii <eliz@gnu.org>
8351
8352 * makefile.w32-in (LOCAL_FLAGS):
8353 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8354
8355 * sysdep.c (_spawnlp, _getpid):
8356 Declare with explicit _cdecl instead of _CRTAPI1.
8357
8358 * editfns.c (Fget_internal_run_time):
8359 Check for WINDOWSNT with #ifdef, not #if.
8360
83612008-06-26 Jason Rumney <jasonr@gnu.org>
8362
8363 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8364
8365 * w32term.c (x_draw_glyph_string_foreground)
8366 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8367 Use FONT_HANDLE macro.
8368 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8369
8370 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8371 (uniscribe_encode_char): Use FONT_HANDLE macro.
8372
8373 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8374 (w32font_text_extents): Use precast w32_font.
8375 (w32font_close): Free cached metrics.
8376 (w32font_open_internal): Allocate space for name on stack.
8377
83782008-06-26 Chong Yidong <cyd@stupidchicken.com>
8379
8380 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8381
83822008-06-26 Jason Rumney <jasonr@gnu.org>
8383
8384 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8385 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8386
83872008-06-26 Juanma Barranquero <lekktu@gmail.com>
8388
8389 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8390
83912008-06-26 Jason Rumney <jasonr@gnu.org>
8392
8393 * w32bdf.c, w32bdf.h: Remove obsolete files.
8394
8395 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8396
8397 * w32gui.h: Don't include w32bdf.h.
8398 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8399 Remove obsolete font support.
8400
8401 * w32font.h (struct w32font_info): Remove compat_w32_font.
8402 Add hfont member.
8403 (FONT_COMPAT): Remove obsolete macro.
8404
8405 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8406 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8407 (w32font_open_internal): Remove compat code. Set new hfont member.
8408 (Fx_select_font): Use new hfont member.
8409
8410 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8411 (uniscribe_encode_char): Use new hfont member.
8412
8413 * w32term.c (x_draw_glyph_string_foreground)
8414 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8415 (x_draw_glyph_string): Use metrics in w32font_info.
8416
84172008-06-26 Kenichi Handa <handa@m17n.org>
8418
8419 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8420
84212008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8422
8423 * unexnext.c:
8424 * m/ews4800.h:
8425 * m/hp9000s300.h:
8426 * m/ibm370aix.h:
8427 * m/mips-siemens.h:
8428 * m/ncr386.h:
8429 * m/next.h:
8430 * m/pmax.h:
8431 * m/powerpcle.h:
8432 * m/tandem-s2.h:
8433 * s/386bsd.h:
8434 * s/bsd386.h:
8435 * s/bsd4-1.h:
8436 * s/bsd4-2.h:
8437 * s/bsdos2-1.h:
8438 * s/bsdos2.h:
8439 * s/bsdos3.h:
8440 * s/bsdos4.h:
8441 * s/nextstep.h:
8442 * s/ultrix4-3.h:
8443 * s/usg5-0.h:
8444 * s/usg5-2-2.h:
8445 * s/usg5-2.h:
8446 * s/usg5-4-3.h:
8447 * s/ux4800.h:
8448 * s/uxpds.h:
8449 * s/uxpv.h: Remove support for obsolete systems.
8450 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8451 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8452 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8453 Remove, insert contents in s/aix4-2.h.
8454 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8455 * s/bsd4-3.h: Rename to ...
8456 * s/bsd-common.h: ... this.
8457 * data.c:
8458 * doc.c:
8459 * ecrt0.c:
8460 * emacs.c:
8461 * fileio.c:
8462 * floatfns.c:
8463 * keyboard.c:
8464 * mem-limits.h:
8465 * print.c:
8466 * process.c:
8467 * sysdep.c:
8468 * syssignal.h:
8469 * systty.h:
8470 * syswait.h:
8471 * term.c:
8472 * unexec.c:
8473 * unexelf.c:
8474 * unexhp9k800.c:
8475 * m/hp800.h:
8476 * m/ibmrs6000.h:
8477 * m/mips.h:
8478 * m/vax.h:
8479 * s/darwin.h:
8480 * s/freebsd.h:
8481 * s/gnu.h:
8482 * s/ms-w32.h:
8483 * s/msdos.h:
8484 * s/netbsd.h:
8485 * s/template.h: Remove references to obsolete variables.
8486
8487 * Makefile.in: Add dependencies for all unexec files.
8488 (admindir): Remove unused variable.
8489 (UNEXEC_SRC): Remove references.
8490
84912008-06-25 Chong Yidong <cyd@stupidchicken.com>
8492
8493 * xfns.c (x_default_font_parameter): If Xft is available, first
8494 try Monospace-12 for the default font.
8495
84962008-06-25 Jason Rumney <jasonr@gnu.org>
8497
8498 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8499
85002008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8501
8502 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8503
8504 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8505
85062008-06-25 Juanma Barranquero <lekktu@gmail.com>
8507
8508 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8509 <scroll-conservatively>: Fix typo in docstring.
8510
8511 * xselect.c (Fx_send_client_event): Doc fix.
8512
85132008-06-25 Kenichi Handa <handa@m17n.org>
8514
8515 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8516
8517 * font.c (font_parse_fcname): Remove unused variables.
8518 (font_sort_entites): Delete the arg SPEC. Caller changed.
8519 Fix for the case of ! best_only.
8520 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8521
8522 * lisp.h (Fstring_to_unibyte): EXFUN it.
8523
8524 * character.h (str_to_unibyte): Extern it.
8525
8526 * character.c (str_to_unibyte): New function.
8527
8528 * fns.c (Fstring_to_unibyte): New function.
8529 (syms_of_fns): Defsubr it.
8530
85312008-06-24 Kenichi Handa <handa@m17n.org>
8532
8533 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8534 DPI too.
8535 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8536
85372008-06-24 Andreas Schwab <schwab@suse.de>
8538
8539 * Makefile.in (${lispsource}loaddefs.el): Rename from
8540 ../lisp/loaddefs.el.
8541 (bootstrap-clean): Do what distclean does but don't remove
8542 Makefile.
8543 (distclean): Depend on bootstrap-clean and remove Makefile.
8544
85452008-06-24 Chong Yidong <cyd@stupidchicken.com>
8546
8547 * buffer.h (struct buffer): New member word_wrap.
8548
8549 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8550 word-wrap.
8551 (init_buffer_once): Initialize them.
8552
8553 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8554 line_wrap enum possessing three possible values.
8555
8556 * termopts.h: Replace truncate_partial_width_windows with
8557 Vtruncate_partial_width_windows.
8558
8559 * dispnew.c (direct_output_for_insert): Avoid direct output when
8560 inserting a space with word wrap on.
8561
8562 * indent.c (compute_motion): Obey integer values of
8563 truncate-partial-width-windows.
8564
8565 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8566 replacing truncate_partial_width_windows.
8567 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8568 truncate only if the window width is below that integer.
8569 (start_display, resize_mini_window, produce_stretch_glyph)
8570 (display_string, move_it_in_display_line_to): Use line_wrap.
8571 (back_to_previous_visible_line_start, reseat_1): Reset
8572 string_from_display_prop_p.
8573 (display_line): Extend default face to end of line when wrapping.
8574
85752008-06-24 Kim F. Storm <storm@cua.dk>
8576
8577 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8578 to wrap continued lines at word boundaries.
8579
85802008-06-24 Jason Rumney <jasonr@gnu.org>
8581
8582 * font.c (Ffont_face_attributes): Multiply pixel size before point
8583 conversion to avoid multiplying rounding error.
8584
85852008-06-23 Jason Rumney <jasonr@gnu.org>
8586
8587 * w32term.c (x_draw_glyph_string_background)
8588 (x_draw_glyph_string): Remove old bdf font code.
8589
8590 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8591
85922008-06-22 Kenichi Handa <handa@m17n.org>
8593
8594 * font.c (font_find_for_lface): Try the adstyle specified in
8595 the property of LFACE_FONT of LFACE (if any).
8596
85972008-06-21 Seiji Zenitani <zenitani@mac.com>
8598 Ryo Yoshitake <ryo@shiftmode.net>
8599
8600 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8601
86022008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8603
8604 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8605 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8606 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8607 (witness-emacs): Remove.
8608 (lisp, shortlisp): Move loaddefs.el earlier.
8609 (mostlyclean): Forget about witness-emacs.
8610
86112008-06-22 Glenn Morris <rgm@gnu.org>
8612
8613 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8614 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8615
86162008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8617
8618 * Makefile.in (PRECOMP): Remove.
8619 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8620 (witness-emacs): Run `compile-first'.
8621 (.el.elc): Use the new compile-onefile target.
8622
86232008-06-21 Kenichi Handa <handa@m17n.org>
8624
8625 * xftfont.c (xftfont_open): Handle QCembolden only when
8626 FC_EMBOLDEN is defined.
8627
86282008-06-21 Andreas Schwab <schwab@suse.de>
8629
8630 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8631 (.el.elc): Likewise.
8632
86332008-06-21 Miles Bader <miles@gnu.org>
8634
8635 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8636 build dir, not the lisp source dir.
8637
86382008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8639
8640 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8641 (bootstrapclean): Remove.
8642 (.el.elc): New rule.
8643 (PRECOMP): New var.
8644 (../lisp/subdirs.el): Remove.
8645 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8646 (witness-emacs): New target.
8647 (mostlyclean): Remove witness-emacs as well.
8648 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8649 Add witness-emacs dependency.
8650
86512008-06-20 Chong Yidong <cyd@stupidchicken.com>
8652
8653 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8654 defined by the font.
8655
86562008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8657
8658 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8659 (bootstrap-clean): New target that keeps TAGS around.
8660 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8661 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8662
86632008-06-20 Jason Rumney <jasonr@gnu.org>
8664
8665 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8666 Remove obsolete font code.
8667
8668 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8669 to determine language support.
8670
86712008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8672
8673 * sysdep.c (cfsetspeed): New fun extracted from the code.
8674 (cfmakeraw): Move before first use.
8675
86762008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8677
8678 * sysdep.c (cfmakeraw): Provide fallback implementation.
8679 (serial_configure): Provide fallback implementation of cfsetspeed.
8680
86812008-06-20 Kenichi Handa <handa@m17n.org>
8682
8683 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8684 the pattern.
8685
8686 * fontset.c (fontset_from_font): Copy font_spec before changing
8687 the elements.
8688
8689 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8690
86912008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8692
8693 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8694 for explicit `font' parameters.
8695
8696 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8697
86982008-06-19 Kenichi Handa <handa@m17n.org>
8699
8700 * frame.c: Include <ctype.h>.
8701 (x_set_font_backend): Allow spacing characters in the X resource
8702 for FontBackend.
8703
87042008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8705
8706 * w32fns.c, xfns.c (Qfont_param): New var.
8707 (syms_of_w32fns): Initialize it.
8708 (x_default_font_parameter): Record explicit `font' into
8709 `font-parameter'.
8710
87112008-06-18 Kenichi Handa <handa@m17n.org>
8712
8713 * font.c (font_parse_xlfd): Fix previous change.
8714 (font_parse_fcname): Don't use :fc-unknown-spec.
8715 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8716 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8717 (font_add_log): Prepend the driver name to the resulting fonts.
8718
8719 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8720 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8721 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8722
8723 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8724 (QCembolden): New variables.
8725 (syms_of_xftfont): DEFSYM them.
8726 (xftfont_open): Call XftFontMatch. Don't trust the result of
8727 XftTextExtents8 if the pixel_size is less than 5.
8728
87292008-06-18 Andreas Schwab <schwab@suse.de>
8730
8731 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8732 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8733
87342008-06-18 Jason Rumney <jasonr@gnu.org>
8735
8736 * w32font.c (w32font_list, w32font_match): Add logging.
8737
8738 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8739
87402008-06-17 Chong Yidong <cyd@stupidchicken.com>
8741
8742 * font.c (font_parse_fcname): Store divider characters for
8743 unknown-spec list. For known key symbols, intern using correct
8744 symbol name.
8745
87462008-06-17 Kenichi Handa <handa@m17n.org>
8747
8748 * xfaces.c (realize_default_face): If the frame is not on window
8749 system, set the fontset of face to nil.
8750
87512008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8752
8753 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8754
87552008-06-16 Juanma Barranquero <lekktu@gmail.com>
8756
8757 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8758 (build_font_name_from_vector): Delete externs.
8759
8760 * xfaces.c (struct font_name): Don't declare.
8761
87622008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8763
8764 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8765
87662008-06-16 Chong Yidong <cyd@stupidchicken.com>
8767
8768 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8769
87702008-06-16 Juanma Barranquero <lekktu@gmail.com>
8771
8772 * font.c (Ffont_spec): Fix usage in docstring.
8773 (Ffont_face_attributes): Doc fix.
8774
87752008-06-16 Andreas Schwab <schwab@suse.de>
8776
8777 * font.c (Ffont_face_attributes): Fix definition.
8778
87792008-06-16 Jason Rumney <jasonr@gnu.org>
8780
8781 * font.h (font_style_symbolic_from_value): Remove.
8782
8783 * font.c (font_style_symbolic_from_value): Remove.
8784 (font_style_symbolic): Revert to pre 2008-06-13 version.
8785
8786 * w32font.c (w32_to_fc_weight): New function.
8787 (w32font_full_name, logfont_to_fcname): Use it.
8788
87892008-06-16 Kenichi Handa <handa@m17n.org>
8790
8791 * font.c (font_check_object): Delete it.
8792 (font_clear_cache): Check if a font-object is alive.
8793 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8794 font-object to nil.
8795 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8796 (font_at): Don't call font_check_object.
8797 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8798
87992008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8800
8801 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8802
88032008-06-16 Chong Yidong <cyd@stupidchicken.com>
8804
8805 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8806
88072008-06-15 Chong Yidong <cyd@stupidchicken.com>
8808
8809 * font.c (font_parse_fcname): Only one decimal point.
8810 (font_unparse_fcname): Handle data in family and foundry indices
8811 as symbols, not strings.
8812 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8813
8814 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8815
8816 * font.h (font_unparse_gtkname): Add prototype.
8817
88182008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8819
8820 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8821
88222008-06-15 Andreas Schwab <schwab@suse.de>
8823
8824 * font.c (font_update_drivers): Fix crash when no drivers match.
8825
88262008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8827
8828 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8829 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8830
88312008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8832
8833 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8834
88352008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8836
8837 * process.c (Fserial_process_configure, Fprocess_send_eof):
8838 Use EQ to compare Lisp_Objects.
8839
88402008-06-13 Jason Rumney <jasonr@gnu.org>
8841
8842 * w32fns.c (Fw32_select_font): Remove old font API function.
8843
8844 * w32font.c (logfont_to_fcname): New function.
8845 (Fx_select_font): New font dialog function compatible with
8846 GTK/fontconfig version.
8847
8848 * font.c (font_style_symbolic_from_value): New function.
8849 (font_style_symbolic): Use it.
8850
8851 * font.h (font_style_symbolic_from_value): Declare new function.
8852
88532008-06-13 Juanma Barranquero <lekktu@gmail.com>
8854
8855 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
8856 <font-width-table>: Fix typos in docstrings.
8857
88582008-06-13 Daniel Engeler <engeler@gmail.com>
8859
8860 These changes add serial port access.
8861 * process.c: Add HAVE_SERIAL.
8862 (Fdelete_process, Fprocess_status, Fset_process_buffer)
8863 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
8864 (list_processes_1, select_wrapper, Fstop_process)
8865 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
8866 (status_notify): Modify to handle serial processes.
8867 [HAVE_SERIAL] (Fserial_process_configure)
8868 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
8869 New functions.
8870 * process.h (struct Lisp_Process): Add `type'.
8871 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
8872 New functions.
8873 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
8874 serial ports.
b71ac3dd 8875 (serial_open, serial_configure): New functions.
aac0c6e3
MR
8876 * w32.h: Add FILE_SERIAL.
8877 (struct _child_process): Add ovl_read, ovl_write.
8878
88792008-06-13 Kenichi Handa <handa@m17n.org>
8880
8881 * dispextern.h (enum lface_attribute_index): New member
8882 LFACE_FOUNDRY_INDEX.
8883
8884 * font.c (font_score): Delete arg alternate_families. Check only
8885 weight, slant, width, and size. Ignore the difference of alias
8886 style symbols.
8887 (font_sort_entites): Adjust for the above change. Reflect the
8888 order of font-driver to scores.
8889 (font_list_entities): Don't check alternate_familes here.
8890 (font_clear_prop): Handle foundry.
8891 (font_update_lface): Don't parse "foundry-family" form here.
8892 Handle FONT_FOUNDRY_INDEX.
8893 (font_find_for_lface): Likewise. Handle alternate families here.
8894 If registry is nil, try iso8859-1 and ascii-0.
8895 (font_open_for_lface): Pay attention to size in ENTITY.
8896 (font_open_by_name): Simplify by calling font_load_for_lface.
8897 (free_font_driver_list): Delete it.
8898 (font_update_drivers): Preserve the order of backends.
8899 (syms_of_font): Setting of sort_shift_bits adjusted for the change
8900 of font_score and font_sort_entites.
8901 (font_update_sort_order): Likewise.
8902
8903 * xfaces.c (LFACE_FOUNDRY): New macro.
8904 (check_lface_attrs): Check foundry.
8905 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
8906 (merge_face_vectors): Check foundry.
8907 (merge_face_ref): Likewise.
8908 (Finternal_set_lisp_face_attribute): Likewise.
8909 (x_update_menu_appearance): Likewise.
8910 (Finternal_get_lisp_face_attribute): Likewise.
8911 (lface_hash): Likewise.
8912 (lface_same_font_attributes_p): Likewise.
8913 (x_supports_face_attributes_p): Likewise.
8914 (tty_supports_face_attributes_p): Likewise.
8915 (Finternal_set_alternative_font_family_alist): Intern strings.
8916 (Finternal_set_alternative_font_registry_alist): Downcase strings.
8917 (realize_default_face): Set LFACE_FOUNDRY (lface).
8918
8919 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
8920 font-driver at first.
8921
8922 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
8923
89242008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8925
8926 * lread.c (Fload): Use xfree, not free on saved_doc_string.
8927
89282008-06-12 Jim Meyering <meyering@redhat.com>
8929
8930 Make unexec_free handle NULL the same way free does.
8931 * unexmacosx.c (unexec_free): Ignore a NULL argument.
8932
89332008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
8934
8935 * character.h (CHAR_TO_BYTE_SAFE): New macro.
8936 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
8937 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
8938 (WEAK_ALIAS): Simplify.
8939 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
8940 when searching a unibyte buffer.
8941
89422008-06-12 Chong Yidong <cyd@stupidchicken.com>
8943
8944 * xfns.c (Fx_select_font): Rename from x-font-dialog.
8945
89462008-06-12 Juanma Barranquero <lekktu@gmail.com>
8947
8948 * w32font.c: Include ctype.h.
8949
89502008-06-11 Jason Rumney <jasonr@gnu.org>
8951
8952 * w32font.c (w32font_encode_char): Detect missing glyphs that are
8953 misreported as space.
8954 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
8955 as aliases for registry iso10646-1.
8956
89572008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
8958
8959 * buffer.c (clone_per_buffer_values): Skip `name'.
8960
89612008-06-11 Chong Yidong <cyd@stupidchicken.com>
8962
8963 * font.c (font_parse_fcname): Fix last change; accept decimal
8964 points in font size.
8965
89662008-06-10 Jason Rumney <jasonr@gnu.org>
8967
8968 * w32uniscribe.c (add_opentype_font_name_to_list):
8969 Skip non unicode fonts.
8970
89712008-06-10 Chong Yidong <cyd@stupidchicken.com>
8972
8973 * xfns.c (Fx_font_dialog): New function.
8974
8975 * gtkutil.c (xg_dialog_response_cb): Rename from
8976 xg_file_response_callback.
8977 (pop_down_dialog): Rename from pop_down_file_dialog.
8978 (xg_get_file_name): Callers changed.
8979 (xg_get_font_name): New function.
8980
8981 * gtkutil.h (xg_get_font_name): Insert prototype.
8982
89832008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
8984
8985 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
8986 x_underline_minimum_display_offset.
8987 (syms_of_xdisp): Declare it here rather than in xterm.c.
8988 * dispextern.h (underline_minimum_offset): Declare it.
8989 * w32term.c (x_draw_glyph_string): Use it.
8990 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
8991 (syms_of_xterm): Don't declare it any more.
8992 (x_draw_glyph_string): Adjust to the new name.
8993
89942008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
8995
8996 * xterm.c (x_underline_minimum_display_offset): New var.
8997 (x_draw_glyph_string): Use it.
8998 (syms_of_xterm): Declare it.
8999
90002008-06-10 Chong Yidong <cyd@stupidchicken.com>
9001
9002 * font.c (font_parse_fcname): Accept GTK-style font names too.
9003
90042008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9005
9006 * dired.c (file_name_completion): Don't return t if the match is exact
9007 but with different capitalization.
9008 * minibuf.c (Ftry_completion): Simplify.
9009
9010 * window.c (Vwindow_point_insertion_type): New var.
9011 (set_window_buffer): Use it.
9012 (syms_of_window): Init and export it to Lisp.
9013
90142008-06-10 Kenichi Handa <handa@m17n.org>
9015
9016 * font.h (font_intern_prop): Prototype adjusted.
9017
9018 * font.c (font_intern_prop): New arg force_symbol.
9019 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
9020 Adjust for the change of font_intern_prop.
9021
9022 * ftfont.c (ftfont_pattern_entity):
9023 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
9024 (w32_registry):
9025 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
9026 the change of font_intern_prop.
9027
90282008-06-09 Juanma Barranquero <lekktu@gmail.com>
9029
9030 * w32menu.c (digest_single_submenu): Declare extern.
9031
90322008-06-09 Jason Rumney <jasonr@gnu.org>
9033
9034 * w32term.c (x_make_frame_visible): Use alternate restore flags.
9035
9036 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
9037 (parse_single_submenu): Remove.
9038 (digest_single_submenu): Remove.
9039 (syms_of_w32menu): Don't initialise variables that have moved
9040 to menu.c.
9041 (set_frame_menubar): Sync with version in xmenu.c.
9042 (w32_menu_show): Sync with xmenu_show in xmenu.c.
9043
9044 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
9045 Make static again.
9046
90472008-06-09 Jason Rumney <jasonr@gnu.org>
9048
9049 Changes to w32 files related to the move of common menu code
9050 to menu.c on 2008-06-08 by Chong Yidong.
9051
9052 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
9053 defs to w32gui.h.
9054 (single_keymap_panes, push_menu_item, push_menu_pane):
9055 Make globally visible.
9056
9057 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
9058 (local_free, malloc_widget_value, free_widget_value)
9059 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
9060 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
9061 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
9062 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
9063 (menu_items, menu_items_allocated, menu_items_used)
9064 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
9065 (init_menu_items, finish_menu_items, discard_menu_items)
9066 (grow_menu_items, push_submenu_start, push_submenu_end)
9067 (push_left_right_boundary, push_menu_pane, push_menu_item)
9068 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
9069 (free_menubar_widget_tree_value, parse_single_submenu)
9070 (update_submenu_strings): Remove functions.
9071 (xmalloc_widget_value): Remove and declare extern.
9072
9073 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
9074 (OBJ1): Build it.
9075
9076 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
9077 (local_heap, local_alloc, local_free, malloc_widget_value)
9078 (free_widget_value): Define here.
9079
90802008-06-09 Kenichi Handa <handa@m17n.org>
9081
9082 * font.h (Qascii_0): Extern it.
9083
9084 * font.c (Qascii_0): New variable.
9085 (syms_of_font): DEFSYM it.
9086 (font_open_by_name): If the registry "iso8859-1" fails, try also
9087 "ascii-0".
9088
9089 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
9090
90912008-06-08 Kenichi Handa <handa@m17n.org>
9092
9093 * .gdbinit (xfont): New command.
9094
90952008-06-08 Andreas Schwab <schwab@suse.de>
9096
9097 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
9098 * Makefile.in (menu.o): Update dependencies.
9099
9100 * Makefile.in (obj): Always add menu.o.
9101 * emacs.c (main): Always call syms_of_menu.
9102 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
9103
91042008-06-08 Chong Yidong <cyd@stupidchicken.com>
9105
9106 * Makefile.in: Compile menu.c.
9107
9108 * lisp.h: Declare syms_of_menu.
9109
9110 * emacs.c (main): Call syms_of_menu.
9111
9112 * keyboard.h: Relocate platform-independent menu definitions from
9113 xmenu.c.
9114
9115 * menu.c: New file. Relocate platform-independent menu
9116 definitions from xmenu.c. Suggested by Adrian Robert.
9117
9118 * xmenu.c: Remove platform-independent menu definitions.
9119 (menu_items menu_items_inuse, menu_items_allocated)
9120 (menu_items_used, menu_items_n_panes)
9121 (menu_items_submenu_depth): Move to keyboard.h.
9122 (init_menu_items, finish_menu_items, unuse_menu_items)
9123 (discard_menu_items, restore_menu_items, save_menu_items)
9124 (grow_menu_items, push_submenu_start, push_submenu_end)
9125 (push_left_right_boundary, push_menu_pane, push_menu_item)
9126 (keymap_panes, single_keymap_panes, single_menu_item)
9127 (list_of_panes, list_of_items, find_and_call_menu_selection)
9128 (xmalloc_widget_value, free_menubar_widget_value_tree)
9129 (parse_single_submenu, digest_single_submenu)
9130 (update_submenu_strings): Move to menu.c.
9131
91322008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
9133
9134 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
9135
91362008-06-06 Miles Bader <miles@gnu.org>
9137
9138 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
9139 face, not frame default.
9140
91412008-06-05 Martin Rudalics <rudalics@gmx.at>
9142
9143 * window.c (pop_up_windows, pop_up_frames)
9144 (display_buffer_reuse_frames, Vpop_up_frame_function)
9145 (Vdisplay_buffer_function, Veven_window_heights)
9146 (Vspecial_display_buffer_names, Vspecial_display_regexps)
9147 (Vspecial_display_function, Vsame_window_buffer_names)
9148 (Vsame_window_regexps, split_height_threshold)
9149 (Vsplit_window_preferred_function): Move those vars to window.el.
9150 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
9151 (Fdisplay_buffer): Move those functions to window.el.
9152 (syms_of_window): Remove corresponding declarations.
9153 (display_buffer): New function.
9154 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
9155 * dispnew.c (Flast_nonminibuf_frame): New function.
9156 * buffer.c (Fpop_to_buffer): Move to window.el.
9157
91582008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9159
9160 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
9161
91622008-06-05 Kenichi Handa <handa@m17n.org>
9163
9164 * coding.c (detect_coding): Fix previous change.
9165 (detect_coding_system): Likewise.
9166
91672008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9168
9169 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
9170
9171 * keymap.c (Vminibuffer_local_filename_must_match_map):
9172 Rename from Vminibuffer_local_must_match_filename_map.
9173 (syms_of_keymap):
9174 * minibuf.c (Fcompleting_read): Adjust accordingly.
9175 * commands.h: Rename declaration as well.
9176
91772008-06-05 Kenichi Handa <handa@m17n.org>
9178
9179 * font.c (Ffont_spec): Don't use font_parse_family_registry for
9180 family name.
9181 (Ffont_put): Likewise.
9182
9183 * fontset.c (fontset_find_font): Call font_open_for_lface with the
9184 current font-spec.
9185
9186 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
9187 is unspecified.
9188
9189 * xfaces.c (realize_x_face): If the font-related face attributes
9190 are the same as those of default face, realize a new fontset from
9191 default->fontset.
9192 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
9193
91942008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9195
9196 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
9197 (move_it_in_display_line): New wrapper.
9198
9199 * window.c (window_scroll_pixel_based_preserve_x)
9200 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
9201 (window_scroll_pixel_based, window_scroll_line_based):
9202 Use them to preserve column positions.
9203 (syms_of_window): Initialize them.
9204
9205 * indent.c (Fvertical_motion): Extend first arg to allow passing an
9206 (HPOS . VPOS) pair.
9207
9208 * dispextern.h (move_it_in_display_line): Declare.
9209
92102008-06-05 Juanma Barranquero <lekktu@gmail.com>
9211
9212 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
9213 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
9214 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
9215
92162008-06-04 Juanma Barranquero <lekktu@gmail.com>
9217
9218 * window.c (Fset_window_parameter): Doc fix.
9219 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
9220
92212008-06-04 Joakim Verona <joakim@verona.se>
9222
9223 * window.h (struct window): Add new member window_parameters.
9224
9225 * window.c (Fwindow_parameters, Fwindow_parameter)
9226 (Fset_window_parameter): New defuns.
9227 (syms_of_window): Defsubr the new defuns.
9228 (make_window): Initialize window_parameters to nil.
9229
92302008-06-04 John Paul Wallington <jpw@pobox.com>
9231
9232 * eval.c (Fdefmacro): Doc fix.
9233
92342008-06-04 Kenichi Handa <handa@m17n.org>
9235
9236 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9237 Be sure to call setup_coding_system when we find a proper coding system.
9238 (detect_coding_system): Fix handling of coding->head_ascii.
9239
92402008-06-03 Andreas Schwab <schwab@suse.de>
9241
9242 * font.c (font_prop_validate_spacing): Fix last change.
9243
92442008-06-03 Kenichi Handa <handa@m17n.org>
9245
9246 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9247 (font_parse_fcname): Fix handling of unknown key.
9248
9249 * xfont.c (xfont_list): Try an alias.
9250
9251 * charset.c (char_charset): Return NULL if the arg charset_list is
9252 specified and C doesn't belong to any of them.
9253
92542008-06-02 Chip Coldwell <coldwell@redhat.com>
9255
9256 * font.c (font_pixel_size): Don't take cdr of an integer.
9257
92582008-06-02 Jim Meyering <meyering@redhat.com>
9259
9260 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9261 * alloc.c (xfree): Return right away for a NULL arg.
9262 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9263 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9264 * mac.c (create_apple_event_from_event_ref): Likewise.
9265 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9266 Likewise.
9267 * doprnt.c (doprnt1): Likewise.
9268 * frame.c (frame): Likewise.
9269 * keyboard.c (wipe_kboard): Likewise.
9270 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9271 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9272 * term.c (tty_default_color_capabilities, maybe_fatal)
9273 (delete_tty): Likewise.
9274 * w16select.c (string): Likewise.
9275 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9276 * w32bdf.c (w32_free_bdf_font): Likewise.
9277 * w32fns.c (w32_unload_font): Likewise.
9278 * w32font.c (w32font_close): Likewise.
9279 * window.c (size_window): Likewise.
9280 * xselect.c (receive_incremental_selection): Likewise.
9281 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9282 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9283 * w32.c (stat): Likewise.
9284
9285 Remove useless if-before-free tests.
9286 * editfns.c (Fset_time_zone_rule): Likewise.
9287 * lread.c (nosuffix): Likewise.
9288 * ralloc.c (get_bloc): Likewise.
9289 * regex.c (reg_free): Likewise.
9290 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9291 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9292 * xsmfns.c (smc_save_yourself_CB): Likewise.
9293
92942008-06-02 Kenichi Handa <handa@m17n.org>
9295
9296 * font.c (font_find_for_lface): Handle float font size.
9297 (font_open_for_lface): Likewise.
9298
9299 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9300 comparing the properties.
9301
93022008-06-01 Jason Rumney <jasonr@gnu.org>
9303
9304 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9305 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9306 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9307 Don't add empty script list.
9308 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9309
93102008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9311
9312 * Makefile.in (dot, dotdot): Remove, update users.
9313 ".." has been used elsewhere in the file for a long time.
9314 (LIBXT_STATIC): Remove conditional based on unused variable.
9315
93162008-06-01 Miles Bader <miles@gnu.org>
9317
9318 * xfaces.c (Vface_remapping_alist): New variable.
9319 (syms_of_xfaces): Initialize it.
9320 (enum named_merge_point_kind): New type.
9321 (struct named_merge_point): Add `named_merge_point_kind' field.
9322 (push_named_merge_point): Make cycle detection respect different
9323 named-merge-point kinds.
9324 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9325 Remove face-name alias resolution.
9326 (lface_from_face_name): New definition using
9327 `lface_from_face_name_no_resolve'.
9328 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9329 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9330 (get_lface_attributes): New definition that layers face-remapping on
9331 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9332 (lookup_basic_face): New function.
9333 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9334 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9335 `get_lface_attributes'.
9336 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9337 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9338 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9339
9340 * xdisp.c (init_iterator): Pass base_face_id through
9341 `lookup_basic_face' when we actually use it as a face-id.
9342 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9343 DEFAULT_FACE_ID.
9344
9345 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9346 lookup the initial face-id.
9347
9348 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9349
93502008-06-01 Juanma Barranquero <lekktu@gmail.com>
9351
9352 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9353 (Fremove_text_properties): Fix typos in docstrings.
9354
93552008-05-31 Kenichi Handa <handa@m17n.org>
9356
9357 * font.c (font_list_entities): Fix the car part of data to be
9358 stored in the cache.
9359
9360 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9361
93622008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9363
9364 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9365 Add a `test' argument so another predicate than `equal' can be used.
9366 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9367 (map_char_table): Remove unused vars `c' and `i'.
9368 * lisp.h (Foptimize_char_table): Adjust declaration.
9369 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9370
93712008-05-30 Kenichi Handa <handa@m17n.org>
9372
9373 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9374 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9375 defined.
9376
93772008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9378
9379 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9380 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9381 frame-local settings for the same variable.
9382
93832008-05-30 Kenichi Handa <handa@m17n.org>
9384
9385 * fontset.c (Ffont_info): Move to font.c.
9386 (syms_of_fontset): Delete defsubr of Sfont_info.
9387
9388 * font.c (font_style_to_value, font_score): Delete casting of the
9389 args to xstcasecmp.
9390 (register_font_driver): Increment num_font_drivers only when
9391 registering the driver globally.
9392 (Ffont_info): Move from fontset.c. Handle a font object too.
9393 (syms_of_font): Defsubr Sfont_info.
9394
93952008-05-29 Kenichi Handa <handa@m17n.org>
9396
9397 * coding.h (enum define_coding_utf8_arg_index): New enum.
9398 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9399 coding_attr_utf_bom.
9400 (enum utf_bom_type): Rename from utf_16_bom_type.
9401 (struct utf_16_spec): Adjust for the above change.
9402 (struct coding_system): Add utf_8_bom in `spec' union.
9403
9404 * coding.c (CODING_UTF_8_BOM): New macro.
9405 (enum coding_category): Delete coding_category_utf_8, add
9406 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9407 coding_category_utf_8_sig.
9408 (CATEGORY_MASK_UTF_8): Delete it.
9409 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9410 (CATEGORY_MASK_UTF_8_SIG): New macros.
9411 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9412 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9413 CATEGORY_MASK_UTF_8_SIG.
9414 (CATEGORY_MASK_UTF_8): New macro.
9415 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9416 (detect_coding_utf_8): Check BOM.
9417 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9418 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9419 (encode_coding_utf_16): Likewise.
9420 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9421 (detect_coding, detect_coding_system): Handle utf-8-auto.
9422 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9423 (syms_of_coding): Fix setting up of Vcoding_category_table.
9424
94252008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9426
9427 * process.c (Faccept_process_output): If `millisec' is non-nil,
9428 `seconds' default to 0.
9429 (wait_reading_process_output): Also return non-nil if we read output
9430 from a non-running process.
9431
94322008-05-29 Jason Rumney <jasonr@gnu.org>
9433
9434 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9435 `raster' specified.
9436 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9437 in the uniscribe backend, but disallow any font that has no
9438 unicode subrange support.
9439
94402008-05-29 Juanma Barranquero <lekktu@gmail.com>
9441
9442 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9443 Fix typos in docstrings.
9444
94452008-05-29 Kenichi Handa <handa@m17n.org>
9446
9447 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9448 (Fx_family_fonts): Set frame correctly.
9449
94502008-05-28 Jason Rumney <jasonr@gnu.org>
9451
9452 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9453
94542008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9455
9456 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9457 calling build_annotations.
9458
94592008-05-28 Juanma Barranquero <lekktu@gmail.com>
9460
9461 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9462 (Fencode_coding_string):
9463 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9464 <latin-extra-code-table>: Fix typos in docstrings.
9465 (syms_of_coding) <coding-system-alist>: Doc fix.
9466 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9467
94682008-05-28 Kenichi Handa <handa@m17n.org>
9469
9470 * fontset.c (Ffont_info): Don't call font_close_object.
9471
9472 * font.c (font_parse_family_registry): Use Ffont_put to validate
9473 foundry and family.
9474 (font_delete_unmatched): Don't check spacing.
9475 (font_list_entities): Add spacing to the spec to list fonts.
9476
9477 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9478 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9479
9480 * coding.c (encode_coding_raw_text): Fix previous change.
9481 (encode_coding_object): When the dst_object is a buffer and is
9482 different from src_object, move gap to PT.
9483
94842008-05-27 Chong Yidong <cyd@stupidchicken.com>
9485
9486 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9487
94882008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9489
9490 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9491 all branches. Compute it differently.
9492
9493 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9494
94952008-05-27 Juanma Barranquero <lekktu@gmail.com>
9496
9497 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9498 into "else if () ... else ...".
9499
95002008-05-27 Jason Rumney <jasonr@gnu.org>
9501
9502 * w32font.c (w32font_open_internal): Determine if glyph indices
9503 are likely to work here.
9504
95052008-05-27 Chong Yidong <cyd@stupidchicken.com>
9506
9507 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9508 draw overlap glyphs with appropriate highlighting.
9509
95102008-05-27 Kenichi Handa <handa@m17n.org>
9511
9512 * xfont.c (xfont_open): Fix calculation of font->average_width.
9513
95142008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9515
9516 * casefiddle.c (casify_object): Try to guess better whether the
9517 argument is a byte or a char.
9518
95192008-05-26 Andreas Schwab <schwab@suse.de>
9520
9521 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9522 Always send multiples of format size.
9523
9524 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9525
95262008-05-26 Jason Rumney <jasonr@gnu.org>
9527
9528 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9529 (compute_metrics): Don't set failure if we just cleared the cache.
9530 (w32_weight_table): Remove unused variable.
9531 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9532 backwards compatibility.
9533
95342008-05-25 Kenichi Handa <handa@m17n.org>
9535
9536 * w32term.c (x_draw_glyph_string):
9537 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9538
9539 * xfaces.c: Delete unused function prototypes.
9540 (xstrlwr, font_frame): Delete them.
9541 (clear_face_cache): Delete unused variable.
9542
9543 * xftfont.c (xftfont_open): Delete unused variable.
9544 If underline_thickness is not 1, adjust underline_position.
9545
9546 * ftxfont.c (ftxfont_open): Delete unused variable.
9547
9548 * fontset.c (face_for_char): Optimize for the case of no charset
9549 property.
9550
9551 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9552 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9553 (otf_open, font_otf_capability, generate_otf_features)
9554 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9555 Comment out by surrounding "#if 0" and "#endif" for the moment.
9556 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9557 (syms_of_font): Codes for accessing above commented out.
9558
95592008-05-24 Eli Zaretskii <eliz@gnu.org>
9560
9561 * w32proc.c: Include dispextern.h.
9562
9563 * w32.c: Include dispextern.h.
9564
95652008-05-23 Juanma Barranquero <lekktu@gmail.com>
9566
9567 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9568 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9569 Fix typos in docstrings.
9570
95712008-05-23 Jason Rumney <jasonr@gnu.org>
9572
9573 * xsmfns.c: Remove includes that are already included by config.h.
9574
95752008-05-23 Kenichi Handa <handa@m17n.org>
9576
9577 * charset.c (Qemacs, charset_emacs): New variables.
9578 (char_charset): Fix for non-Unicode characters.
9579 (syms_of_charset): Define charset_emacs.
9580
9581 * w32term.c (x_draw_glyph_string): Be sure to update
9582 s->underline_thickness and s->underline_position. Be sure to draw
9583 underline within the current line area.
9584
9585 * xterm.c (x_draw_glyph_string): Be sure to update
9586 s->underline_thickness and s->underline_position. Be sure to draw
9587 underline within the current line area.
9588
9589 * fontset.c: Delete unused variables and add casting for char *
9590 throughout the file.
9591 (fontset_font): Try the fallback fonts of the current fontset
9592 before consulting the default fontset.
9593
9594 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9595
9596 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9597
95982008-05-22 Jason Rumney <jasonr@gnu.org>
9599
9600 * font.c: Don't include strings.h.
9601
9602 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9603
9604 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9605 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9606 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9607 to call xstrcasecmp.
9608
9609 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9610
9611 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9612
9613 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9614
9615 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9616
96172008-05-22 Kenichi Handa <handa@m17n.org>
9618
9619 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9620
9621 * font.c (font_prop_validate_style): Adjust for the format
9622 change of font_style_table.
9623
9624 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9625 two args.
9626
9627 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9628 two args.
9629
96302008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9631
9632 * minibuf.c (keys_of_minibuf): Delete.
9633 * lisp.h (keys_of_minibuf): Delete.
9634 * emacs.c (main): Don't call keys_of_minibuf.
9635
96362008-05-22 Kenichi Handa <handa@m17n.org>
9637
9638 * ftfont.c (ftfont_resolve_generic_family): Rename from
9639 ftfont_list_generic_family. Return a single family for each
9640 generic family.
9641 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9642 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9643 Call font_add_log.
9644 (ftfont_match): Call font_add_log.
9645
9646 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9647 (FONT_DEBUG): Define it.
9648 (font_add_log): Extern it.
9649 (font_assert): Rename from xassert.
9650
9651 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9652 (xfont_list_family): Call font_add_log.
9653 (xfont_match): Likewise.
9654 (memq_no_quit): Delete.
9655
9656 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9657 call of Ffont_xlfd_name.
9658
9659 * xfaces.c (struct table_entry, slant_table, weight_table)
9660 (swidth_table): Move to font.c.
9661
9662 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9663 xassert are changed to font_assert. Delete many unused variables.
9664 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9665 New variables.
9666 (struct table_entry): Move from xfaces.c and modified.
9667 (weight_table, slant_table, width_table): Move from xfaces.c and
9668 contents adjusted for the change of struct table_entry.
9669 (font_style_to_value, font_style_symbolic): Adjust for the
9670 format change of font_style_table.
9671 (font_parse_family_registry): Don't overwrite existing foundry and
9672 family of font_spec.
9673 (font_score): Fix calculation of diff for sizes.
9674 (font_sort_entites): Call font_add_log.
9675 (font_delete_unmatched): Return a newly created list.
9676 (font_list_entities): Fix previous change. Call font_add_log.
9677 (font_matching_entity, font_open_entity, font_close_entity):
9678 Call font_add_log.
9679 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9680 (Finternal_set_font_style_table): Delete.
9681 (BUILD_STYLE_TABLE): New macro.
9682 (build_style_table): New function.
9683 (Vfont_log, font_log_env_checked): New variables.
9684 (font_add_log): New function.
9685 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9686 Declare Lisp variables "font-weight-table", "font-slant-table",
9687 "font-width-table", and "font-log". Initialize font_style_table.
9688
96892008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9690
9691 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9692
96932008-05-21 Seiji Zenitani <zenitani@mac.com>
9694 Ryo Yoshitake <ryo@shiftmode.net>
9695
9696 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9697 (Vframe_alpha_lower_limit): New variable.
9698 (x_set_alpha): New function.
9699
9700 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9701
9702 * xfns.c (x-create-frame, Qalpha):
9703 Initialize the frame parameter `alpha'.
9704 * xterm.c (OPAQUE, OPACITY): New.
9705 (x_set_frame_alpha): New function.
9706 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9707
9708 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9709 * w32fns.c (w32_frame_parm_handlers): Likewise.
9710
97112008-05-20 Jason Rumney <jasonr@gnu.org>
9712
9713 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9714 truetype fonts to opentype list.
9715
97162008-05-20 Juanma Barranquero <lekktu@gmail.com>
9717
9718 * fontset.c (Ffontset_info): Doc fix.
9719 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9720 <ignore-relative-composition>: Fix typos in docstrings.
9721
9722 * font.c (syms-of-font) <font-encoding-alist>:
9723 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9724 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9725 (Ffont_otf_alternates): Doc fixes.
9726
97272008-05-20 Kenichi Handa <handa@m17n.org>
9728
9729 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9730 font.h through out the file.
9731 (FONT_DRIVERS): Rename from FONTOBJ.
9732 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9733 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9734
9735 * emacs.c (main): Call syms_of_font unconditionally.
9736
9737 * font.h (find_font_encoding): Extern it.
9738
9739 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9740 fontset.c.
9741 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9742 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9743 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9744 only when HAVE_WINDOW_SYSTEM is defined.
9745 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9746 when HAVE_WINDOW_SYSTEM is defined.
9747
9748 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9749 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9750
9751 * xfaces.c: Include font.h unconditionally.
9752 (merge_face_ref, merge_face_vectors)
9753 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9754
97552008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9756
9757 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9758 indirect_variable.
9759 * eval.c (lisp_indirect_variable): New fun.
9760 (Fuser_variable_p): Use it.
9761
97622008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9763
9764 * lisp.h (indirect_variable):
9765 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9766 Use Lisp_Symbol pointers rather than Lisp_Object.
9767 Adjust callers.
9768 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9769 To this end, change calling-convention.
9770
9771 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9772 if some non-hidden buffers are selected by string&pred.
9773
97742008-05-19 Chong Yidong <cyd@stupidchicken.com>
9775
9776 * process.c (wait_reading_process_output): Always check status
9777 when in batch mode.
9778
97792008-05-19 Kenichi Handa <handa@m17n.org>
9780
9781 * font.c (font_list_entities): Fix handling of cache.
9782 (font_matching_entity): Likewise.
9783
9784 * ftfont.c (cs_iso8859_1): Delete.
9785 (ft_face_cache): New variable.
9786 (struct ftfont_info): New member fc_charset_idx.
9787 (ftfont_build_basic_charsets): Delete.
9788 (fc_charset_table): New variable.
9789 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9790 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9791 Callers changed.
9792 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9793 (ftfont_spec_pattern): New argument fc_charset_idx.
9794 Check registry more rigidly. Change callers.
9795 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9796 change of :font-entity property of the font.
9797
9798 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9799 property of the font.
9800
98012008-05-18 Juanma Barranquero <lekktu@gmail.com>
9802
9803 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9804 (Funencodable_char_position, Fcheck_coding_systems_region)
9805 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9806 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9807 (Ffind_operation_coding_system, Fset_coding_system_priority)
9808 (Fcoding_system_eol_type): Doc fixes.
9809
98102008-05-17 Glenn Morris <rgm@gnu.org>
9811
9812 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9813
98142008-05-16 Eli Zaretskii <eliz@gnu.org>
9815
9816 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9817 and st_gid.
9818
9819 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9820 HAVE_WINDOW_SYSTEM is not defined.
9821
9822 * xfaces.c (merge_face_ref, merge_face_vectors)
9823 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9824 HAVE_WINDOW_SYSTEM is defined.
9825 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9826
98272008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9828
9829 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9830
98312008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9832
9833 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9834
98352008-05-15 Kenichi Handa <handa@m17n.org>
9836
9837 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
9838 preference.
9839
98402008-05-15 Glenn Morris <rgm@gnu.org>
9841
9842 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
9843
98442008-05-15 Chong Yidong <cyd@stupidchicken.com>
9845
9846 * fns.c (init_fns): Don't initialize weak_hash_tables here.
9847 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
9848
9849 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
9850
98512008-05-15 Kenichi Handa <handa@m17n.org>
9852
9853 * ftfont.c (ftfont_list): Downcase family name to check generic
9854 families.
9855
9856 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
9857 font-spec for QCfont value.
9858
9859 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
9860 buffer. Check the return value of it.
9861
98622008-05-14 Jason Rumney <jasonr@gnu.org>
9863
9864 * w32term.c (w32_get_glyph_overhangs): Remove.
9865 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
9866
98672008-05-14 Kenichi Handa <handa@m17n.org>
9868
9869 * font.c (font_prop_validate): Make nil a valid value.
9870 (font_clear_cache): Check if the cached vector of entities is nil
9871 or not.
9872
98732008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9874
9875 * emacs.c (main_thread): Conditionalize on
9876 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9877 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
9878
9879 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
9880 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
9881 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9882
98832008-05-14 Kenichi Handa <handa@m17n.org>
9884
9885 * coding.c (detect_coding_iso_2022): Ignore a coding category that
9886 has no corresponding coding system.
9887
98882008-05-14 Jason Rumney <jasonr@gnu.org>
9889
9890 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
9891
9892 * w32font.h (w32font_open_internal): Update declaration.
9893
9894 * w32font.c (w32font_open_internal): Change last argument from
9895 w32font_info struct to font object. Fill in font object from
9896 font_entity. Get Outline metrics if possible. Use them to
9897 calculate underline position and thickness. Use xlfd name as name
9898 property. Don't set codepage.
9899 (w32font_open): Pass font_object to w32font_open_internal. Don't
9900 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
9901 (w32font_draw): Use s->font.
9902 (clear_cached_metrics): Don't clear non-existent blocks.
9903
9904 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
9905 font was not found.
9906 (x_draw_glyph_string): Use underline position and thickness from font.
9907
9908 * w32uniscribe.c (uniscribe_open): Pass font_object to
9909 w32font_open_internal.
9910
99112008-05-14 Kenichi Handa <handa@m17n.org>
9912
9913 These changes are to delete all legacy font-handling codes, and
9914 make Emacs use only font-backends.
9915
9916 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
9917 (frame.o, image.o, print.o): Depend on $(FONTSRC).
9918
9919 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
9920
9921 * charset.h (Vcharset_non_preferred_head)
9922 (Vcurrent_iso639_language): Extern them.
9923
9924 * charset.c (Vcharset_non_preferred_head): New variable.
9925 (Vcurrent_iso639_language): New variable.
9926 (syms_of_charset): Declare it as a Lisp variable.
9927 (char_charset): Don't check non preferred charsets. As a last
9928 resort, return charset_unicode.
9929 (Fset_charset_priority): Update Vcharset_non_preferred_head.
9930
9931 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
9932 conditionals. Don't check enable_font_backend. Delete all codes
9933 used only when USE_FONT_BACKEND is not defined.
9934
9935 * dispextern.h (struct glyph_string): Change type of `font' to
9936 `struct font *'.
9937 (struct glyph_string): New member underline_position and
9938 underline_thickness.
9939 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
9940 (struct face): Change type of `font' to `struct font *'. Remove
9941 members `font_name', `font_info_id'.
9942 (per_char_metric, encode_char): Delete externs.
9943 (calc_pixel_width_or_height): Adjust the prototype.
9944
9945 * emacs.c (enable_font_backend): Delete extern.
9946 (main): Don't set enable_font_backend. Don't check the command
9947 line argument "-disable-font-backend".
9948
9949 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
9950 (enum font_property_index): New members FONT_DPI_INDEX,
9951 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
9952 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
9953 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
9954 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
9955 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
9956 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
9957 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
9958 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
9959 (struct font_spec, struct font_entity): New structs.
9960 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
9961 (struct font): Many members from old "struct font_info" moved to
9962 here. Members font and entity deleted.
9963 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
9964 the new font-related objects.
9965 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
9966 (CHECK_FONT_GET_OBJECT): Likewise.
9967 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
9968 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
9969 (struct font_driver): New members case_sensitive anc check. Type
9970 of the member list and open changed.
9971 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
9972 (font_symbolic_width, font_find_object, font_get_spec)
9973 (font_set_lface_from_name): Delete extern.
9974 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
9975
9976 * font.c: Include <strings.h>.
9977 (enable_font_backend): Delete it.
9978 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
9979 (CHECK_VALIDATE_FONT_SPEC): Delete it.
9980 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
9981 (null_string): Delete it.
9982 (null_vector): Make it static.
9983 (font_family_alist): Delete it.
9984 (Qnormal): Extern it.
9985 (QCextra, QClanguage): Delete it.
9986 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
9987 (font_make_spec, font_make_entity, font_make_object)
9988 (font_intern_prop): Renamed from intern_downcase. Don't downcase
9989 the string. Callers changed.
9990 (font_pixel_size): Adjusted for the format change of font-related
9991 objects.
9992 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
9993 (font_style_to_value, font_style_symbolic): New function.
9994 (build_font_family_alist): Delete it.
9995 (font_registry_charsets): Use Fassoc_string instead of
9996 assq_no_quit.
9997 (font_prop_validate_symbol): Don't return null_string.
9998 (font_prop_validate_style): Adjusted for the change of
9999 style-related values in a font vector.
10000 (font_property_table): Delete entries for QClanguage and
10001 QCantialias, add entries for QCavgwidth.
10002 (get_font_prop_index): Delete the 2nd argument FROM.
10003 (font_prop_validate): Arguments changed.
10004 (font_put_extra): Adjusted for the change of font-related objects.
10005 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
10006 (font_parse_fcname, font_unparse_fcname)
10007 (font_prepare_composition): Likewise.
10008 (font_parse_family_registry): Renamed from font_merge_old_spec.
10009 (otf_open): Delete the 1st arg entity.
10010 (font_otf_capability): Adjusted for the above change.
10011 (font_score): New arg alternate_families. Adjusted for the change
10012 of font-related objects.
10013 (font_sort_entites): New arg best_only.
10014 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
10015 Delete them.
10016 (font_match_p): Check alternate families.
10017 (font_find_object): Delete it.
10018 (font_check_object): New function.
10019 (font_clear_cache): Adjusted for the change of font-related objects.
10020 (font_delete_unmatched): New arg.
10021 (font_list_entities): Call font_driver->list with a spec that
10022 doesn't specify style-related properties.
10023 (font_matching_entity): Arguments changed. Caller changed.
10024 (font_open_entity): Adjusted for the change of font-related objects.
10025 (font_close_object, font_has_char, font_encode_char)
10026 (font_get_name, font_get_spec): Likewise.
10027 (font_spec_from_name, font_clear_prop, font_update_lface):
10028 New functions.
10029 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
10030 (font_prepare_for_face, font_done_for_face, font_open_by_name)
10031 (font_at): Adjusted for the change of font-related objects.
10032 (font_range): New function.
10033 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
10034 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
10035 (Fcopy_font_spec, Fmerge_font_spec): New function.
10036 (Ffont_family_list): Renamed from list-families.
10037 (Finternal_set_font_style_table): Arguments changed.
10038 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
10039 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
10040 change of font-related objects.
10041 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
10042
10043 * fontset.h (struct font_info): Delete it. Most members go to
10044 struct font.
10045 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
10046 (enum FONT_SPEC_INDEX): Delete it.
10047 (font_info, list_fonts_func, load_font_func, query_font_func)
10048 (set_frame_fontset_func, find_ccl_program_func)
10049 (get_font_repertory_func, new_fontset_from_font_name): Delete
10050 externs.
10051 (fontset_from_font_name): Extern it.
10052 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
10053 (FONT_INFO_FROM_FACE): Deleted.
10054 (face_for_font): Adjust prototype.
10055
10056 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
10057 conditionals. Don't check enable_font_backend. Delete all codes
10058 used only when USE_FONT_BACKEND is not defined.
10059 (get_font_info_func, list_font_func, load_font_func)
10060 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
10061 (get_font_repertory_func): Delete them.
10062 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
10063 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
10064 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
10065 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
10066 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
10067 (fontset_compare_rfontdef): New function.
10068 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
10069 rfont-defs by qsort. Adjusted for the change of font-group vector.
10070 (load_font_get_repertory): Deleted.
10071 (fontset_find_font): Use new macros to ref/set elements of
10072 font-def and rfont-def.
10073 (fontset_font): Fix the timing of remembering that no font for C.
10074 (free_face_fontset): Do nothing if the face has no fontset.
10075 (face_suitable_for_char_p): Use new macros to ref/set elements of
10076 rfont-def.
10077 (face_for_char): Likewise. Call face_for_char with font_object.
10078 (fs_load_font): Delete. Delete #pragma surrounding it.
10079 (fs_query_fontset): Use strcasecmp instead of strcmp.
10080 (generate_ascii_font_name): Adjusted for the format change of
10081 font-spec.
10082 (Fset_fontset_font): Likewise. Use new macros to set elements of
10083 font-def.
10084 (Fnew_fontset): Use font_unparse_xlfd to generate
10085 FONTSET_ASCII (fontset).
10086 (new_fontset_from_font_name): Deleted.
10087 (fontset_from_font): Renamed from new_fontset_from_font. Check if
10088 a fontset is already created for the font. FIx updating of
10089 Vfontset_alias_alist.
10090 (fontset_ascii_font): Deleted.
10091 (Ffont_info): Adjusted for the format change of font-spec.
10092 (Finternal_char_font): Likewise.
10093 (Ffontset_info): Likewise.
10094 (syms_of_fontset): Don't check load_font_func.
10095
10096 * fns.c (internal_equal): Handle PREV_FONT.
10097
10098 * frame.h: Delete USE_FONT_BACKEND conditional.
10099
10100 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
10101 conditionals. Don't check enable_font_backend. Delete all codes
10102 used only when USE_FONT_BACKEND is not defined.
10103 (x_set_font): Call x_new_font, not x_new_fontset2.
10104 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
10105 already set for the frame.
10106
10107 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
10108 a font-entity by font_make_entity. Use font_intern_prop instead
10109 of intern_downcase. Use FONT_SET_STYLE to set a style-related
10110 font property. If a font is scalable, set avgwidth property to 0.
10111 Set font-entity property by font_put_extra.
10112 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
10113 (ffont_driver): Adjusted for the change of struct font_driver.
10114 (ftfont_spec_pattern): New function.
10115 (ftfont_list): Return a list, not vector.
10116 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
10117 (ftfont_list_family): Don't downcase names.
10118 (ftfont_free_entity): Deleted.
10119 (ftfont_open): Return a font-object. Adjusted for the change of
10120 struct font. Get underline_thickness and underline_position from
10121 font property. Don't update dpyinfo->smallest_font_height and
10122 dpyinfo->smallest_char_width.
10123 (ftfont_close): Don't free `struct font'.
10124 (ftfont_has_char): Adjusted for the format change of font-entity.
10125 (ftfont_encode_char, ftfont_text_extents): Likewise.
10126
10127 * ftxfont.c (ftxfont_list): Return a list, not vector.
10128 (ftxfont_open): Return a font-object. Adjusted for the change of
10129 struct font. Get underline_thickness and underline_position from
10130 font property. Don't update dpyinfo->smallest_font_height and
10131 dpyinfo->smallest_char_width.
10132 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
10133 (ftxfont_draw): Adjusted for the change of struct font.
10134
10135 * image.c (image_ascent): Don't include "charset.h". Include
10136 "character.h" and "font.h".
10137
10138 * lisp.h (enum pvec_type): New member PREV_FONT.
10139 (Fassoc_string): EXFUN it.
10140
10141 * print.c: Include font.h.
10142 (print_object): Handle font-related objects.
10143
10144 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
10145 conditionals. Don't check enable_font_backend. Delete all codes
10146 used only when USE_FONT_BACKEND is not defined.
10147 (handle_auto_composed_prop): Do nothing if it->f is not on a
10148 window system. Check how many following characters can be
10149 displayed by the same font.
10150 (calc_pixel_width_or_height): Type of the 4th arg is changed to
10151 'struct font *'.
10152 (get_char_face_and_encoding): Assign the whole encoding task to
10153 the `encode-char' method of a font driver.
10154 (fill_composite_glyph_string): Adjusted for the change of `struct
10155 face' and `struct glyph_string'.
10156 (fill_glyph_string): Likewise.
10157 (get_per_char_metric): Arguments changed.
10158 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
10159 and `struct glyph_string'.
10160 (produce_stretch_glyph, calc_line_height_property)
10161 (x_produce_glyphs): Likewise.
10162
10163 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
10164 conditionals. Don't check enable_font_backend. Delete all codes
10165 used only when USE_FONT_BACKEND is not defined. Use
10166 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
10167 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
10168 (Qp): Extern them.
10169 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
10170 Deleted.
10171 (struct font_name): Deleted.
10172 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
10173 (compare_fonts_by_sort_order): New function.
10174 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
10175 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
10176 Deleted.
10177 (Fx_family_fonts): Use font_list_entities, and sort fonts by
10178 compare_fonts_by_sort_order.
10179 (Fx_font_family_list): Call Ffont_family_list.
10180 (face_numeric_value, face_numeric_weight, face_numeric_slant)
10181 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
10182 (face_symbolic_slant, face_symbolic_swidth)
10183 (split_font_name_into_vector, build_font_name_from_vector)
10184 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
10185 (font_rescale_ratio, split_font_name, build_font_name)
10186 (free_font_names, sort_fonts, x_face_list_fonts)
10187 (face_font_available_p, sorted_font_list, cmp_font_names)
10188 (font_list_1, concat_font_list, font_list, remove_duplicates):
10189 Deleted.
10190 (Fx_list_fonts): Use Ffont_list.
10191 (LFACE_AVGWIDTH): Deleted.
10192 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
10193 by FONTP.
10194 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
10195 (set_lface_from_font_name): Delete it.
10196 (set_lface_from_font): Renamed from
10197 set_lface_from_font_and_fontset. Caller changed. Don't set
10198 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
10199 for face.
10200 (merge_face_vectors): Copy font-spec if necessary.
10201 Clear properties of the font-spec if necessary.
10202 (merge_face_ref): Clear properties of the font-spec if necessary.
10203 (Finternal_set_lisp_face_attribute): Likewise.
10204 (set_font_frame_param): Use font_load_for_lface to load a
10205 font-object, and call Fmodify_frame_parameters with it.
10206 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
10207 font name by Ffont_xlfd_name.
10208 (Finternal_lisp_face_attribute_values): Don't check QCweight,
10209 QCslant, and QCwidth.
10210 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
10211 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
10212 Compare fonts by EQ.
10213 (lookup_non_ascii_face): Deleted.
10214 (face_for_font): The 2nd argument changed.
10215 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
10216 Check atomic font properties by case insensitive.
10217 (realize_non_ascii_face): Set face->overstrike correctly.
10218 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
10219 (dump_realized_face): Get font name from
10220 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
10221
10222 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
10223 conditionals. Don't check enable_font_backend. Delete all codes
10224 used only when USE_FONT_BACKEND is not defined.
10225 (xic_create_xfontset): Original code deleted and renamed from
10226 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
10227 (x_make_gc): Don't set GCFont in GCs.
10228 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
10229 opened by "fixed".
10230 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10231 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10232 get_font_repertory_func.
10233
10234 * xfont.c: Include <stdlib.h> and "ccl.h".
10235 (struct xfont_info): New structure.
10236 (xfont_query_font): Deleted.
10237 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10238 moved from xterm.c.
10239 (xfont_driver): Adjusted for the change of struct font_driver.
10240 (compare_font_names): New function.
10241 (xfont_list_pattern): Sort font names case insensitively. Make
10242 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10243 (xfont_list): Return a list, not vector.
10244 (xfont_match): If the font doesn't have QCname property, generate
10245 a name from the other font properties.
10246 (xfont_open): Return a font-object. Adjusted for the change of
10247 struct font. Get underline_thickness and underline_position from
10248 font property. Don't update dpyinfo->smallest_font_height and
10249 dpyinfo->smallest_char_width.
10250 (xfont_close): Don't free struct font.
10251 (xfont_prepare_face): Adjusted for the change of struct font.
10252 (xfont_done_face): Deleted.
10253 (xfont_has_char): Adjusted for the change of struct font.
10254 (xfont_encode_char, xfont_draw): Likewise.
10255 (xfont_check): New function.
10256
10257 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10258 callback function.
10259 (xftfont_match): Adjusted for the format change of font-entity.
10260 (xftfont_open): Adjusted for the format change of font-entity and
10261 font-object. Adjusted for the change of struct font. Return a
10262 font-object. Don't update dpyinfo->smallest_font_height and
10263 dpyinfo->smallest_char_width.
10264 (xftfont_close): Block input while calling XftFontClose.
10265 (xftfont_prepare_face): Don't block input while calling
10266 xftfont_get_colors. Adjusted for the change of struct font.
10267 (xftfont_shape): Return value of error case fixed.
10268
10269 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10270
10271 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10272 conditionals.
10273 (FONT_WIDTH): Return (f)->max_width.
10274 (struct x_display_info): Delete member `font'.
10275 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10276 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10277 (struct x_output): Change type of `font' to `struct font *'.
10278
10279 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10280 conditionals. Don't check enable_font_backend. Delete all codes
10281 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10282 (x_per_char_metric, x_encode_char): Deleted.
10283 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10284 (x_compute_glyph_string_overhangs): Adjusted for the change of
10285 `struct face'.
10286 (x_draw_glyph_string_foreground)
10287 (x_draw_composite_glyph_string_foreground): Likewise.
10288 (x_draw_glyph_string): Likewise. Use font->underline_position and
10289 font->underline_thickness.
10290 (x_new_font): Renamed from x_new_fontset2.
10291 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10292 (x_check_font): Call `check' method of a font driver.
10293 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10294 (x_query_font, x_get_font_repertory): Deleted.
10295 (x_find_ccl_program): Renamed and moved to xfont.c.
10296 (x_redisplay_interface): Adjusted for the change of `struct
10297 redisplay_interface'.
10298
10299 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10300 conditionals. Don't check enable_font_backend. Delete all codes
10301 used only when USE_FONT_BACKEND is not defined. Surround non-used
10302 code by "#ifdef OLD_FONT" and "endif".
10303 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10304
10305 * w32font.h (struct w32font_info): New member.
10306 (FONT_COMPAT): New macro.
10307 (w32font_open_internal): Prototype adjusted.
10308
10309 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10310 OLD_FONT" and "endif".
10311
10312 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10313 conditionals. Don't check enable_font_backend. Delete all codes
10314 used only when USE_FONT_BACKEND is not defined.
10315 (w32font_open): Return a font-object. Make a font-object by
10316 font_make_object. Adjusted for the change of struct w32font_info.
10317 (w32font_close): Don't free struct font. Adjusted for the change
10318 of struct w32font_info.
10319 (w32font_encode_char, w32font_text_extents, w32font_draw):
10320 Adjusted for the change of struct w32font_info.
10321 (w32font_draw): Likewise.
10322 (w32font_list_internal): Return a list, not vector.
10323 (w32font_open_internal): Change the 4th arg to font-object.
10324 Adjusted for the change of struct w32font_info and font-object format.
10325 (add_font_name_to_list): Don't downcase names.
10326 (w32_enumfont_pattern_entity): Make a font-entity by
10327 font_make_entity. Adjusted for the format change of font-entity.
10328 Use FONT_SET_STYLE to set a style-related font property. If a
10329 font is scalable, set avgwidth property to 0. Set font-entity
10330 property by font_put_extra.
10331 (font_matches_spec): Adjusted for the format change of font-entity.
10332 (w32_weight_table, w32_decode_weight): New variables.
10333 (w32_encode_weight): New function.
10334 (fill_in_logfont): Adjusted for the format change of font-spec.
10335 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10336 weight value.
10337 (w32font_driver): Adjusted for the change of struct font_driver.
10338
10339 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10340 conditionals. Don't check enable_font_backend. Surround non-used
10341 code by "#ifdef OLD_FONT" and "endif".
10342 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10343 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10344
10345 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10346 conditionals. Don't check enable_font_backend. Delete all codes
10347 used only when USE_FONT_BACKEND is not defined. Surround non-used
10348 code by "#ifdef OLD_FONT" and "endif".
10349
10350 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10351 (uniscribe_open): Return value changed to font-object.
10352 Adjusted for the format change of font-object.
10353 (uniscribe_otf_capability): Adjusted for the change of struct font.
10354 (add_opentype_font_name_to_list): Don't downcase names.
10355 (uniscribe_font_driver): Adjusted for the change of struct
10356 font_driver.
10357
103582008-05-13 Chong Yidong <cyd@stupidchicken.com>
10359
10360 * dispnew.c (update_frame_1): Check if tty output is still valid
10361 before flushing it.
10362
103632008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10364
10365 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10366 to Gtk+ menus.
10367
103682008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10369
10370 * dired.c (file_name_completion): Tweak the code so as to always do it
10371 in a single pass. Tighten the scope of some variables.
10372
10373 * dired.c (Qdefault_directory): New var.
10374 (file_name_completion): Use it instead of Fexpand_file_name.
10375 (syms_of_dired): Initialize it.
10376
103772008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10378
10379 * fileio.c (double_dollars): Remove dead code.
10380
103812008-05-10 Eli Zaretskii <eliz@gnu.org>
10382
10383 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10384 Mention w32-get-true-file-attributes in doc string.
10385
10386 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10387
103882008-05-09 Glenn Morris <rgm@gnu.org>
10389
10390 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10391 2008-04-23.
10392
103932008-05-09 Eli Zaretskii <eliz@gnu.org>
10394
10395 Support for reporting owner and group of each file on MS-Windows:
10396 * dired.c (stat_uname, stat_gname): New functions, with special
10397 implementation for w32.
10398 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10399
10400 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10401 (dflt_group_name): New static variable.
10402 (dflt_group): Rename from the_group.
10403 (init_user_info): Init dflt_group fields. Get user's group name
10404 from LookupAccountSid.
10405 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10406 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10407 New initialization states.
10408 (globals_of_w32): Initialize them to zero. Initialize the default
10409 group name to "None".
10410 (GetFileSecurity_Name): New global var, the name of the function
10411 to call for GetFileSecurity.
10412 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10413 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10414 (get_file_security, get_security_descriptor_owner)
10415 (get_security_descriptor_group, is_valid_sid)
10416 (get_file_security_desc, get_rid, get_name_and_id)
10417 (get_file_owner_and_group): New functions.
10418 (stat): Use get_file_security_desc and get_file_owner_and_group to
10419 report the owner and primary group of each file. Don't ignore the
10420 high 32 bits of file's size, now that st_size is 64-bit wide.
10421 Fix test when to get true file attributes.
10422 (init_user_info): Use get_rid instead of equivalent inline code.
10423 (fstat): Don't ignore the high 32 bits of file's size.
10424
104252008-05-09 Chong Yidong <cyd@stupidchicken.com>
10426
10427 * image.c (png_load): Use correct bit-depth for setting background
10428 color.
10429
104302008-05-08 Eli Zaretskii <eliz@gnu.org>
10431
10432 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10433 epa-hook.elc.
10434
104352008-05-08 Juanma Barranquero <lekktu@gmail.com>
10436
10437 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10438
104392008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10440
10441 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10442 because the original parameters are in pure storage now.
10443 (mac_window): Remove unused params. Update callers.
10444
104452008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10446
10447 * lread.c (substitute_object_recurse): Use lower-level primitives.
10448 Don't signal errors when traversing sub-char-tables.
10449 Don't loop over all the possible characters when traversing char-tables.
10450
10451 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10452 just like we do in print.c.
10453
104542008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10455
10456 * minibuf.c (Ftry_completion): Remove code left over from when we used
10457 scmp instead of Fcompare_strings.
10458
104592008-05-04 Juanma Barranquero <lekktu@gmail.com>
10460
10461 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10462
104632008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10464
10465 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10466 Create bitmap context in native byte order.
10467
10468 * macterm.c (XDrawLine)
10469 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10470 context in native byte order.
10471
104722008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10473
10474 * config.in: Regenerate.
10475
10476 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10477 New definitions for Image I/O support.
10478 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10479 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10480 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10481 (mac_data_provider_release_data, image_load_image_io)
10482 [USE_MAC_IMAGE_IO]: New functions.
10483 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10484 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10485 (init_image_func_pointer) [MAC_OSX]: Remove function.
10486 (image_load_quartz2d) [MAC_OSX]: Check availability of
10487 CGImageCreateWithPNGDataProvider at compile time.
10488 Use lowercase `false' for boolean constant.
10489 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10490 Use image_load_image_io.
10491 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10492 Don't check MyCGImageCreateWithPNGDataProvider.
10493 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10494 Don't call init_image_func_pointer.
10495
10496 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10497
10498 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10499 Make variable non-static.
10500 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10501 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10502
10503 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10504 (RED_FROM_ULONG): Mask off higher bits.
10505 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10506
10507 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10508 Include AvailabilityMacros.h.
10509 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10510 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10511
105122008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10513
10514 * chartab.c (Fset_char_table_range): If range is t, really set all
10515 chars to that value.
10516
105172008-05-03 Eli Zaretskii <eliz@gnu.org>
10518
10519 * dired.c (Ffile_attributes): Don't allow the device number become
10520 negative.
10521
105222008-05-02 Daiki Ueno <ueno@unixuser.org>
10523
10524 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10525
105262008-05-02 Juri Linkov <juri@jurta.org>
10527
10528 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10529 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10530 DEFAULT argument as a list of default values in docstrings.
10531
105322008-05-01 Chong Yidong <cyd@stupidchicken.com>
10533
10534 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10535
105362008-05-01 Martin Rudalics <rudalics@gmx.at>
10537
10538 * dispnew.c (change_frame_size_1): Preserve small windows when
10539 shrinking frames by calling set_window_height|width with third
10540 arg 2.
10541
10542 * window.h (struct window): Replace field too_small_ok by field
10543 resize_proportionally.
10544
10545 * window.c (make_window): Initialize resize_proportionally.
10546 (enlarge_window): Temporarily set resize_proportionally to make
10547 sure that shrink_windows does scale the window proportionally.
10548 (shrink_windows): When window has resize_proportionally set try
10549 to shrink it proportionally by stealing from other windows.
10550 (struct saved_window, Fset_window_configuration)
10551 (compare_window_configurations): Handle resize_proportionally.
10552 (WINDOW_TOTAL_SIZE): New macro.
10553 (window_min_size, shrink_windows, size_window): Use it.
10554 (check_min_window_sizes): Remove. Invalid values of
10555 window-min-height|width are handled by window_min_size_2 now.
10556 (size_window, Fsplit_window, enlarge_window)
10557 (adjust_window_trailing_edge, grow_mini_window): Don't call
10558 check_min_window_sizes.
10559 (window_min_size_2, window_min_size_1, window_min_size):
10560 New argument safe_p for retrieving "safe" minimum sizes.
10561 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10562 (adjust_window_trailing_edge, grow_mini_window):
10563 Adjust arguments of window_min_size... functions.
10564 (shrink_windows): Argument min_size removed. New argument
10565 safe_p allows shrinking windows to their safe minimum sizes.
10566 Calculate minimum size and decide whether a window shall be
10567 deleted for each window individually.
10568 (size_window): When nodelete_p equals 2, tell shrink_windows to
10569 delete windows only if their new minimum size is no more safe.
10570 (shrink_window_lowest_first): Call window_min_size_1 to make
10571 sure to preserve modeline of bottom-most window when resizing
10572 the minibuffer.
10573 (Fset_window_configuration, Fcurrent_window_configuration)
10574 (compare_window_configurations): Do not handle
10575 window-min-height|width any more.
10576 (syms_of_window): Clarify window-min-height|width doc-strings.
10577
105782008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10579
10580 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10581 some more. Copy some of the code from Ftry_completions.
10582 Remove special case code that dates back to initial revision when the
10583 slash was only added when necessary and that can't trigger nowadays.
10584
105852008-04-27 Kenichi Handa <handa@m17n.org>
10586
10587 * font.c (font_prop_validate): Signal `error' instead of `font'.
10588
105892008-04-29 Jason Rumney <jasonr@gnu.org>
10590
10591 * w32fns.c (Fw32_battery_status): New defun.
10592 (syms_of_w32fns): Defsubr it.
10593
105942008-04-28 Andreas Schwab <schwab@suse.de>
10595
10596 * dired.c (file_name_completion): Fix another mixing of encoded
10597 and decoded names.
10598
105992008-04-28 Juanma Barranquero <lekktu@gmail.com>
10600
10601 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10602
106032008-04-27 Juanma Barranquero <lekktu@gmail.com>
10604
10605 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10606
106072008-04-27 Andreas Schwab <schwab@suse.de>
10608
10609 * dired.c (file_name_completion): Fix inappropriate mixing of
10610 encoded and decoded names.
10611
10612 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10613
10614 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10615
106162008-04-26 Eli Zaretskii <eliz@gnu.org>
10617
10618 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10619 2008-03-31, it's not needed anymore with `struct stat' definition
10620 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10621 for the same reasons.
10622
106232008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10624
10625 * m/sparc.h: Additional redefinitions for GNU/Linux.
10626
106272008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10628
10629 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10630 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10631 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10632 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10633 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10634 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10635 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10636 Likewise.
10637
10638 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10639 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10640 (mac_ax_number_of_characters): Add externs.
10641 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10642 [USE_MAC_TSM]: Likewise.
10643 (mac_handle_text_input_event) [MAC_OSX]:
10644 Handle kEventTextInputOffsetToPos for no active input area case.
10645 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10646 (mac_handle_document_access_event)
10647 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10648 (install_application_handler) [MAC_OSX]: Register handlers for
10649 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10650 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10651 Register mac_handle_document_access_event.
10652
10653 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10654 Make functions non-static.
10655
106562008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10657
10658 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10659 (read_file_name_completion_ignore_case, insert_default_directory)
10660 (Qdefault_directory): Move to minibuffer.el.
10661 (Fread_file_name): Call the new `read-file-name' instead.
10662
106632008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10664
10665 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10666 Make function non-static.
10667 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10668 Remove function.
10669 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10670 Move to mactoolbox.c.
10671 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10672
10673 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10674 (mac_rect_make): New macro.
10675
10676 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10677 instead of float.
10678 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10679 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10680 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10681 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10682 CGRectMake.
10683 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10684 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10685 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10686 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10687 instead of WindowRef in argument type.
10688 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10689 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10690 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10691 instead of DISPLAY. All uses changed.
10692 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10693 (x_calc_absolute_position): Simplify so as not to use
10694 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10695
10696 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10697 instead of WindowRef in argument type.
10698 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10699 [TARGET_API_MAC_CARBON]: Remove externs.
10700 (create_apple_event, mac_event_parameters_to_lisp)
10701 [TARGET_API_MAC_CARBON]: Add externs.
10702
10703 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10704 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10705 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10706 is clicked.
10707 (x_activate_menubar): Remove extern for saved_menu_event_location.
10708 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10709 Move from mac.c.
10710
107112008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10712
10713 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10714 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10715
107162008-04-23 Jason Rumney <jasonr@gnu.org>
10717
10718 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10719 attributes only for local files.
10720
10721 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10722 default to Qlocal.
10723
107242008-04-22 Juri Linkov <juri@jurta.org>
10725
10726 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10727 read-buffer-to-switch instead of using the letter "B".
10728
107292008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10730
10731 * fileio.c (Qdefault_directory): New variable.
10732 (Fread_file_name): Use it to pass `dir' to the completion functions.
10733
107342008-04-20 Chong Yidong <cyd@stupidchicken.com>
10735
10736 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10737
107382008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10739
10740 * keyboard.c (Vpre_help_message): Remove.
10741 (show_help_echo): Remove default C code.
10742
10743 * dired.c (directory_files_internal, file_name_completion):
10744 Only call ENCODE_FILE if the string is indeed decoded.
10745
107462008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10747
10748 * Makefile.in (TOOLKIT_DEFINES): Remove.
10749 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10750
107512008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10752
10753 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10754 (mactoolbox.o): New target.
10755
10756 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10757 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10758
10759 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10760 Use mac_set_frame_window_background instead of XSetWindowBackground.
10761 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10762 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10763 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10764 instead of SetWindowTitleWithCFString.
10765 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10766 Move function to mactoolbox.c.
10767 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10768 Use mac_set_window_modified instead of SetWindowModified.
10769 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10770 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10771 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10772 FrontNonFloatingWindow. Use mac_activate_window instead of
10773 ActivateWindow. Use mac_active_non_floating_window instead of
10774 ActiveNonFloatingWindow.
10775 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10776 Use mac_show_hourglass and mac_hide_hourglass.
10777 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10778 instead of GetGlobalMouse.
10779 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10780 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10781 Use mac_bring_window_to_front instead of BringToFront.
10782 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10783 mactoolbox.c.
10784 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10785 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10786 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10787 mactoolbox.c.
10788
10789 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10790 (XtPointer): Move typedef from macmenu.c.
10791 (enum button_type): Move enum from macmenu.c.
10792 (widget_value): Move typedef from macmenu.c.
10793 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10794 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10795 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10796 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10797 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10798 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10799 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10800 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10801 (Selection): Move typedef from macselect.c.
10802 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10803 macterm.c.
10804 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10805 (mac_is_window_collapsed, mac_bring_window_to_front)
10806 (mac_send_window_behind, mac_hide_window, mac_show_window)
10807 (mac_collapse_window, mac_front_non_floating_window)
10808 (mac_active_non_floating_window, mac_activate_window)
10809 (mac_move_window_structure, mac_move_window, mac_size_window)
10810 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10811
10812 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10813 (enum mac_menu_kind): Move enum to mactoolbox.c.
10814 (min_menu_id): Move variable to mactoolbox.c.
10815 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10816 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10817 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10818 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10819 [TARGET_API_MAC_CARBON]: Likewise.
10820 (XtPointer): Move typedef to macgui.h.
10821 (enum button_type): Move enum to macgui.h.
10822 (widget_value): Move typedef to macgui.h.
10823 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10824 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10825 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10826 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10827 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10828 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10829 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10830 (popup_activated_flag): Make variable non-static.
10831 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10832 (add_menu_item, fill_menu, dispose_menus):
10833 Move functions to mactoolbox.c.
10834 (restore_show_help_function, menu_target_item_handler)
10835 (install_menu_target_item_handler, mac_handle_dialog_event)
10836 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10837 [TARGET_API_MAC_CARBON]: Likewise.
10838 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
10839 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10840 (find_and_call_menu_selection, name_is_separator): Make function
10841 non-static.
10842 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
10843 to mactoolbox.c.
10844 (set_frame_menubar): Don't call install_menu_quit_handler.
10845 (menu_item_selection): New variable.
10846 (mac_menu_show): Use create_and_show_popup_menu.
10847 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
10848 selection but set variable menu_item_selection. All uses changed.
10849 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
10850 Call install_menu_quit_handler. Move to mactoolbox.c.
10851
10852 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
10853 (Selection): Move typedef to macgui.h.
10854 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
10855 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
10856 Make variables non-static.
10857 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10858 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
10859 Make functions non-static.
10860 (Vmac_service_selection) [MAC_OSX]: Likewise.
10861 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
10862 (mac_valid_selection_target_p, mac_clear_selection)
10863 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10864 (mac_put_selection_value, mac_selection_has_target_p)
10865 (mac_get_selection_value, mac_get_selection_target_list)
10866 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
10867 Move functions to mactoolbox.c.
10868 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
10869 Likewise.
10870 (copy_scrap_flavor_data, mac_handle_service_event)
10871 (install_service_handler) [MAC_OSX]: Likewise.
10872 (syms_of_macselect) <Vmac_dnd_known_types>:
10873 Use mac_dnd_default_known_types.
10874
10875 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
10876 Move to mactoolbox.c.
10877 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
10878 (Fx_selection_owner_p): Add EXFUN.
10879 (install_window_handler, remove_window_handler, XSetWindowBackground):
10880 Remove externs.
10881 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
10882 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
10883 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
10884 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
10885 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
10886 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
10887 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
10888 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
10889 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
10890 (create_and_show_popup_menu, mac_get_selection_from_symbol)
10891 (mac_valid_selection_target_p, mac_clear_selection)
10892 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10893 (mac_put_selection_value, mac_selection_has_target_p)
10894 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
10895 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
10896 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
10897 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10898 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
10899 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10900 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
10901 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10902 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10903
10904 * mactoolbox.c: New file.
10905
109062008-04-18 Jason Rumney <jasonr@gnu.org>
10907
10908 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
10909
109102008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10911
10912 * character.c (Fmultibyte_char_to_unibyte):
10913 Return latin1 chars unchanged.
10914
10915 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
10916 relocated if it points to `name'.
10917
109182008-04-17 Kenichi Handa <handa@m17n.org>
10919
10920 * data.c (Faset): Allow setting a multibyte character in an
10921 ASCII-only unibyte string.
10922
10923 * lisp.h (STRING_SET_MULTIBYTE): New macro.
10924
109252008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
10926
10927 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
10928 done in config.h.
10929
109302008-04-16 Juanma Barranquero <lekktu@gmail.com>
10931
10932 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
10933 (Fchar_direction): Add usage in the docstring.
10934
109352008-04-15 Chong Yidong <cyd@stupidchicken.com>
10936
10937 * keyboard.c (read_key_sequence): Remove always-true checks.
10938
109392008-04-14 Jason Rumney <jasonr@gnu.org>
10940
10941 * w32font.c (w32font_open_internal): Set max_bounds.descent in
10942 compatibility struct, for better underline positioning.
10943
109442008-04-13 David Hansen <david.hansen@gmx.net>
10945
10946 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
10947 string.
10948
109492008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
10950
10951 * m/hp800.h (XUINT, XSET): Remove.
10952
109532008-04-12 Juanma Barranquero <lekktu@gmail.com>
10954
10955 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
10956 previous change.
10957
109582008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
10959
10960 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
10961 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
10962
109632008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10964
10965 * keymap.h (map_keymap_canonical): Declare.
10966 * xmenu.c (single_keymap_panes): Use it.
10967
109682008-04-11 Glenn Morris <rgm@gnu.org>
10969
10970 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
10971 set the target's value to that of the alias.
10972
109732008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
10974
10975 * term.c (set_tty_color_mode): Left over typo.
10976
109772008-04-10 Michael Albinus <michael.albinus@gmx.de>
10978
10979 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
10980 only after check for file name handler functions. Signal, when
10981 native functionality is not supported.
10982 (syms_of_fileio): Declare it unconditionally.
10983
109842008-04-10 Jason Rumney <jasonr@gnu.org>
10985
10986 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
10987 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
10988
10989 * w32.c (logon_network_drive): Also logon to remote drives that
10990 are mapped to drive letters.
10991
109922008-04-10 Glenn Morris <rgm@gnu.org>
10993
10994 * xdisp.c (truncate-partial-width-windows): Doc fix.
10995
109962008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
10997
10998 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
10999 Move functions to minibuffer.el.
11000 (syms_of_fileio): Don't declare them.
11001
110022008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11003
11004 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
11005 (syms_of_minibuf): Remove its initialization.
11006
11007 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
11008
110092008-04-09 Juanma Barranquero <lekktu@gmail.com>
11010
11011 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
11012
110132008-04-09 Jason Rumney <jasonr@gnu.org>
11014
11015 * makefile.w32-in (distclean): Delete makefile too.
11016 (maintainer-clean): New target.
11017
11018 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
11019
11020 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
11021 for new font backend and composite cases.
11022
110232008-04-09 Jan Djärv <jan.h.d@swipnet.se>
11024
11025 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
11026 Most of the code moved to run_timers.
11027 (do_pending_atimers): Call run_timers.
11028 (run_timers): New function.
11029
11030 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
11031 run atimers.
11032
11033 * process.c (wait_reading_process_output): The same as above.
11034
110352008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11036
11037 * minibuf.c (last_exact_completion): Remove variable.
11038 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
11039 (complete_and_exit_1, complete_and_exit_2)
11040 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
11041 (Fdisplay_completion_list, display_completion_list_1)
11042 (Fminibuffer_completion_help, Fself_insert_and_exit)
11043 (Fexit_minibuffer, Fminibuffer_message): Move functions to
11044 minibuffer.el.
11045 (syms_of_minibuf): Remove corresponding initializations.
11046
11047 * keyboard.c (Qdeactivate_mark): New var.
11048 (command_loop_1): Use it to call `deactivate-mark'.
11049 (syms_of_keyboard): Initialize it.
11050
11051 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
11052 to another frame.
11053 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
11054 Don't call set_tty_color_mode.
11055 (store_frame_param): Reset previous_frame rather than call
11056 set_tty_color_mode.
11057 * term.c (set_tty_color_mode): Rewrite.
11058 * dispextern.h (set_tty_color_mode): New type.
11059 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
11060
110612008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
11062
11063 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
11064 for generic chars, which do not exist any more in emacs-unicode.
11065
110662008-04-08 Michael Albinus <michael.albinus@gmx.de>
11067
11068 * coding.c (detect_coding_emacs_mule)
11069 (Ffind_operation_coding_system): Fix typo.
11070
110712008-04-08 Jason Rumney <jasonr@gnu.org>
11072
11073 * w32uniscribe.c (SNAME): Extract only symbol name.
11074
11075 * w32font.h (struct w32_metric_cache): New struct.
11076 (w32font_info): Use it.
11077 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
11078 (CACHE_BLOCKSIZE): New constants.
11079
11080 * w32font.c (Qja, Qko, Qzh): New symbols.
11081 (syms_of_w32font): Initialise them.
11082 (font_matches_spec): Use them to filter by language.
11083 (recompute_cached_metrics): Remove function.
11084 (compute_metrics, clear_cached_metrics): New functions.
11085 (w32font_encode_char): Use them to manage metric cache.
11086 (w32font_text_extents): Cache metrics for all glyphs on demand.
11087 Delay converting glyph indices to WORD until needed.
11088 (w32font_open_internal): Initialize metric cache to empty.
11089 (registry_to_w32_charset): Charset should always be a symbol.
11090 (fill_in_logfont, list_all_matching_fonts): Family should
11091 always be a symbol.
11092
110932008-04-06 Jason Rumney <jasonr@gnu.org>
11094
11095 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
11096 Give up if glyph indices not supported. Use uniscribe obtained
11097 ABC widths for individual metrics. Map glyph clusters back to
11098 characters using fClusterStart flag. Return number of glyphs
11099 produced, not chars processed.
11100 (uniscribe_shape): Map char at FROM to current glyph.
11101
111022008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11103
11104 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
11105 Use SetMenuItemHierarchicalMenu.
11106
111072008-04-05 Jason Rumney <jasonr@gnu.org>
11108
11109 * image.c (pbm_load): Allow color values up to 65535.
11110 Throw an error if max_color_idx is outside the supported range.
11111 Report an error when image size is invalid.
11112 Read two bytes at a time when raw images have max_color_idx above 255.
11113
111142008-04-05 Eli Zaretskii <eliz@gnu.org>
11115
11116 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11117 cFileName a file name that includes `?' characters, use the 8+3
11118 alias in cAlternateFileName instead.
11119
111202008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
11121
11122 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
11123 append "CCL: Quitted" when the CCL program is quitted.
11124 (setup_ccl_program): Initialize ccl->quit_silently to zero.
11125
11126 * ccl.h (struct ccl_program): New member quit_silently.
11127
111282008-04-05 Chong Yidong <cyd@stupidchicken.com>
11129
11130 * search.c (compile_pattern_1): Treat non-nil and non-string of
11131 search-spaces-regexp as nil.
11132
11133 * minibuf.c (Fassoc_string): Tweak docstring.
11134
111352008-04-05 Eli Zaretskii <eliz@gnu.org>
11136
11137 * dired.c (Ffile_attributes): Support inode numbers wider than 32
11138 bits. Remove ugly WINDOWSNT-specific kludge introduced on
11139 2008-03-14 to force inode be positive.
11140
11141 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
11142 _S_* ones, since we now use our own sys/stat.h.
11143 (stat, fstat): Don't mangle the inode number.
11144 (init_user_info): Don't restrict UID and GID to 0-60000 range.
11145
111462008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
11147
11148 * frame.h (struct frame): Give one more bit to `visible' since we use
11149 values larger than 1 to indicate obscured frames on ttys.
11150
11151 * keymap.c (Qkeymap_canonicalize): New var.
11152 (Fmap_keymap_internal): New fun.
11153 (describe_map): Use keymap-canonicalize.
11154
11155 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
11156 (Fundo_boundary): Set them.
11157 (syms_of_undo): Initialize them.
11158 (record_point): Use them instead of last_point_position*.
11159 (last_undo_buffer): Change type.
11160
111612008-04-04 Jason Rumney <jasonr@gnu.org>
11162
11163 * w32font.c (w32font_text_extents): Use font's ascent and descent.
11164 (recompute_cached_metrics): Don't set ascent and descent per char.
11165
11166 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
11167 (uniscribe_check_otf): Add GC protection before consing.
11168 Rearrange loop for counting features.
11169
111702008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
11171
11172 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
11173 buffer with byte-size of source buffer.
11174
111752008-04-03 Chong Yidong <cyd@stupidchicken.com>
11176
11177 * callint.c (Fcall_interactively): Handle temporary region even
11178 when shift-select-mode is off.
11179
111802008-04-03 Jason Rumney <jasonr@gnu.org>
11181
11182 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
11183
111842008-04-03 Kenichi Handa <handa@m17n.org>
11185
11186 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
11187 (CATEGORY_MASK_UTF_16): Likewise.
11188 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
11189 binary file.
11190 (detect_coding): Add null-byte detection for a binary file.
11191 (detect_coding_system): Likewise.
11192
111932008-04-03 Jason Rumney <jasonr@gnu.org>
11194
11195 * w32uniscribe.c: New file.
11196
11197 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
11198
11199 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
11200
11201 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
11202 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
11203 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
11204 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
11205 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
11206 (Qphonetic): New symbols.
11207 (syms_of_w32font): Initialize them.
11208 (font_supported_scripts): Use them.
11209 (w32font_list_family): List all charsets.
11210 (w32font_text_extents, recompute_cached_metrics): Fix metric
11211 calculations.
11212 (w32_enumfont_pattern_entity): Make full_type a DWORD.
11213 Give opentype fonts their own format.
11214 (font_matches_spec): New arguments backend and logfont.
11215 Handle :otf spec for uniscribe backend.
11216 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
11217 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
11218
11219 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
11220 font backend.
11221 (globals_of_w32fns): Initialize uniscribe font backend.
11222
11223 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
11224 dependencies.
11225 (w32uniscribe.$(O)): New file to build.
11226 (FONT_OBJ): Include w32uniscribe.$(O).
11227 (LIBS): Add uniscribe libraries.
11228
11229 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
11230
112312008-04-02 Chong Yidong <cyd@stupidchicken.com>
11232
11233 * callint.c (Vshift_select_mode): New var.
11234 (Finteractive): Document new ^ spec.
11235 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11236 is present.
11237
11238 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11239 (command_loop_1): Avoid running the direct display versions of
11240 forward-char and backward-char if shift-selection may occur.
11241 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11242 shift-translation takes place.
11243
11244 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11245 avoid clobbering by define-minor-mode.
11246
11247 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11248 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11249
11250 * syntax.c (Fforward_word): Add ^ interactive spec.
11251
11252 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11253 (Fscroll_right): Add ^ interactive spec.
11254
112552008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11256
11257 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11258
11259 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11260
11261 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11262
112632008-03-31 Juri Linkov <juri@jurta.org>
11264
11265 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11266
112672008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11268
11269 * gtkutil.c (xg_set_geometry): Fix indentation.
11270 (xg_resize_outer_widget): Remove.
11271 (x_wm_size_hint_off): Fix indentation.
11272 (xg_frame_set_char_size): Call flush_and_sync after
11273 gtk_window_resize.
11274 (x_wm_set_size_hint): Pass NULL as geometry window to
11275 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11276 Add menu bar and tool bar height to base height.
11277 (xg_update_frame_menubar, free_frame_menubar)
11278 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11279 (update_frame_tool_bar, free_frame_tool_bar):
11280 Change xg_resize_outer_widget to xg_frame_set_char_size.
11281
112822008-03-30 Michael Albinus <michael.albinus@gmx.de>
11283
11284 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11285 (Fdbus_call_method): New parameter TIMEOUT.
11286 (dbus-send-signal): Optimize UNGCPRO call.
11287
112882008-03-29 Juri Linkov <juri@jurta.org>
11289
11290 * window.c (Fdisplay_buffer): Move call to
11291 Vsplit_window_preferred_function out of conditions that check
11292 if window is eligible for vertical splitting.
11293 When Vsplit_window_preferred_function is non-nil, call it and use
11294 its non-nil return value as window. Otherwise, continue doing
11295 vertical splitting using Fsplit_window with arg horflag=nil.
11296 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11297 default value from `split-window' to nil.
11298
112992008-03-29 Juri Linkov <juri@jurta.org>
11300
11301 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11302 for interactive code letters 'b' and 'B'.
11303
113042008-03-29 Eli Zaretskii <eliz@gnu.org>
11305
11306 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11307 multibyte string.
11308
113092008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11310
11311 * keyboard.c (pending_funcalls): New var.
11312 (timer_check): Run it.
11313 (syms_of_keyboard): Initialize it.
11314 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11315 (Vdelete_terminal_functions): New vars.
11316 (syms_of_terminal): Initialize them.
11317 (Fdelete_terminal): Run delete-terminal-functions.
11318 * xdisp.c (safe_eval): Rewrite.
11319 (safe_call2): New fun.
11320 * frame.c (Qdelete_frame_functions): New var.
11321 (syms_of_frame): Initialize it.
11322 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11323 * lisp.h (safe_call2, pending_funcalls): Declare.
11324
113252008-03-28 Andreas Schwab <schwab@suse.de>
11326
11327 * indent.c (Fmove_to_column): Move declaration before statements.
11328
113292008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11330
11331 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11332 (struct frame): Use bit fields for boolean vars.
11333
11334 * process.c (server_accept_connection): Simplify naming.
11335 (emacs_get_tty_pgrp): Use SDATA.
11336
11337 * coding.c (decode_coding_object): Fix last change.
11338
113392008-03-27 Jason Rumney <jasonr@gnu.org>
11340
11341 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11342
113432008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11344
11345 * charset.c (Fdefine_charset_internal): Change the way of
11346 registering charsets in Vcharset_order_list.
11347 (syms_of_charset): Make the charset `eight-bit' supplementary.
11348
113492008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11350
11351 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11352 operations, to avoid having the difference between pointers
11353 overflow.
11354
113552008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11356
11357 * indent.c (check_display_width): New fun.
11358 (scan_for_column): Use it.
11359
11360 * data.c (syms_of_data): Mark most-positive-fixnum and
11361 most-negative-fixnum as constants.
11362
11363 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11364
11365 * indent.c (scan_for_column): Extract from current_column_1.
11366 Merge with the same code from Fmove_to_column.
11367 (current_column_1, Fmove_to_column): Use it.
11368
113692008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11370
11371 * keymap.c (map_keymap_internal): New fun.
11372 (map_keymap): Use it.
11373 (Fmap_keymap_internal): New fun.
11374 (Fmap_keymap): Remove left-out test from before make_save_value.
11375
11376 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11377
11378 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11379 Use XCAR/XCDR.
11380
11381 * process.h (struct Lisp_Process): Remove filter_multibyte.
11382 * process.c (QCfilter_multibyte): Remove.
11383 (setup_process_coding_systems): Don't use filter_multibyte.
11384 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11385 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11386 (Fset_process_filter_multibyte): Change the coding-system to
11387 approximate the previous behavior.
11388 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11389 coding-system.
11390
11391 * coding.c (decode_coding_object): When not decoding into a buffer,
11392 obey the coding system's preference of (uni|multi)byte.
11393
113942008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11395
11396 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11397 every char is changed and has a different byte-length.
11398 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11399 Fix int -> EMACS_INT.
11400
114012008-03-23 David Hansen <david.hansen@gmx.net>
11402
11403 * dbusbind.c (xd_read_message): Remove extra copying of message
11404 strings. Check for NULL `interface' or `member'.
11405
114062008-03-22 Eli Zaretskii <eliz@gnu.org>
11407
11408 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11409 cFileName a file name that includes `?' characters, use the 8+3
11410 alias in cAlternateFileName instead.
11411
114122008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11413
11414 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11415
114162008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11417
11418 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11419 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11420 work on current_buffer only instead (that was already the case
11421 for some of the code anyway).
11422 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11423 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11424 (SET_PT, SET_PT_BOTH): Adjust.
11425 * intervals.h (set_point, temp_set_point, set_point_both)
11426 (temp_set_point_both): Remove redundant declarations.
11427
114282008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11429
11430 * fileio.c (Finsert_file_contents):
11431 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11432 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11433 when buffer != current_buffer anyway.
11434
114352008-03-20 Andreas Schwab <schwab@suse.de>
11436
11437 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11438 as default.
11439
114402008-03-19 Jason Rumney <jasonr@gnu.org>
11441
11442 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11443 (syms_of_w32fns): Initialize them.
11444 (HOURGLASS_ID): New constant.
11445 (x_window_to_frame): Don't check hourglass_window.
11446 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11447 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11448 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11449 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11450 Only change the cursor if hourglass is not active.
11451 (Fx_create_frame): Initialize frame's current_cursor.
11452 (hourglass_atimer): Remove.
11453 (hourglass_started): New function.
11454 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11455 (show_hourglass): Adapt to w32, changing argument to frame.
11456
11457 * w32term.h (struct w32_output): Remove hourglass_window.
11458 Add current_cursor.
11459
11460 * eval.c (call_debugger, Fsignal):
11461 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11462 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11463 (Fexecute_extended_command, cancel_hourglass_unwind):
11464 * minibuf.c (read_minibuf):
11465 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11466
114672008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11468
11469 * window.c (run_funs): New fun.
11470 (run_window_configuration_change_hook): Use it to run the buffer-local
11471 and the global part of the hook.
11472
11473 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11474 (unwind_format_mode_line): Restore selected window.
11475 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11476
114772008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11478
11479 * editfns.c (Fchar_equal): Check they are valid characters.
11480
11481 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11482
114832008-03-17 Andreas Schwab <schwab@suse.de>
11484
11485 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11486 against a charset.
11487
11488 * lisp.h (Fbuffer_list): Declare.
11489
114902008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11491
aac0c6e3
MR
11492 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11493 handlebox_widget is != 0.
11494
114952008-03-16 Juri Linkov <juri@jurta.org>
11496
11497 * callint.c (Fcall_interactively): For interactive code letters
11498 'b' and 'B' put the buffer list into the list of default "future"
11499 values of the minibuffer.
11500
115012008-03-16 Andreas Schwab <schwab@suse.de>
11502
11503 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11504 modifiers.
11505
11506 * regex.c (re_match_2_internal): Correct matching of a charset
11507 against latin-1 characters.
11508
115092008-03-16 Kenichi Handa <handa@m17n.org>
11510
11511 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11512 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11513 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11514 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11515 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11516 CHAR_STRING_ADVANCE.
11517 (produce_chars): Fix for the case that the source and the
11518 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11519 instead of CHAR_STRING_ADVANCE.
11520 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11521 STRING_CHAR_ADVANCE.
11522
115232008-03-15 Andreas Schwab <schwab@suse.de>
11524
11525 * regex.c (re_match_2_internal): Correct matching of eight bit
11526 characters in unibyte strings.
11527
115282008-03-15 Martin Rudalics <rudalics@gmx.at>
11529
11530 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11531 at end of range when it coincides with the end of the buffer.
11532
115332008-03-14 Eli Zaretskii <eliz@gnu.org>
11534
11535 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11536
11537 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11538
115392008-03-14 Jason Rumney <jasonr@gnu.org>
11540
11541 * editfns.c (initial_tz): New variable.
11542 (syms_of_editfns): Initialize it.
11543 (Fset_time_zone_rule): Set it when first called.
11544 Use it when TZSTRING is nil.
11545
11546 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11547 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11548 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11549 (globals_of_w32fns): Initialize them.
11550 (compute_tip_xy): Use them to position tooltips.
11551
115522008-03-14 Glenn Morris <rgm@gnu.org>
11553
11554 * emacs.c (main): Revert previous change.
11555 (standard_args): Revert -internal-script back to -scriptload,
11556 and remove the long-option form.
11557
115582008-03-13 Glenn Morris <rgm@gnu.org>
11559
11560 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11561 Remove option -enable-font-backend.
11562
115632008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11564
11565 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11566
115672008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11568
11569 * xterm.c (x_connection_closed): For GTK: If this is the last
11570 terminal just exit without closing the display.
11571
115722008-03-11 Jason Rumney <jasonr@gnu.org>
11573
11574 * w32font.c (w32font_full_name): Use floor to round.
11575
f0131492 115762008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11577
11578 * sound.c (alsa_configure): Declare vol at beginning of block.
11579
11580 * fontset.c (Ffontset_info): Remove extra semicolon.
11581
115822008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11583
11584 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11585 size of resulting string.
11586
115872008-03-10 Jason Rumney <jasonr@gnu.org>
11588
11589 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11590
115912008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11592
11593 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11594 Don't pretend as if characters with display property haven't been
11595 consumed for string-replacing-string case.
11596
115972008-03-08 Kim F. Storm <storm@cua.dk>
11598
11599 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11600 (get_next_display_element, next_element_from_string)
11601 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11602
116032008-03-08 Andreas Schwab <schwab@suse.de>
11604
11605 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11606
116072008-03-06 Jason Rumney <jasonr@gnu.org>
11608
11609 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11610 when charset not specified. Only translate ANSI to unicode when
11611 font_type is truetype.
11612 (w32font_coverage_ok): New function.
11613 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11614
116152008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11616
11617 * lread.c (Fread_char): Resolve modifiers.
11618 (Fread_char_exclusive): Likewise.
11619
11620 * character.c (char_resolve_modifier_mask): New function.
11621 (char_string): Use char_resolve_modifier_mask.
11622 (Fchar_resolve_modifiers): New function.
11623 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11624 function.
11625
116262008-03-04 Jason Rumney <jasonr@gnu.org>
11627
11628 * makefile.w32-in: Always include w32font.c in the build.
11629 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11630
116312008-03-04 Andreas Schwab <schwab@suse.de>
11632
11633 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11634 (versionclean): Likewise.
11635
116362008-03-04 Juanma Barranquero <lekktu@gmail.com>
11637
11638 * .cvsignore: Add oo.
11639
116402008-03-03 Andreas Schwab <schwab@suse.de>
11641
11642 * coding.c (decode_coding_object): Inhibit gap shrinking while
11643 decoding in place.
11644
116452008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11646
11647 * w32term.c: Remove unused include "gnu.h".
11648 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11649
11650 * gnu.h: Rename to ...
11651 * emacs-icon.h: ... this.
11652 * xterm.c: Use emacs-icon.h instead of gnu.h.
11653 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11654
116552008-03-03 Juanma Barranquero <lekktu@gmail.com>
11656
11657 * w32font.c: Include math.h.
11658
116592008-03-03 Jason Rumney <jasonr@gnu.org>
11660
11661 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11662 Compute options separately.
11663 (w32font_open_internal): Set glyph_idx before caching metrics.
11664
11665 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11666 Define if system headers don't.
11667 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11668 (w32font_encode_char): Don't declare here.
11669
11670 * w32font.c (Quniscribe, QCformat): New symbols.
11671 (syms_of_w32font): Define them.
11672 (w32font_has_char): Indicate uncertainty.
11673 (w32font_encode_char): Encode as glyph point. Make static.
11674 (recompute_cached_metrics): New function.
11675 (w32font_open_internal): Use it. Set font to use glyph points
11676 initially. Set format based on type of font.
11677 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11678 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11679 on it. Set format based on information available here.
11680 (add_font_entity_to_list): Identify backend based on opentype_only.
11681
116822008-03-02 Andreas Schwab <schwab@suse.de>
11683
11684 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11685
11686 * coding.c (decode_coding_big5, produce_chars):
11687 Fix typos in last change.
11688
116892008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11690
11691 * gnu.h: New icon.
11692
116932008-03-02 Kenichi Handa <handa@m17n.org>
11694
11695 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11696 `dos', don't decode '\r' if that is the last in the source.
11697 (decode_coding_utf_16, decode_coding_emacs_mule)
11698 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11699 (decode_coding_raw_text, decode_coding_charset): Likewise.
11700 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11701
117022008-03-01 Jason Rumney <jasonr@gnu.org>
11703
11704 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11705
117062008-03-01 Kim F. Storm <storm@cua.dk>
11707
11708 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11709
117102008-03-01 Jason Rumney <jasonr@gnu.org>
11711
11712 * w32font.c (w32font_full_name): New function.
11713 (w32font_open_internal): Use it.
11714
117152008-03-01 Kim F. Storm <storm@cua.dk>
11716
11717 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11718
117192008-03-01 Jason Rumney <jasonr@gnu.org>
11720
11721 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11722
117232008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11724
11725 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11726 xg_frame_resized when the event is for the edit widget.
11727
11728 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11729
11730 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11731 set_char_size.
11732 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11733 operations on widgets here. Just set frame size if needed.
11734 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11735 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11736 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11737 the whole frame.
11738 (xg_create_tool_bar): Move attachment of the tool bar to
11739 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11740 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11741
117422008-03-01 Jason Rumney <jasonr@gnu.org>
11743
11744 * w32fns.c (w32_msg_pump): Disable debug code.
11745
117462008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11747
11748 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11749
117502008-02-29 Chong Yidong <cyd@stupidchicken.com>
11751
11752 * xdisp.c (next_overlay_string): Don't set
11753 overlay_strings_at_end_processed_p if we're currently reading from
11754 a display string.
11755
117562008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11757
11758 * xdisp.c (get_overlay_strings_1): Fix typo.
11759
117602008-02-29 Chong Yidong <cyd@stupidchicken.com>
11761
11762 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11763
117642008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11765
11766 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11767
11768 * xdisp.c (display_mode_element): Cancel the previous change.
11769 (decode_mode_spec): Likewise.
11770 (handle_auto_composed_prop): Don't make composition if it->string
11771 is a string.
11772
117732008-02-27 Kim F. Storm <storm@cua.dk>
11774
11775 * lisp.h (GLYPH): Change type from int to struct with separate char
11776 and face_id members.
11777 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11778 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11779 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11780 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11781 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11782 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11783 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11784 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11785 handle new Lisp glyph code encoding, either an integer or a cons.
11786
11787 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11788 (GLYPH_ALIAS): Delete.
11789 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11790 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11791 (GLYPH_FROM_CHAR): Replace macro by ...
11792 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11793
11794 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11795 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11796 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11797 (GLYPH_INVALID_P): New macro.
11798 (spec_glyph_lookup_face): Update prototype.
11799
11800 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11801 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11802 new glyph code encoding.
11803 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11804 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11805
11806 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11807 Adapt to new glyph type and new glyph code encoding.
11808
11809 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11810
11811 * indent.c (current_column, current_column_1, Fmove_to_column)
11812 (compute_motion): Adapt to new glyph code encoding.
11813
11814 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11815
118162008-02-27 Chong Yidong <cyd@stupidchicken.com>
11817
11818 * process.c (wait_reading_process_output): Check for window
11819 changes caused by timers.
11820 Suggested by Johan Bockgård.
11821
118222008-02-27 Glenn Morris <rgm@gnu.org>
11823
11824 * emacs.c (USAGE1): Add `--disable-font-backend'.
11825
118262008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11827
11828 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11829 is made to the buffer.
11830
118312008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11832
11833 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11834 (face_at_string_position):
11835 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11836 (face_at_string_position):
11837 * xdisp.c (display_string, next_overlay_change):
11838 * buffer.h (overlays_at):
11839 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
11840 Update callers.
11841
118422008-02-26 Chong Yidong <cyd@stupidchicken.com>
11843
11844 * editfns.c (Fformat): Doc fix.
11845
118462008-02-26 Juanma Barranquero <lekktu@gmail.com>
11847
11848 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
11849 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
11850 (Ffont_otf_alternates, Fquery_font): Doc fixes.
11851
118522008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11853
11854 * buffer.c (Fbuffer_swap_text): New function.
11855 (syms_of_buffer): Defsubr it.
11856
118572008-02-25 Chong Yidong <cyd@stupidchicken.com>
11858
11859 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
11860
118612008-02-25 Jason Rumney <jasonr@gnu.org>
11862
11863 * w32font.c (w32font_draw): Draw one character at a time when padding.
11864
118652008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11866
11867 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
11868 Handle a nil arg. Use run_window_configuration_change_hook.
11869 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
11870 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
11871 Use run_window_configuration_change_hook.
11872
118732008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11874
11875 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
11876 1-pixel width.
11877
118782008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11879
11880 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
11881 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
11882 if the glyph in the font is zero pixel with.
11883
11884 * dispextern.h (struct glyph_string): New member padding_p.
11885
11886 * w32font.c (w32font_draw): Pay attention to s->padding_p.
11887
11888 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
11889
11890 * xfont.c (xfont_draw): Pay attention to s->padding_p.
11891
11892 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
11893
11894 * font.c: If the font driver doesn't have `shape' function, return Qnil.
11895
118962008-02-25 Jason Rumney <jasonr@gnu.org>
11897
11898 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
11899
119002008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
11901
11902 Allow fine-grained image-cache flushing.
11903 * dispextern.h (struct image): Add `dependencies' field.
11904 (clear_image_caches): Change arg to Lisp_Object.
11905 * image.c (make_image): Initialize `dependencies' field.
11906 (clear_image_cache): Change arg to allow fine-grained flushing.
11907 Perform the flush even if image-cache-eviction-delay is nil.
11908 (clear_image_caches): Change arg to Lisp_Object.
11909 (Fclear_image_cache): Expand meaning of the argument.
11910 (mark_image): Mark `dependencies' field.
11911 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
11912 (lface_hash): Use XHASH rather than XFASTINT.
11913 (face_at_buffer_position): Fix int -> EMACS_INT position.
11914 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
11915 (select_frame_for_redisplay): Remove code duplication.
11916 (redisplay_internal): Adapt arg to call to clear_image_caches.
11917
119182008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
11919
11920 * s/vms4-0.h:
11921 * s/vms4-2.h:
11922 * s/vms4-4.h:
11923 * s/vms5-5.h: Remove, unused.
11924
11925 * s/irix5-2.h:
11926 * s/irix6-0.h:
11927 * s/riscos5.h:
11928 * s/mach-bsd4-3.h:
11929 * m/mips4.h: Remove files for obsolete systems.
11930
11931 * Makefile.in:
11932 * filelock.c:
11933 * unexmips.c:
11934 * m/hp9000s300.h:
11935 * m/iris4d.h:
11936 * s/aix3-1.h:
11937 * s/hpux.h:
11938 * s/msdos.h:
11939 * s/usg5-0.h:
11940 * s/usg5-2-2.h:
11941 * s/usg5-2.h:
11942 * s/usg5-3.h: Remove references to obsolete variables.
11943
11944 * s/irix5-0.h: Remove, move all the contents ...
11945 * s/irix6-5.h: ... here. Simplify.
11946 * config.in: Regenerate.
11947
119482008-02-24 Jason Rumney <jasonr@gnu.org>
11949
11950 * w32term.c (x_draw_glyph_string_background): Clear the background
11951 manually when cleartype is in use.
11952 (x_draw_glyph_string_foreground): Draw text transparently when
11953 cleartype is in use.
11954
11955 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
11956 a font into it unless we have to.
11957
119582008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11959
11960 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
11961 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 11962
aac0c6e3
MR
119632008-02-18 Jason Rumney <jasonr@gnu.org>
11964
11965 * w32fns.c (Fw32_shell_execute): Encode parameters.
11966
119672008-02-09 Eli Zaretskii <eliz@gnu.org>
11968
11969 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
11970
119712008-02-05 Juanma Barranquero <lekktu@gmail.com>
11972
11973 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
11974
119752008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
11976
11977 * xterm.c (x_set_offset): Don't change the gravity if
11978 CHANGE_GRAVITY is -1.
11979
119802008-02-23 Chong Yidong <cyd@stupidchicken.com>
11981
11982 * fileio.c (auto_save_error_occurred): New var.
11983 (auto_save_error): Set it.
11984 (Fdo_auto_save): Don't overwrite the error message if an auto-save
11985 error occurred.
11986
119872008-02-23 Eli Zaretskii <eliz@gnu.org>
11988
11989 * w32.c (globals_of_w32): Add initializations for
11990 g_b_init_get_sid_sub_authority and
11991 g_b_init_get_sid_sub_authority_count.
11992
119932008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
11994
11995 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
11996 (font_parse_xlfd): Use them for sanity check.
11997 (Finternal_set_font_style_table): Make sure the table is bijective.
11998
11999 Consolidate the image_cache to the terminal struct.
12000 * termhooks.h (P_): Remove redundant def.
12001 (struct terminal): New field `image_cache'.
12002 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
12003 of FRAME_X_IMAGE_CACHE.
12004 * xterm.h (struct x_display_info): Remove image_cache field.
12005 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12006 * w32term.h (struct w32_display_info): Remove image_cache field.
12007 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12008 * macterm.h (struct mac_display_info): Remove image_cache field.
12009 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12010 * xterm.c (x_term_init):
12011 * w32term.c (w32_term_init):
12012 * macterm.c (mac_term_init): Set the image_cache in the terminal.
12013 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
12014 Remove declarations.
12015 (clear_image_caches, mark_image_cache): New declarations.
12016 * xfaces.c (clear_face_cache):
12017 * xdisp.c (redisplay_internal): Use clear_image_caches.
12018 * image.c (clear_image_cache): Don't check that a frame is on
12019 a window-system before checking if it shares the same cache.
12020 (clear_image_caches): New function.
12021 (Fclear_image_cache): Use it.
12022 (mark_image): Move from allo.c.
12023 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
12024 * alloc.c (mark_image, mark_image_cache): Move to image.c.
12025 (mark_object): Don't call mark_image_cache for frames.
12026 (mark_terminals): Call mark_image_cache.
12027
12028 * lisp.h (Fdelete_terminal): Declare.
12029
12030 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
12031 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
12032 wrong_type_argument.
12033
120342008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
12035
12036 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
12037 malayalam.el, and tamil.el. Add sinhala.el.
12038
120392008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
12040
12041 * xterm.c (x_connection_closed): Consolidate identical tests.
12042 (x_delete_terminal): Don't crash if called via x_connection_closed.
12043
120442008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
12045
12046 * xdisp.c (decode_mode_spec): New arg string.
12047 (display_mode_element): Adjust for the above change.
12048
120492008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12050
12051 * callint.c (Fcall_interactively): Use AREF.
12052
120532008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
12054
12055 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
12056
120572008-02-18 Jan Djärv <jan.h.d@swipnet.se>
12058
12059 * xfns.c (Fx_show_tip): Set string to " " if empty.
12060
120612008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
12062
12063 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
12064 with Qt.
12065
120662008-02-17 Kenichi Handa <handa@m17n.org>
12067
12068 * ftfont.c (ftfont_shape): Return Lispy number.
12069
12070 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
12071 for GCs.
12072 (Finternal_set_font_selection_order): Call font_update_sort_order
12073 only when enable_font_backend is set.
12074 (realize_x_face): Set face->font_info to that of default face only
12075 when enable_font_backend is set.
12076
12077 * xdisp.c (handle_composition_prop): Set it->c to the fist
12078 character of the composed region.
12079 (fill_composite_glyph_string): Set base_face->font_info to
12080 s->font_info. Get a face for ascii from base_face->ascii_face.
12081 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
12082 with a face already decided.
12083 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
12084 non-negative.
12085 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
12086 call font_prepare_composition unconditionally.
12087
12088 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
12089
12090 * xterm.h (struct x_display_info): New member font.
12091
12092 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
12093 (x_set_mouse_face_gc, x_new_font): Likewise.
12094 (x_term_init): Setup display_info->font.
12095 (x_delete_terminal): Free display_info->font.
12096
12097 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
12098
12099 * ftxfont.c (ftxfont_default_fid): Delete it.
12100 (ftxfont_open): Set xfont->fid to 0.
12101 (ftxfont_end_for_frame): Clear data specific to the frame and the
12102 font-driver.
12103
12104 * xftfont.c (xftfont_default_fid): Delete it.
12105 (xftfont_open): Set xfont->fid to 0.
12106
12107 * fontset.c (FONTSET_OBJLIST): New macro.
12108 (fontset_find_font): Update font-object list of the fontset.
12109 (free_realized_fontset): New function.
12110 (free_face_fontset): Call free_realized_fontset.
12111 (Ffont_info): Call font_close_object only when enable_font_backend
12112 is set.
12113
12114 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
12115 [HAVE_NTGUI]: Include w32term.h.
12116 [MAC_OS]: Include macterm.ch.
12117 (font_otf_ValueRecord): Use make_number.
12118 (font_finish_cache): Fix handling of reference count.
12119 (font_clear_cache): Update num_fonts.
12120 (font_open_entity): Update smallest_char_width and
12121 smallest_font_height of the frame.
12122 (font_close_object): Update num_fonts.
12123 (Fclear_font_cache): Fix finding the target cache data.
12124
121252008-02-16 Glenn Morris <rgm@gnu.org>
12126
12127 * fontset.c (Finternal_char_font): Fix compilation warning.
12128
121292008-02-16 Eli Zaretskii <eliz@gnu.org>
12130
12131 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
12132 instead of char arrays. Enlarge the size of array passed to
12133 get_token_information.
12134
12135 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
12136 warnings.
12137
121382008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
12139
12140 * .gdbinit: Don't set `args', it breaks gdb --args.
12141
121422008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
12143
12144 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
12145 within a narrowed buffer.
12146
121472008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
12148
12149 * coding.c (decode_coding_object, encode_coding_object):
12150 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
12151
121522008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
12153
12154 * coding.c (coding_set_destination): Use BEG_BYTE rather than
12155 hardcoding 1.
12156 (detect_coding_system):
12157 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
12158 (string_char_to_byte, string_byte_to_char, insert_from_gap):
12159 * insdel.c (insert_from_gap):
12160 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
12161 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
12162 (string_to_multibyte):
12163 * character.c (chars_in_text, multibyte_chars_in_text):
12164 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
12165
12166 * character.h (FETCH_STRING_CHAR_ADVANCE)
12167 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
12168 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
12169 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
12170
12171 * casefiddle.c (casify_region): Only call after-change and composition
12172 functions on the part of the region that was changed.
12173
12174 * keyboard.c (read_avail_input):
12175 * frame.c (Fdelete_frame): Call Fdelete_terminal.
12176
121772008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12178
12179 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
12180 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
12181
121822008-02-11 Juanma Barranquero <lekktu@gmail.com>
12183
12184 * w32menu.c (push_submenu_start, push_submenu_end)
12185 (push_left_right_boundary, push_menu_pane, push_menu_item):
12186 * keyboard.c (read_key_sequence): Don't pass args with side effects
12187 to AREF, it fails when compiling with -DENABLE_CHECKING.
12188
121892008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
12190
12191 * Makefile.in (${lispsource}international/charprop.el):
12192 Delete this target.
12193
12194 * search.c (boyer_moore): Fix incorrect synching of the trunk and
12195 emacs-unicode-2.
12196
121972008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12198
12199 * terminal.c (Fdelete_terminal): Clean up the `force' path.
12200
122012008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12202
12203 * frame.c (Qnoelisp): New symbol.
12204 (syms_of_frame): Initialize it.
12205 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
12206 harmless Elisp code, from a strong `force' from x_connection_closed.
12207 * frame.h (Qnoelisp): Declare.
12208 * xterm.c (x_connection_closed): Pass `noelisp'.
12209
12210 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
12211 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
12212 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
12213 rather than `int' for the type of `type'.
12214
122152008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
12216
12217 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
12218
12219 * Makefile.in (GNUC): Remove support for gcc-1.x.
12220
122212008-02-10 Richard Stallman <rms@gnu.org>
12222
12223 * lisp.h (ASET): Use AREF, not ASLOT.
12224
122252008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12226
12227 * lisp.h (ASET): Check bounds.
12228
122292008-02-10 Glenn Morris <rgm@gnu.org>
12230
12231 * buffer.c (mode-name): Doc fix.
12232
122332008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12234
12235 * Makefile.in:
12236 * emacs.c:
12237 * gmalloc.c:
12238 * keyboard.c:
12239 * lisp.h:
12240 * m/ibm370aix.h:
12241 * process.c:
12242 * regex.c:
12243 * s/hpux.h:
12244 * sysdep.c:
12245 * sysselect.h:
12246 * systty.h:
12247 * unexec.c:
12248 * w32term.c:
12249 * xsmfns.c:
12250 * xterm.c: Remove code that deals with obsolete variables.
12251
12252 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12253
12254 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12255 nothing else needs it anymore.
12256
122572008-02-09 Eli Zaretskii <eliz@gnu.org>
12258
12259 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12260 instead of unibyte_char_to_multibyte.
12261
122622008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12263
12264 * s/gnu-linux.h: Remove commented out code.
12265
12266 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12267
12268 * Makefile.in: Update what RMS says about using autoconf.
12269 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12270 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12271 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12272 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12273
122742008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12275
12276 * keymap.c (Fkey_description): Move side effect outside of macro call.
12277
12278 * xfaces.c (Finternal_make_lisp_face):
12279 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12280
12281 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12282 (syms_of_fontset): Use ASET.
12283
12284 * fns.c (concat): Move side effect outside of macro call.
12285 (hash_clear): Use ASET.
12286
122872008-02-08 Richard Stallman <rms@gnu.org>
12288
12289 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12290 If FORCE, and frame has a surrogate minibuffer for another frame,
12291 delete the other frame first.
12292
122932008-02-07 Timo Savola <timo.savola@iki.fi>
12294
12295 * xterm.c (x_detect_focus_change): Handle embed client message.
12296 (handle_one_xevent): Ditto.
12297 (handle_one_xevent): If embedded and we get a button press/release,
12298 request focus.
12299 (xembed_set_info, xembed_send_message): New functions.
12300 (x_make_frame_visible): Call xembed_set_info if embedded.
12301 (x_make_frame_invisible): Call xembed_set_info if embedded.
12302 (x_term_init): Initialize Xatom_XEMBED.
12303 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12304 (x_iconify_frame): Ditto.
12305
12306 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12307 (enum xembed_info, enum xembed_message, enum xembed_focus)
12308 (enum xembed_modifier, enum xembed_accelerator): New.
12309 (xembed_set_info, xembed_send_message): Declare.
12310 (FRAME_X_EMBEDDED_P): New.
12311
12312 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12313 gtk_plug_new.
12314
12315 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12316 window ID of a frame.
12317 (x_window): Reparent frame if embedded.
12318 (Fx_create_frame): Don't set border width if embedded.
12319
12320 * emacs.c (USAGE3): Add --parent-id.
12321 (standard_args): Ditto.
12322
123232008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12324
12325 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12326
123272008-02-07 Jim Meyering <meyering@redhat.com>
12328
12329 Use "do...while (0)", not "if (1)...else" in macro definitions.
12330 The latter provokes a warning from gcc about the empty else, when
12331 followed by ";". Also, without that trailing semicolon, it would
12332 silently swallow up any following statement.
12333 * syntax.h (SETUP_SYNTAX_TABLE)
12334 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12335 * buffer.h (DECODE_POSITION): Likewise.
12336 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12337 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12338 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12339 (FETCH_CHAR_ADVANCE): Likewise.
12340 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12341
123422008-02-07 Jim Meyering <meyering@redhat.com>
12343
12344 * lread.c [lint]: Don't include <sys/inode.h>.
12345
123462008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12347
12348 * xselect.c (x_handle_dnd_message):
12349 * xmenu.c (digest_single_submenu, xmenu_show):
12350 * xdisp.c (with_echo_area_buffer_unwind_data)
12351 (format_mode_line_unwind_data, unwind_format_mode_line)
12352 (display_menu_bar):
12353 * eval.c (Ffetch_bytecode):
12354 * doc.c (store_function_docstring):
12355 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12356 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12357 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12358
123592008-02-07 Kenichi Handa <handa@m17n.org>
12360
12361 * ftxfont.c (ftxfont_open): Don't set
12362 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12363
12364 * ftfont.c (ftfont_open): Fix previous change.
12365
123662008-02-06 Jason Rumney <jasonr@gnu.org>
12367
12368 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12369 Use cached metrics for ASCII characters.
12370 (w32font_open_internal): Don't set font's owning_frame.
12371 Cache metrics for ASCII characters.
12372
12373 * w32font.h (struct w32font_info): Add ascii_metrics.
12374 Remove owning_frame.
12375
123762008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12377
12378 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12379 to negative value.
12380
12381 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12382
12383 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12384
12385 * charset.c (syms_of_charset): Set QCtest and Qeq.
12386
123872008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12388
12389 * process.c (Fstart_process):
12390 * callproc.c (Fcall_process): Handle the case where
12391 Funhandled_file_name_directory returns nil.
12392
12393 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12394 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12395 * font.c (check_gstring): Use them and AREF to access the vector before
12396 we know it's really a gstring.
12397 (Ffont_shape_text): Fix typo.
46e722a9 12398 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
12399
12400 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12401 Declare.
12402
12403 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12404
124052008-02-05 Jason Rumney <jasonr@gnu.org>
12406
12407 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12408 Set smallest_font_height and smallest_char_width in display info.
12409
124102008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12411
12412 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12413
124142008-02-05 Miles Bader <miles@gnu.org>
12415
12416 * xfaces.c (get_lface_attributes, merge_named_face)
12417 (lookup_named_face, lookup_derived_face, realize_named_face):
12418 Revert 2008-02-01 change by cyd@stupidchicken.com.
12419
124202008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12421
12422 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12423 fallback fonts.
12424 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12425
124262008-02-04 Jason Rumney <jasonr@gnu.org>
12427
12428 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12429 set full_name.
12430 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12431
124322008-02-03 Jason Rumney <jasonr@gnu.org>
12433
12434 * makefile.w32-in (OBJ1): Include font.o here.
12435 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12436
124372008-02-02 Jason Rumney <jasonr@gnu.org>
12438
12439 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12440
124412008-02-01 Jason Rumney <jasonr@gnu.org>
12442
12443 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12444
12445 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12446
124472008-02-01 Andreas Schwab <schwab@suse.de>
12448
12449 * Makefile.in (shortlisp, lisp): Update for rename of
12450 ../lisp/language/myanmar.el.
12451
124522008-02-01 Chong Yidong <cyd@stupidchicken.com>
12453
12454 * xfaces.c (get_lface_attributes): Delete function.
12455 (merge_named_face, lookup_named_face, lookup_derived_face)
12456 (realize_named_face): Call lface_from_face_name directly, and use
12457 the fact that merge_face_vectors does not alter its FROM argument.
12458
124592008-02-01 Jason Rumney <jasonr@gnu.org>
12460
12461 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12462 input in the default locale. Handle non-Unicode multibyte input.
12463
124642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12465
12466 * fontset.c (reorder_font_vector): Exclude nil elements from the
12467 font group. Don't try multiple fonts.
12468 (fontset_font): Adjust for the above change.
12469 (Finternal_char_font): Return nil if the found font doesn't
12470 contain the character ch.
12471
12472 * Makefile.in (lisp, shortlisp): Add cham.el.
12473
124742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12475
12476 * font.h (FONTP): Make it return 1 also for a font-object.
12477
12478 * .gdbinit (xfontset): New function.
12479
12480 * font.c (font_find_for_lface): Check if the character C is
12481 supported or not only for the first font.
12482
12483 * fontset.c (reorder_font_vector): Fix typo.
12484 (fontset_find_font): Don't add a font-spec specifying a script.
12485 Use 0 (not Qt) for the indication of empty font-group. Change the
12486 format of RFONT-DEF. Return Qt if no font in the font-group
12487 support the character.
12488 (fontset_font): Adjust for the above change. If no font was
12489 found the character, remember that.
12490 (face_for_char): Adjust for the change of RFONT-DEF.
12491 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12492 no font for the target.
12493 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12494
124952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12496
12497 * font.c (font_load_for_face): Handle the case that the font in
12498 face->lface is a string.
12499
125002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12501
12502 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12503
125042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12505
12506 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12507 Fix previous change. If the frame is not on a window system,
12508 signal an error.
12509
125102008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12511
12512 * coding.c (decode_coding_object, encode_coding_object): Adjust
12513 marker positions after conversion.
12514
12515 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12516
125172008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12518
12519 * font.c (font_find_for_lface): Fix the handling of the return
12520 value of font_has_char.
12521 (Ffont_shape_text): Fix previous change.
12522
12523 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12524 (fontset_ref_and_range): Delete it.
12525 (fontset_find_font): Call char_table_ref_and_range instead of
12526 FONTSET_REF_AND_RANGE.
12527 (make_fontset): Don't setup font groups of Latin here.
12528 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12529 (new_fontset_from_font): Make the specified font the default for
12530 all Latin characters.
12531
125322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12533
12534 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12535 is on a window system before accessing the fontset of the frame.
12536
125372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12538
12539 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12540
12541 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12542 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12543
12544 * font.c (Ffont_shape_text): If the font driver doesn't have a
12545 shaper function, make zero-width glyphs to have at least one-pixel
12546 width. Fix setting of `to' field of glyphs.
12547
125482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12549
12550 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12551 glyphs.
12552
12553 * font.h (struct font_driver): Improve docstring of member `shape'.
12554
125552008-02-01 Kenichi Handa <handa@m17n.org>
12556
12557 * composite.c (syms_of_composite): Fix docstring of
12558 auto-composition-function.
12559
12560 * font.h (LGLYPH_SIZE): New macro.
12561
12562 * font.c (Ffont_fill_gstring): Stop filling when a character not
12563 supported by the font is found.
12564 (Ffont_shape_text): When a shape callback function returns nil,
12565 try at most two more times with larger gstring.
12566 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12567
12568 * xdisp.c (handle_auto_composed_prop): Change the argument to
12569 auto-composition-function.
12570
12571 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12572 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12573 Lispy glyph and store it in the lgstring.
12574
12575 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12576
12577 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12578
125792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12580
12581 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12582
12583 * fontset.c (Vfont_encoding_charset_alist): New variable.
12584 (syms_of_fontset): DEFVAR it.
12585 (reorder_font_vector, fontset_find_font): Optimize for the case of
12586 no need of reordering.
12587 (face_for_char): Map the charset property by
12588 Vfont_encoding_charset_alist.
12589
125902008-02-01 Jason Rumney <jasonr@gnu.org>
12591
12592 * w32font.c (logfonts_match): Don't check adstyle here.
12593 (font_matches_spec): Check here against physical font instead.
12594 (add_font_entity_to_list): Avoid some substitutions.
12595
12596 * font.c (font_parse_fcname): Default weight and slant to normal.
12597 (font_score): Prefer normal fonts if weight or slant unspecified.
12598 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12599 match freetype scores.
12600
126012008-02-01 Jason Rumney <jasonr@gnu.org>
12602
12603 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12604 font, as it may have been deleted.
12605 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12606 most common hyphenless variation.
12607 (logfonts_match): Check generic family.
12608 (font_matches_spec): Don't check generic family here.
12609 (fill_in_logfont): Set generic family based on adstyle.
12610
12611 * w32font.h (w32font_get_cache): Update declaration.
12612
126132008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12614
12615 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12616
12617 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12618 If none of the new drivers are available, call font_update_drivers
12619 with the old drivers.
12620
12621 * w32font.c (w32font_get_cache): Adjust the argument type.
12622
12623 * xfont.c (xfont_get_cache): Adjust the argument type.
12624
12625 * font.h (struct font_driver): Change argument type of get_cache.
12626
12627 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12628
12629 * font.c (Ffont_get): Fix arguments to Fassoc.
12630 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12631 (font_clear_cache): New function.
12632 (font_list_entities, font_matching_entity): Use font_get_cache.
12633 (font_update_drivers): Call font_clear_cache when finishing a driver.
12634
12635 * fontset.c (fontset_find_font): Fix previous change.
12636
126372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12638
12639 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12640 dpyinfo->font_table.
12641 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12642 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12643
12644 * font.c (font_at): Handle the case that the arg C is negative.
12645 Handle the unibyte case.
12646 (Ffont_at): Call font_at with the arg C -1.
12647
12648 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12649 the position here, and call font_at with the arg C -1.
12650 Don't check the range of the existing composition at the point.
12651
126522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12653
12654 * fontset.c (fontset_add): New args charset_id and family.
12655 Change caller.
12656 (load_font_get_repertory, fontset_find_font): Assume that
12657 font_spec is always a font-spec object.
12658 (Fset_fontset_font): Always store a font-spec object in a fontset.
12659
12660 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12661 instead of get_property_and_range.
12662
126632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12664
12665 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12666 (xftfont_open): Don't keep locking face.
12667 (xftfont_close): Don't unlock face.
12668 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12669
12670 * fontset.c (fontset_find_font): Don't prefer a font of
12671 supplementary charset.
12672
126732008-02-01 Kenichi Handa <handa@m17n.org>
12674
12675 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12676 script, langsys_tag to langsys, new member script.
12677 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12678 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12679 listing to the script specified in that property. Fix arg to
12680 OTF_check_features.
12681
126822008-02-01 Jason Rumney <jasonr@gnu.org>
12683
12684 * w32font.h: New file.
12685
12686 * w32font.c: Include it.
12687 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12688 (w32font_open): Set owning_frame.
12689 (w32font_text_extents): Use owning_frame.
12690 (struct font_callback_data): Add opentype_only field.
12691 (add_font_entity_to_list): Use it to filter fonts.
12692 Don't check against full name.
12693 (w32font_list_internal): New function.
12694 (w32font_list): Use it.
12695 (w32font_match_internal): New function.
12696 (w32font_match): Use it.
12697 (w32font_open_internal): New function.
12698 (w32font_open): Use it.
12699 (w32font_get_cache, w32font_close, w32font_has_char)
12700 (w32font_encode_char, w32font_text_extents, w32font_draw):
12701 Make non-static.
12702
12703 * makefile.w32-in (w32font.o): Depend on w32font.h.
12704
127052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12706
12707 * charset.c (Fdefine_charset_internal): Record a supplementary
12708 charset at the tail of Vcharset_order_list.
12709
12710 * font.c (Ffont_shape_text): Fix the return value.
12711
12712 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12713
12714 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12715
127162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12717
12718 * ftfont.c (struct OpenTypeSpec): New struct.
12719 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12720 (ftfont_get_open_type_spec): New function.
12721 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12722
12723 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12724
127252008-02-01 Jason Rumney <jasonr@gnu.org>
12726
12727 * w32font.c (add_font_entity_to_list): Compare only the beginning
12728 of full name.
12729
127302008-02-01 Kenichi Handa <handa@m17n.org>
12731
12732 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12733 Never return HANDLED_RECOMPUTE_PROPS.
12734
127352008-02-01 Kenichi Handa <handa@m17n.org>
12736
12737 * font.c (font_gstring_produce): Delete it.
12738
12739 * composite.h (COMPOSITION_METHOD):
12740 Handle COMPOSITION_WITH_GLYPH_STRING.
12741
127422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12743
12744 * xfont.c (Qx): Delete.
12745 (syms_of_xfont): Don't initialize Qx.
12746
12747 * composite.h (enum composition_method):
12748 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12749
127502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12751
12752 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12753 (choose_face_font): Accept new form of font-spec.
12754
12755 * frame.h (font_driver_list): Declare it unconditionally.
12756 (struct frame): Define members font_driver_list and font_data_list
12757 unconditionally.
12758
12759 * fontset.c: Include "font.h" unconditionally.
12760 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12761 (Fset_fontset_font): Accept a font-spec object.
12762
12763 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12764 PIXEL_SIZE part a wild card.
12765
12766 * dispextern.h (struct glyph_string): Define members clip and
12767 num_clips unconditionally.
12768 (struct face): Define members font_info and extra unconditionally.
12769
12770 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12771 ftfont_info only when HAVE_LIBOTF is defined.
12772
127732008-02-01 Andreas Schwab <schwab@suse.de>
12774
12775 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12776 and end.
12777
127782008-02-01 Jason Rumney <jasonr@gnu.org>
12779
12780 * w32font.c (w32font_driver): Add new fields.
12781
127822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12783
12784 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12785 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12786 (LIBES): Add @M17N_FLT_CFLAGS@.
12787
12788 * composite.c (compose_text): Don't treat the new style
12789 composition specially.
12790
12791 * emacs.c (main): Call syms_of_font unconditionally.
12792
12793 * font.h (FONT_ENTITY_NOT_LOADABLE)
12794 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12795 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12796 (struct font_driver): New member shape.
12797 (font_registry_charsets): Extern it.
12798 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12799 (font_otf_capability, font_drive_otf): Delete their externs.
12800
12801 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12802 (font_charset_alist, font_registry_charsets): Move from xfont.c
12803 and rename.
12804 (font_prop_validate_otf): New function.
12805 (font_property_table): Register it for QCotf.
12806 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12807 (font_drive_otf): Delete.
12808 (font_prepare_composition): New arg F. Adjust for the change of
12809 lispy gstring.
12810 (font_find_for_lface): New arg C.
12811 (font_load_for_face): Adjust for the change of font_find_for_lface.
12812 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12813 lispy gstring.
12814 (Ffont_shape_text): New function.
12815 (Fopen_font): If the font size is not given, use 12-pixel.
12816 (Ffont_at): New arg STRING.
12817 (syms_of_font): Initalize font_charset_alist.
12818 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12819 conditionally.
12820
12821 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12822 fonts of the same font-spec. Change the format of RFONT-DEF.
12823 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12824 Adjust for the change of RFONT-DEF.
12825 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12826
12827 * ftfont.h: New file.
12828
12829 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12830 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12831 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12832 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12833 font_otf_capability and font_drive_otf, set ftfont_shape.
12834 (ftfont_list): Adjust for the change of :otf property value.
12835 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12836 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12837 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
12838 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12839 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
12840 (otf_gstring, gstring, m17n_flt_initialized): New variables.
12841
12842 * w32term.c (x_draw_composite_glyph_string_foreground):
12843 Adjust for the change of lispy gstring.
12844
12845 * xdisp.c (handle_composition_prop): Adjust for the change of
12846 lispy gstring. Call a function for auto-composition with the
12847 third arg it->window.
12848 (fill_composite_glyph_string): Adjust for the change of lispy string.
12849 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
12850
12851 * xfaces.c (set_font_frame_param): Adjust for the change of
12852 font_find_for_lface.
12853
12854 * xfont.c (x_font_charset_alist): Move to font.c and rename.
12855 (xfont_registry_charsets): Likewise. Change caller.
12856 (syms_of_xfont): Don't handle x_font_charset_alist.
12857
12858 * xftfont.c: Include "ftfont.h".
12859 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12860 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12861 (xftfont_close) [HAVE_LIBOTF]: Close otf.
12862 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12863 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
12864 Set xftfont_driver.shape to xftfont_shape.
12865
12866 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12867 the change of lispy gstring.
12868
128692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12870
12871 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
12872
128732008-02-01 Jason Rumney <jasonr@gnu.org>
12874
12875 * w32font.c (w32font_draw): Fill background manually.
12876
128772008-02-01 Jason Rumney <jasonr@gnu.org>
12878
12879 * font.c (Qfontp): Remove unused symbol.
12880 (QCantialias): New symbol.
12881 (syms_of_font): Define it.
12882 (font_property_table): Set a validator for QCantialias.
12883
12884 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
12885 Define if not already.
12886 (QCfamily): Share with xfaces.c.
12887 (Qstandard, Qsubpixel, Qnatural): New symbols.
12888 (syms_of_w32font): Define them. Don't define QCfamily here.
12889 (w32_antialias_type, lispy_antialias_type): New functions.
12890 (w32_enumfont_pattern_entity): New arg requested_font.
12891 Set antialias parameter if non-default was requested.
12892 (fill_in_logfont): Fill in lfQuality if :antialias specified.
12893
128942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12895
12896 * lread.c (read1): Undo the previous change.
12897
128982008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
12899
12900 * frame.c (Fdelete_frame): Call font_update_drivers only when
12901 USE_FONT_BACKEND is defined.
12902
129032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12904
12905 * font.h (struct font_bitmap): New member bits_per_pixel.
12906 (struct font_driver): New members start_for_frame and end_for_frame.
12907 (struct font_data_list): New struct.
12908 (font_put_frame_data, font_get_frame_data): Extern them.
12909
12910 * frame.h (struct frame): New member font_data_list.
12911
12912 * font.c (font_update_drivers): Call driver->start_for_frame and
12913 driver->end_for_frame at proper timings.
12914 (font_put_frame_data, font_get_frame_data): New functions.
12915 (Ffont_spec): Add usage in the docstring.
12916
12917 * frame.c (make_frame): Initialize f->font_data_list to NULL.
12918 (Fdelete_frame): Call font_update_drivers.
12919
12920 * xftfont.c (struct xftface_info): Delete the member xft_draw.
12921 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
12922 (xftfont_get_xft_draw): New function.
12923 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
12924 (xftfont_end_for_frame): New function.
12925 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
12926
12927 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
12928 Change argument. Cache GCs in the per-frame data.
12929 (struct ftxfont_frame_data): New struct.
12930 (ftxfont_draw_bitmap): New arg gc_fore and flush.
12931 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
12932 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
12933 (ftxfont_end_for_frame): New function.
12934 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
12935
12936 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
12937
129382008-02-01 Kenichi Handa <handa@m17n.org>
12939
12940 * xselect.c (Vselection_coding_system)
12941 (Vnext_selection_coding_system): Delete them.
12942 (syms_of_xselect): Don't declare selection-coding-system and
12943 next-selection-coding-system. They are declared in select.el.
12944
129452008-02-01 Jason Rumney <jasonr@gnu.org>
12946
12947 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
12948
12949 * w32fns.c: Include imm.h.
12950 (get_composition_string_fn, get_ime_context_fn): New optional
12951 system functions.
12952 (globals_of_w32fns): Load them from imm32.dll.
12953 (ignore_ime_char): New flag.
12954 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
12955 WM_IME_ENDCOMPOSITION messages.
12956
12957 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
12958 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
12959
129602008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12961
12962 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
12963 (READCHAR_REPORT_MULTIBYTE): New macro.
12964 (readchar): New 2nd arg MULTIBYTE.
12965 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
12966 Make symbol's name multibyte according to the multibyteness of the
12967 source.
12968
129692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12970
12971 * xfaces.c (face_for_overlay_string): Call lookup_face with
12972 correct arguments (fix of synching with the trunk).
12973
129742008-02-01 Kenichi Handa <handa@m17n.org>
12975
12976 * font.c (font_prop_validate_symbol, font_prop_validate_style)
12977 (font_prop_validate_non_neg, font_prop_validate_spacing):
12978 Delete argument prop_index.
12979 (font_property_table): Change arguments to validater. Change Callers.
12980 (font_lispy_object): Delete.
12981 (font_at): Use font_find_object instead fo font_lispy_object.
12982
129832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12984
12985 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
12986 and file names.
12987
129882008-02-01 Jason Rumney <jasonr@gnu.org>
12989
12990 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
12991 (font_matches_spec): Remove debug output.
12992 (add_font_entity_to_list): Avoid using substituted fonts.
12993
129942008-02-01 Jason Rumney <jasonr@gnu.org>
12995
12996 * doc.c (Fsnarf_documentation):
12997 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
12998
129992008-02-01 Miles Bader <miles@gnu.org>
13000
13001 * dispextern.h (struct glyph_row): Only define "clip" field if
13002 HAVE_WINDOW_SYSTEM is defined.
13003
130042008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13005
13006 Fix up multi-tty merge.
13007
13008 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
13009 and indentation.
13010
13011 * xfaces.c (free_realized_face, clear_face_gcs):
13012 Include font_done_for_face in the input_blocked section, just in case.
13013
13014 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
13015 (get_char_face_and_encoding): Undo last change and remove the *other*
13016 duplicate definition (i.e. keep the one that's better scoped and that
13017 includes code for the font-backend).
13018
13019 * terminal.c (create_terminal): Default keyboard_coding to
13020 `no-conversion' and terminal_coding to `undecided'.
13021
13022 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
13023
13024 * fontset.c (free_realized_fontsets): Check that the table entry does
13025 contain a fontset before trying to compare it to `base'.
13026
13027 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
13028 syms_of_charset, and syms_of_coding earlier because init_window_once
13029 now needs Vcoding_system_hash_table to be setup.
13030
13031 * coding.h (default_buffer_file_coding): Remove.
13032
13033 * coding.c (default_buffer_file_coding): Remove.
13034 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
13035 than ->symbol, and use the terminal-local coding system.
13036 (syms_of_coding): Don't setup the coding-systems that are not
13037 terminal-local.
13038 (Fdefine_coding_system_internal): Use XCAR/XCDR.
13039
13040 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
13041 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
13042
13043 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
13044 in chartab.c and were re-added here by mistake.
13045 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
13046
13047 * doc.c (Fsnarf_documentation):
13048 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
13049 src to etc.
13050
13051 * ChangeLog.10: Add mistakenly removed entry.
13052
130532008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
13054
13055 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
13056
130572008-02-01 Miles Bader <miles@gnu.org>
13058
13059 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
13060 Add extra args to FACE_FOR_CHAR.
13061
130622008-02-01 Kenichi Handa <handa@m17n.org>
13063
13064 * keymap.c (where_is_internal_1): If key is a cons, store the copy
13065 in sequence.
13066
13067 * chartab.c (map_sub_char_table, map_char_table): If the range
13068 contains just one character, call the function with that character
13069 even if the depth is not 3.
13070
130712008-02-01 Jason Rumney <jasonr@gnu.org>
13072
13073 * w32font.c (w32font_text_extents): Calculate metrics for the
13074 whole string.
13075
130762008-02-01 Jason Rumney <jasonr@gnu.org>
13077
13078 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
13079
130802008-02-01 Jason Rumney <jasonr@gnu.org>
13081
13082 * w32term.c (x_set_glyph_string_clipping): Use
13083 get_glyph_string_clip_rects.
13084 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13085 Adjust for the change of struct glyph_string.
13086
13087 * w32font.c (w32font_draw): Do clipping here.
13088
130892008-02-01 Kenichi Handa <handa@m17n.org>
13090
13091 * xftfont.c (xftfont_draw): Adjust for the change of struct
13092 glyph_string.
13093
13094 * xterm.c (x_set_glyph_string_clipping): Use
13095 get_glyph_string_clip_rects.
13096 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13097 Adjust for the change of struct glyph_string.
13098
13099 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
13100 the resulting clip(s}.
13101 (expose_overlaps): Add arg r. Change callers. Set it to
13102 row->clip temporarily.
13103 (expose_window): Redraw rows overlapping the exposed area.
13104
13105 * dispextern.h (struct glyph_row): New member clip.
13106 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
13107 clip_height, new member clip, and num_clips.
13108
131092008-02-01 Kenichi Handa <handa@m17n.org>
13110
13111 * data.c (Fchar_or_string_p): Fix docstring.
13112
131132008-02-01 Kenichi Handa <handa@m17n.org>
13114
13115 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
13116 create a temporary XftDraw object.
13117
131182008-02-01 Kenichi Handa <handa@m17n.org>
13119
13120 * font.c (Ffontp): Fix docstring.
13121
13122 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
13123 strong evidence of ISO-2022.
13124
131252008-02-01 Kenichi Handa <handa@m17n.org>
13126
13127 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
13128 SYNTAX_ENTRY_FOLLOW_PARENT.
13129
131302008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13131
13132 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
13133 its type.
13134 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
13135 Update to the new type of weak_hash_tables and next_weak.
13136
13137 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
13138 a plain C pointer to Lisp_Hash_Table.
13139
13140 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
13141 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
13142 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
13143 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
13144 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
13145 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
13146 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
13147 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
13148 (GC_EQ): Remove since they've been identical to their non-GC_
13149 alter-egos ever since the markbit was eradicated.
13150
13151 * alloc.c:
13152 * buffer.c:
13153 * buffer.h:
13154 * data.c:
13155 * fileio.c:
13156 * filelock.c:
13157 * fns.c:
13158 * frame.h:
13159 * lisp.h:
13160 * macterm.c:
13161 * print.c:
13162 * process.c:
13163 * w32fns.c:
13164 * w32menu.c:
13165 * w32term.c:
13166 * xfns.c:
13167 * xmenu.c:
13168 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
13169
131702008-02-01 Kenichi Handa <handa@m17n.org>
13171
13172 * chartab.c (map_sub_char_table): Make it work for the top-level
13173 char-table. Fix handling of parent char-table.
13174 (map_char_table): Adjust for the above change.
13175
131762008-02-01 Jason Rumney <jasonr@gnu.org>
13177
13178 * w32font.c (Qgdi): Rename from Qw32.
13179
131802008-02-01 Jason Rumney <jasonr@gnu.org>
13181
13182 * w32bdf.c (get_quoted_string): Make function static.
13183
131842008-02-01 Kenichi Handa <handa@m17n.org>
13185
13186 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
13187 bigger ascent and descent than those of the font, use them as
13188 font's ascent and descent.
13189
131902008-02-01 Kenichi Handa <handa@m17n.org>
13191
13192 * Makefile.in (${lispsource}international/charprop.el): Move this
13193 target within "#ifdef HAVE_UNIDATA" and "#endif".
13194
131952008-02-01 Kenichi Handa <handa@m17n.org>
13196
13197 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
13198 (shortlisp): Add ../lisp/language/tai-viet.el.
13199
132002008-02-01 Ulrich Mueller <ulm@gentoo.org>
13201
13202 * Makefile.in (${lispsource}international/charprop.el): Depend on
13203 temacs${EXEEXT}.
13204
132052008-02-01 Jason Rumney <jasonr@gnu.org>
13206
13207 * w32font.c (w32font_close): Delete the GDI font object.
13208
13209 * w32menu.c: Include character.h.
13210
13211 * w32proc.c: Likewise.
13212
13213 * w32select.c: Likewise.
13214
13215 * makefile.w32-in (w32proc.o): Depend on character.h.
13216
132172008-02-01 Jason Rumney <jasonr@gnu.org>
13218
13219 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
13220
13221 * w32menu.c (syms_of_w32menu): Likewise.
13222
13223 * w32proc.c (syms_of_ntproc): Likewise.
13224
13225 * w32select.c (syms_of_w32select): Likewise.
13226
13227 * w32term.c (syms_of_w32term): Likewise.
13228
132292008-02-01 Jason Rumney <jasonr@gnu.org>
13230
13231 * w32font.c (w32font_draw): Delete brush after using it.
13232
132332008-02-01 Jason Rumney <jasonr@gnu.org>
13234
13235 * w32font.c (w32font_open): Don't set font_idx.
13236 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13237 to font settings.
13238 (w32font_draw): Fill background explicitly.
13239
132402008-02-01 Jason Rumney <jasonr@gnu.org>
13241
13242 * w32term.c (w32_initialize): Don't call w32font_initialize.
13243
13244 * w32font.c (w32font_info): Remove subranges.
13245 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13246 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13247 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13248 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13249 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13250 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13251 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13252 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13253 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13254 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13255 New symbols.
13256 (font_callback_data): New struct.
13257 (w32font_list, w32font_match): Use it.
13258 (w32font_open): Don't populate subranges.
13259 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13260 (w32font_encode_char): Always return unicode code-point as-is.
13261 (w32font_text_extents): Supply a transformation matrix to
13262 GetGlyphOutline. Never look up by glyph index. Avoid looping
13263 twice. Use unicode version of GetTexExtentPoint32 instead of
13264 glyph index version.
13265 (set_fonts_frame): Remove.
13266 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13267 set frame parameter. Use backward compatible fake foundries.
13268 Save generic family in extra slot under QCfamily. Make width slot
13269 constant. Save QCspacing value. Save list of scripts instead of
13270 binary subranges.
13271 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13272 (add_font_entity_to_list): Use font_callback_data struct. Filter
13273 unwanted fonts.
13274 (add_one_font_entity_to_list): Use font_callback_data struct.
13275 (w32_registry): Default to iso10646_1.
13276 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13277 string font registries. Don't fill in font name if it is a generic
13278 family name, fill family instead. Use spacing, family and script
13279 extra info to fill pitch, family and charset fields.
13280 (list_all_matching_fonts): Use font_callback_data struct.
13281 (unicode_range_for_char): Remove.
13282 (font_supported_scripts): New function.
13283 (w32font_initialize): Remove.
13284 (syms_of_w32font): Update which symbols are defined.
13285
132862008-02-01 Jason Rumney <jasonr@gnu.org>
13287
13288 * font.c (font_pixel_size): Reverse assq_no_quit args.
13289
13290 * w32term.h (FONT_WIDTH): Report max width, not average.
13291 (FONT_MAX_WIDTH): Remove.
13292 (FONT_AVG_WIDTH): New macro.
13293
13294 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13295 redefinition of FONT_WIDTH.
13296
13297 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13298 (w32_cache_char_metrics): Use FONT_WIDTH.
13299
13300 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13301
133022008-02-01 Jason Rumney <jasonr@gnu.org>
13303
13304 * w32font.c (w32font_open): Make lfHeight negative.
13305
13306 * w32fns.c (x_default_font_parameter): Use new style font name.
13307 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13308
133092008-02-01 Jason Rumney <jasonr@gnu.org>
13310
13311 * w32font.c (QCsubranges): New symbol.
13312 (w32font_open, w32font_has_char): Get subranges from subproperty
13313 of extra.
13314 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13315 (syms_of_w32font): Define :subranges symbol.
13316
13317 * font.c (font_put_extra): Expose externally.
13318
13319 * font.h (font_put_extra): Move declaration from font.c.
13320
13321 * font.c (Ffont_get): Use font driver to determine otf capability.
13322 (adjust_anchor): Check if driver defines anchor_point before using.
13323
13324 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13325 (w32font_draw): Use options.
13326 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13327 Fix detection of truetype fonts.
13328 (registry_to_w32_charset): Handle charsets other than iso8859-1
13329 expressed as lisp symbols.
13330 (w32_registry): Express charset as lisp symbol.
13331 (fill_in_logfont): Reverse pixel and point height logic.
13332 Don't set width here. Set quality to default.
13333
13334 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13335 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13336
13337 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13338 Remove redundant loop and allocation.
13339
13340 * makefile.w32-in (font.o, w32font.o): New objects.
13341 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13342 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13343
13344 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13345 STORE_XCHARB a valid l-value.
13346
13347 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13348 calculations for non-Truetype fonts.
13349 (x_draw_glyph_string): Sync with xterm.c.
13350 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13351 Remove redundant code.
13352 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13353
13354 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13355 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13356
13357 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13358 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13359
13360 * w32font.c: New file for w32 font backend.
13361
133622008-02-01 Kenichi Handa <handa@m17n.org>
13363
13364 * term.c: Don't include "buffer.h" twice.
13365
133662008-02-01 Kenichi Handa <handa@m17n.org>
13367
13368 * character.c (Funibyte_string): New function.
13369 (syms_of_character): Defsubr it.
13370
133712008-02-01 Jason Rumney <jasonr@gnu.org>
13372
13373 * w32term.c [USE_FONT_BACKEND]:
13374 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13375 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13376 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13377 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13378 (x_free_frame_resources): Sync with xterm.c.
13379
133802008-02-01 Andreas Schwab <schwab@suse.de>
13381
13382 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13383 char-table size.
13384
133852008-02-01 Kenichi Handa <handa@m17n.org>
13386
13387 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13388
133892008-02-01 Kenichi Handa <handa@m17n.org>
13390
13391 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13392 font_otf_gpos, add font_drive_otf.
13393
13394 * fontset.c (fontset_find_font): Pay attention to font size
13395 specified for a font.
13396 (reorder_font_vector): Check contents of font_def.
13397
13398 * font.c (struct otf_list): Delete it.
13399 (otf_list): Make it a lisp variable.
13400 (otf_open): Use lispy otf_list.
13401 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13402 (check_otf_features): New function.
13403 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13404 New functions.
13405 (font_drive_otf): New function merging font_otf_gsub and
13406 font_otf_gpos.
13407 (font_open_for_lface): New arg spec. Change argument order.
13408 (font_load_for_face): Adjust for the change of font_open_for_lface.
13409 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13410 Ffont_otf_gpos.
13411 (syms_of_font): Staticpro otf_list. Delete defsubr of
13412 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13413
13414 * xfaces.c (set_font_frame_param): Adjust for the change of
13415 font_open_for_lface.
13416
13417 * font.h (font_open_for_lface): Adjust prototype.
13418 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13419 member otf_drive.
13420 (font_otf_gsub, font_otf_gpos): Delete externs.
13421 (font_drive_otf): Extern it.
13422
134232008-02-01 Kenichi Handa <handa@m17n.org>
13424
13425 * font.c (font_at): If the window W is not on a window system,
13426 return Qnil.
13427
13428 * coding.c (produce_chars, encode_coding): Don't call
13429 insert_from_gap if no characters to produce.
13430
134312008-02-01 Kenichi Handa <handa@m17n.org>
13432
13433 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13434 Fclear_face_cache.
13435
13436 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13437
134382008-02-01 Miles Bader <miles@gnu.org>
13439
13440 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13441 Parse "--disable-font-backend" option.
13442 (standard_args): Add "--disable-font-backend" option.
13443
134442008-02-01 Kenichi Handa <handa@m17n.org>
13445
13446 * fontset.c (fontset_find_font): New function.
13447 (fontset_font): Use fontset_find_font.
13448 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13449 Register the specified font for all Latin characters.
13450 (new_fontset_from_font): Register the specified font for all Latin
13451 characters.
13452 (dump_fontset): For a realized fontset, include the base fontset
13453 name in the returned vector.
13454
134552008-02-01 Kenichi Handa <handa@m17n.org>
13456
13457 * character.h (CHAR_STRING): Cast C to unsigned on calling
13458 char_string.
13459
13460 * character.c (char_string): Type of arg C changed to unsigned.
13461 Signal an error if C is an invalid character code.
13462
13463 * editfns.c (general_insert_function, Fchar_to_string):
13464 Use CHARACTERP, not INTEGERP.
13465
134662008-02-01 Kenichi Handa <handa@m17n.org>
13467
13468 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13469 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13470
13471 * regex.c (analyse_first): Fix for multibyte characters in "case
13472 charset:" and "case categoryspec:".
13473
134742008-02-01 Andreas Schwab <schwab@suse.de>
13475
13476 * Makefile.in (LIBES): Move standard libraries to the end.
13477
134782008-02-01 Kenichi Handa <handa@m17n.org>
13479
13480 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13481 nonzero, don't shrink the buffer nextb.
13482
13483 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13484
13485 * coding.c (coding_alloc_by_making_gap): New arg offset.
13486 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13487 offset.
13488 (decode_coding_iso_2022): Update coding->safe_charsets.
13489 (decode_coding_gap): Temporarily set
13490 current_buffer->text->inhibit_shrinking to 1.
13491
134922008-02-01 Kenichi Handa <handa@m17n.org>
13493
13494 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13495 indexing into elements of s->cmp and s->char2b.
13496
134972008-02-01 Juanma Barranquero <lekktu@gmail.com>
13498
13499 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13500
135012008-02-01 Kenichi Handa <handa@m17n.org>
13502
13503 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13504 target_multibyte instead of multibyte.
13505 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13506 (bcmp_translate): Change the argument name from multibyte to
13507 target_multibyte.
13508
135092008-02-01 Kenichi Handa <handa@m17n.org>
13510
13511 These changes are to compile a regexp into a pattern that can be
13512 used both for multibyte and unibyte targets.
13513
13514 * Makefile.in (search.o): Depend on charset.h.
13515
13516 * character.c (multibyte_char_to_unibyte_safe): New function.
13517
13518 * search.c: Include "charset.h".
13519 (compile_pattern_1): Delete argument multibyte. Don't set
13520 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13521 (compile_pattern): Don't compare cp->buf.target_multibyte.
13522 Compare cp->buf.charset_unibyte.
13523 (compile_pattern): Set cp->buf.target_multibyte.
13524
13525 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13526
13527 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13528
13529 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13530 multibyte. Change callers.
13531 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13532 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13533 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13534 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13535 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13536 (regex_compile): Make the compiled pattern usable both for
13537 multibyte and unibyte targets.
13538 (analyse_first): Make the fastmap usable both for multibyte and
13539 unibyte targets.
13540 (TRANSLATE_VIA_MULTIBYTE): Delete.
13541 (re_match_2_internal): Pay attention to the case that the
13542 multibyteness of bufp and target may be different.
13543
135442008-02-01 Kenichi Handa <handa@m17n.org>
13545
13546 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13547 empty box occupy at least one column width.
13548
135492008-02-01 Miles Bader <miles@gnu.org>
13550
13551 * Makefile.in: Remove redundant HAVE_XFT clause.
13552
135532008-02-01 Kenichi Handa <handa@m17n.org>
13554
13555 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13556
135572008-02-01 Kenichi Handa <handa@m17n.org>
13558
13559 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13560 being nil.
13561
135622008-02-01 Kenichi Handa <handa@m17n.org>
13563
13564 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13565
135662008-02-01 Kenichi Handa <handa@m17n.org>
13567
13568 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13569
135702008-02-01 Kenichi Handa <handa@m17n.org>
13571
13572 * search.c (simple_search): Fix previous change.
13573
135742008-02-01 Kenichi Handa <handa@m17n.org>
13575
13576 * xftfont.c (ftfont_font_format): Extern declaration.
13577
13578 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13579
13580 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13581 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13582
13583 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13584 (ftfont_font_format): Fix previous change.
13585
13586 * font.h (Ffont_xlfd_name): EXFUN it.
13587
13588 * font.c (font_parse_xlfd): Fix the array size of `f'.
13589 (register_font_driver): Use EQ to compare driver->type.
13590
13591 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13592 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13593 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13594
135952008-02-01 Kenichi Handa <handa@m17n.org>
13596
13597 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13598 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13599
136002008-02-01 Kenichi Handa <handa@m17n.org>
13601
13602 * xfont.c (xfont_open): Set font->format.
13603
13604 * xftfont.c (xftfont_open): Set font->format.
13605
13606 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13607 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13608 (ftfont_open): Set font->format.
13609 (ftfont_font_format): New function.
13610
13611 * font.h (struct font): New member format.
13612
13613 * font.c (Qopentype): New variable.
13614 (syms_of_font): Defsym it.
13615 (Fquery_font): Change the format of the last element of the return
13616 value.
13617
136182008-02-01 Kenichi Handa <handa@m17n.org>
13619
13620 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13621 last resort.
13622
136232008-02-01 Kenichi Handa <handa@m17n.org>
13624
13625 * coding.c (detect_coding_charset): Fix detection of multi-byte
13626 charset.
13627
136282008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13629
13630 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13631
136322008-02-01 Kenichi Handa <handa@m17n.org>
13633
13634 * xdisp.c (get_next_display_element): Set it->face_id for the
13635 first component of a composition.
13636 (x_produce_glyphs): Check if the font is changed or not for composition.
13637
136382008-02-01 Kenichi Handa <handa@m17n.org>
13639
13640 * fontset.c (Qlatin): New variable.
13641 (syms_of_fontset): Define it as a lisp symbol.
13642 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13643
136442008-02-01 Kenichi Handa <handa@m17n.org>
13645
13646 * font.c (font_unparse_fcname): Pay attention to the case that
13647 some of font property is a null string.
13648
136492008-02-01 Kenichi Handa <handa@m17n.org>
13650
13651 * term.c: Include "composite.h".
13652 (encode_terminal_code): Output all components of composition.
13653 Check the size of encode_terminal_src.
13654 (produce_glyphs): For composition, call produce_composite_glyph.
13655 (append_composite_glyph, produce_composite_glyph): New functions.
13656
13657 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13658 is not found, get font_info from the current ascii face.
13659
136602008-02-01 Kenichi Handa <handa@m17n.org>
13661
13662 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13663 buffer-file-name to Qnil before calling insert_from_buffer.
13664
13665 * font.c (font_unparse_fcname): Pay attention to the case that
13666 foundry is a null string.
13667
136682008-02-01 Kenichi Handa <handa@m17n.org>
13669
13670 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13671
13672 * font.c (Qunicode_sip): New variable.
13673 (syms_of_font): Declare it as a Lisp symbol.
13674
13675 * font.h (Qunicode_sip): Extern it.
13676
136772008-02-01 Kenichi Handa <handa@m17n.org>
13678
13679 * composite.c (get_composition_id): Pay attention to TAB component.
13680
13681 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13682 TAB. Adjust for the change of s->char2b which always points to
13683 the first element of allocated memory.
13684
13685 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13686
13687 * xdisp.c (handle_composition_prop): Set it->c to the first
13688 non-TAB component.
13689 (fill_composite_glyph_string): Change argument.
13690 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13691 (x_produce_glyphs): Fix handling of left/right padding.
13692
136932008-02-01 Kenichi Handa <handa@m17n.org>
13694
13695 * coding.c (detect_coding_system): Fix for handling off
13696 inhibit_iso_escape_detection. Fix for the case that no coding
13697 system is defined for a specific coding category.
13698
136992008-02-01 Kenichi Handa <handa@m17n.org>
13700
13701 * font.c (font_matching_entity): Delete unused local var.
13702
13703 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13704 opening a font.
13705
13706 * fileio.c (Finsert_file_contents): On recovering a file, assume
13707 Unix-like eol.
13708 (choose_write_coding_system): On auto-saving a file, force
13709 Unix-like eol.
13710
13711 * coding.c (setup_coding_system): Fix setting of
13712 coding->common_flags based on eol_type.
13713 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13714 inherit from it.
13715
137162008-02-01 Kenichi Handa <handa@m17n.org>
13717
13718 * alloc.c (NSTATICS): Increas to 0x600.
13719
137202008-02-01 Kenichi Handa <handa@m17n.org>
13721
13722 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13723 (ftfont_list): Don't check :name property.
13724 (ftfont_match): New function.
13725 (ftfont_pattern_entity): If the pattern doesn't contain
13726 FC_SPACING, don't assume FC_MONO.
13727
13728 * font.h (struct font_driver): New member `match'.
13729 (font_update_drivers): Adjust prototype.
13730
13731 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13732 property of FONT.
13733 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13734 them unconditionally.
13735 (font_matching_entity): New function.
13736 (font_open_by_name): Try font_matching_entity if exact match is
13737 not found.
13738 (font_update_drivers): Delete the arg FONT. Return a list of
13739 actually used backends. Don't free faces, font caches here.
13740 Don't store data in frame parameters. Don't call x_set_font.
13741 (Ffont_spec): Store :name property as is.
13742 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13743 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13744 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13745 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13746 Call font->driver->otf_gsub instead of font_otf_gsub.
13747
13748 * frame.c (x_set_font_backend): Do more works that were done in
13749 font_update_drivers before.
13750
13751 * xfont.c (xfont_match): New function.
13752 (xfont_driver): Set xfont_driver.match to xfont_match.
13753 (xfont_draw): Set font in GC if necessary.
13754
13755 * ftxfont.c (ftxfont_match): New function.
13756 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13757
13758 * xftfont.c (xftfont_match): New function.
13759 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13760
137612008-02-01 Kenichi Handa <handa@m17n.org>
13762
13763 * font.h (struct font): New member scalable.
13764 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13765 (font_otf_gsub): Adjust prototype.
13766
13767 * font.c (font_otf_capability): Fix handling of the default langsys.
13768 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13769 Check the contents of SPEC.
13770 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13771 (check_gstring): New function.
13772 (REPLACEMENT_CHARACTER): New macro.
13773 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13774 glyph codes of GSTRING.
13775 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13776 (font_prepare_composition): Set cmp->glyph_len.
13777 (font_open_entity): Set font->scalable.
13778 (Ffont_get): Handle :otf property.
13779 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13780 functions.
13781 (Fquery_font): Use font->font.full_name.
13782 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13783 Sfont_otf_alternates.
13784
13785 * ftfont.c (ftfont_open): Set font->font.full_name and
13786 font->font.name properly. Fix calculation of font->font.height
13787 and font->min_width.
13788
13789 * ftxfont.c (ftxfont_create_gcs): New function.
13790 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13791 (ftxfont_draw_backgrond): Fix filling region.
13792 (ftxfont_default_fid): New function.
13793 (ftxfont_open): Set xfont->fid to the return value of
13794 ftxfont_default_fid.
13795 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13796 (ftxfont_done_face): Free only GCs that are created by
13797 ftxfont_create_gcs.
13798 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13799
13800 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13801 Clip to src->width, etc (not src->clip_XXX).
13802
13803 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13804 FontBackend frame parameter.
13805
138062008-02-01 Kenichi Handa <handa@m17n.org>
13807
13808 * font.h (struct font_driver_list): New member `on'.
13809 (Fclear_font_cache): EXFUN it.
13810 (font_update_drivers): Extern it.
13811
13812 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13813 (font_list_entities): Check driver_list->on.
13814 (register_font_driver): Initalize `on' member to 0.
13815 (font_update_drivers): New function.
13816 (Fclear_font_cache): Check driver_list->on.
13817
13818 * frame.h (Qfont_backend): Extern it.
13819 (x_set_font_backend): Extern it.
13820
13821 * frame.c (Qfont_backend): New variable.
13822 (frame_parms): New element for font-backend.
13823 (x_set_font_backend): New function.
13824
13825 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13826 FontBackend frame parameter.
13827 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13828 x_set_font_backend.
13829
13830 * xfont.c (xfont_list): Don't try listing by :name property if the
13831 name is not for XLFD.
13832
138332008-02-01 Kenichi Handa <handa@m17n.org>
13834
13835 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13836 (LGLYPH_SET_TO): New macros.
13837 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
13838 element of G is vector or not.
13839 (font_at): Extern it.
13840
13841 * font.c: Include window.h.
13842 (font_lispy_object): New function.
13843 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
13844 end of valid glyph.
13845 (font_close_object): Fix getting (struct font *).
13846 (font_at): New function.
13847 (Ffont_get): If FONT is a font-object, get entity from it.
13848 (Ffont_make_gstring): Initialize elements of glyphs with nil.
13849 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
13850 range check.
13851 (Ffont_at): New function.
13852 (syms_of_font): Defsubr Sfont_at.
13853
13854 * xdisp.c (it_props): Move the entry for Qauto_composed to just
13855 before the entry for Qcomposition.
13856 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
13857 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
13858 the font in gstring.
13859 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
13860 LGLYPH_FORM (g) to detect the end of valid glyph.
13861 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
13862 we are composing with gstring.
13863
13864 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
13865 Check if adjustment is vector or not.
13866
13867 * Makefile.in (font.o): Make it depends on window.h.
13868
138692008-02-01 Kenichi Handa <handa@m17n.org>
13870
13871 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
13872 adjustment is vector or not.
13873
138742008-02-01 Miles Bader <miles@gnu.org>
13875
13876 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
13877
138782008-02-01 Kenichi Handa <handa@m17n.org>
13879
13880 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
13881 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
13882 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
13883
13884 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
13885 (DEVICE_DELTA): Fix typo.
13886 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
13887 LGLYPH format.
13888
13889 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13890 the change of LGLYPH format.
13891
138922008-02-01 Kenichi Handa <handa@m17n.org>
13893
13894 * ftfont.c (ftfont_list): Fix typo.
13895 (ftfont_build_basic_charsets): Don't include letters with diacritics.
13896
138972008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13898
13899 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
13900
13901 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
13902 xftface_info is non-NULL.
13903
139042008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13905
13906 * ftfont.c (ftfont_list): Move misplaced #endif.
13907
139082008-02-01 Kenichi Handa <handa@m17n.org>
13909
13910 * ftfont.c (ftfont_list): Pay attention to the case that
13911 FC_CAPABILITY is not defined.
13912
139132008-02-01 Kenichi Handa <handa@m17n.org>
13914
13915 * xftfont.c (xftfont_open): Set charset related members to -1.
13916
13917 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
13918 QCname.
13919 (ftfont_open): Set charset related members to -1.
13920
13921 * fontset.c (Votf_script_alist): New variable.
13922 (syms_of_fontset): Initialize it.
13923 (fontset_font): Delete unused variable.
13924
13925 * fontset.h (Votf_script_alist): Extern it.
13926
13927 * font.c (font_find_for_lface): Optimize code.
13928
13929 * font.h (font_close_object, font_merge_old_spec): Extern them.
13930
139312008-02-01 Kenichi Handa <handa@m17n.org>
13932
13933 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
13934 (syms_of_font): Initialize them.
13935 (font_pixel_size): Allow float value in dpi.
13936 (font_prop_validate_type): Delete.
13937 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
13938 Change caller.
13939 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
13940 (font_prop_validate_extra): Delete.
13941 (font_prop_validate_spacing): New function.
13942 (font_property_table): Add elements for all known properties.
13943 (get_font_prop_index): Rename from check_font_prop_name. New
13944 argument FROM. Change caller.
13945 (font_prop_validate): Validate all known properties.
13946 (font_put_extra): Delete argument force. Change caller.
13947 (font_expand_wildcards): Make it static. Fix the way of shrinking
13948 the possible range.
13949 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
13950 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
13951 Change caller.
13952 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
13953 (font_parse_fcname): Delete argument merge. Fix parsing of point
13954 size. Don't validate properties values here. Change caller.
13955 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
13956 (font_open_by_name): Delete unused variable.
13957 (Ffont_spec): Likewise. Validate property values.
13958 (Ffont_match_p): New function.
13959
13960 * font.h (QCscalable): Extern it.
13961 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
13962
13963 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
13964
13965 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
13966 (xfont_list_pattern): New function.
13967 (xfont_list): Use xfont_list_pattern.
13968
139692008-02-01 Kenichi Handa <handa@m17n.org>
13970
13971 * font.h (Flist_fonts): EXFUN it.
13972
139732008-02-01 Jason Rumney <jasonr@gnu.org>
13974
13975 * w32term.c (w32_initialize): Add back smoothing_type and
13976 smoothing_enabled definitions.
13977
139782008-02-01 Kenichi Handa <handa@m17n.org>
13979
13980 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
13981 s->face->font on determining underline position.
13982
139832008-02-01 Kenichi Handa <handa@m17n.org>
13984
13985 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
13986 (font_has_char): Accept font-object too.
13987 (font_find_for_lface): Try at first with a size specified in face.
13988
139892008-02-01 Kenichi Handa <handa@m17n.org>
13990
13991 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
13992 font_open_by_name.
13993
139942008-02-01 Kenichi Handa <handa@m17n.org>
13995
13996 * font.h (QCspacing, QCdpi): Extern them.
13997 (enum font_spacing): New enum.
13998 (FONT_PIXEL_SIZE_QUANTUM): New macro.
13999
14000 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
14001 (QCspacing, QCdpi): New variables.
14002 (syms_of_font): Initialize them.
14003 (font_pixel_size): New function.
14004 (font_put_extra): New function.
14005 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
14006 in FONT_EXTRA.
14007 (font_parse_fcname): Handle enumerated values (e.g. bold).
14008 Fix handling font size. Add QCname property that contains only
14009 unknown properties.
14010 (font_score): Change argument. Change caller. Pay attention to
14011 FONT_PIXEL_SIZE_QUANTUM.
14012 (font_sort_entites, font_list_entities, font_find_for_lface)
14013 (font_open_for_lface, font_open_by_name): Fix handling of font size.
14014 (Ffont_spec): Add QCname property that contains only unknown properties.
14015
14016 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
14017 include weight in listing pattern, instead check weight of each
14018 listed font. Don't include scalable in pattern. Pay attention to
14019 FONT_PIXEL_SIZE_QUANTUM.
14020
140212008-02-01 Kenichi Handa <handa@m17n.org>
14022
14023 * font.c (font_parse_fcname): Fix parsing of point-size.
14024 (font_unparse_fcname): Produce symbolic names for style properties.
14025 (font_list_entities): Handle float size correctly.
14026 (font_open_by_name): Prefer `normal' property values if the name
14027 doesn't specify them.
14028
14029 * fontset.c (Finternal_char_font): Use font_get_name, not
14030 Ffont_xlfd_name.
14031
14032 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
14033 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
14034 pattern. Don't force scalable.
14035
14036 * xftfont.c (xftfont_open): For generating a name, start from
14037 96-byte buffer.
14038
140392008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14040
14041 * frame.h (x_new_fontset2): Fix prototype.
14042
140432008-02-01 Kenichi Handa <handa@m17n.org>
14044
14045 * font.h (struct font_driver): Delete member parse_name.
14046 (font_match_p, font_get_spec, font_parse_fcname)
14047 (font_unparse_fcname): Extern them.
14048 (font_get_name): Adjust prototype.
14049
14050 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
14051 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
14052 (font_expand_wildcards): Fix handling ENCODING field. Avoid
14053 unnecessary checks for weight, slant, and swidth.
14054 (font_parse_fcname): New function.
14055 (font_unparse_fcname): New function.
14056 (font_parse_name): New function.
14057 (font_match_p): New function.
14058 (font_get_name): Change return value to Lisp string.
14059 (font_get_spec): New function.
14060 (Qunspecified, Qignore_defface): Don't extern them.
14061 (font_find_for_lface): Assume that LFACE is fully specified.
14062 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
14063 object, use it for FACE.
14064 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
14065 driver->parse_name.
14066 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
14067
14068 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
14069 prototype.
14070
14071 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
14072 argument F. Don't call Fnew_fontset. Instead, directly call
14073 make_fontset.
14074
14075 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
14076
14077 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
14078 of x_new_fontset2.
14079
14080 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
14081 (Qsans__serif): New variables.
14082 (ftfont_generic_family_list): New variable.
14083 (syms_of_ftfont): Initialize the above variables.
14084 (ftfont_pattern_entity): Delete argument NAME.
14085 (ftfont_list_generic_family): New function.
14086 (ftfont_parse_name): Delete this function.
14087 (ftfont_list): Try generic family only when FcFontList found no font.
14088 (ftfont_list_family): Fix args to FcObjectSetBuild.
14089
14090 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
14091 object in attrs[LFACE_FONT_INDEX].
14092 (set_lface_from_font_name): Cancel all changes for font-backend.
14093 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
14094 function.
14095 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
14096 font object in QCfont attribute.
14097 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
14098 (realize_default_face) [USE_FONT_BACKEND]: Call
14099 set_lface_from_font_and_fontset.
14100
14101 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
14102 "fixed", and signal error here if no suitable font was found.
14103
14104 * xfont.c (xfont_parse_name): Delete this function.
14105
14106 * xftfont.c (xftfont_open): Change coding style of error
14107 handling. Generate fontconfig's fontname pattern.
14108
14109 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
14110 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
14111
14112 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
14113 Both args FONTSET and FONT_OBJECT must be existing ones.
14114
141152008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14116
14117 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
14118
141192008-02-01 Kenichi Handa <handa@m17n.org>
14120
14121 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
14122
14123 * font.h (struct font): Fix typo.
14124
14125 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
14126 XLFD_XXX_INDEX.
14127 (enum xlfd_field_mask): New enum.
14128 (intern_font_field): Changed argument. Change caller. If digits
14129 are followed by non-digits, return a symbol.
14130 (font_expand_wildcards): New function.
14131 (font_parse_xlfd): Fix wildcard handling.
14132 (Ffont_spec): If :name is specified, reflect the info in the other
14133 properties.
14134
14135 * ftfont.c (ftfont_pattern_entity): Fix typo.
14136 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
14137 locale.
14138
141392008-02-01 Kenichi Handa <handa@m17n.org>
14140
14141 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
14142
14143 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
14144 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
14145 registry doesn't specify encoding part.
14146 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
14147 (font_open_by_name): At first try parsing the name.
14148 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
14149 as Lisp symbols.
14150
14151 * fontset.c (reorder_font_vector): Pay attention to the case that
14152 the 3rd element of font_def is nil.
14153 (fontset_font): For the default fontset, append one more fontset
14154 elements for a script-based font specification. Don't add script
14155 attribute on finding a font.
14156 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
14157 font name.
14158 (fontset_ascii_font): If a font can't be opened, return nil.
14159
14160 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
14161 (ftfont_pattern_entity): New function.
14162 (ftfont_get_cache): Assume that freetype_font_cache is already
14163 initialized.
14164 (ftfont_list): Handle the case that a file is specified in font
14165 name. Use ftfont_pattern_entity to generate entities.
14166 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
14167 (syms_of_ftfont): Initialize freetype_font_cache.
14168
14169 * xftfont.c (xftfont_open): Make the font name fontconfig's
14170 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
14171 (xftfont_close): Free font->font.name if not NULL.
14172
14173 * xfont.c (xfont_list): If script is specified for a font, return
14174 null_vector.
14175 (xfont_list_family): Declare argument type.
14176
14177 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
14178 name, set LFACE_FONT (lface) to nil.
14179
14180 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
14181 return Qnil.
14182
141832008-02-01 Kenichi Handa <handa@m17n.org>
14184
14185 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
14186 (standard_args): Add "-enable-font-backend".
14187
141882008-02-01 Kenichi Handa <handa@m17n.org>
14189
14190 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
14191 (struct xftdraw_list, xftdraw_list): Delete them.
14192 (register_xftdraw, check_xftdraw): Delete them.
14193 (xftfont_prepare_face): Don't call register_xftdraw.
14194 (xftfont_done_face): Don't call check_xftdraw.
14195 (xftfont_draw): Get background color only when with_background is
14196 nonzero.
14197
14198 * xfont.c (xfont_encode_char): Fix calculation of char2b.
14199
142002008-02-01 Kenichi Handa <handa@m17n.org>
14201
14202 These changes are for the new font handling codes.
14203
14204 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
14205 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
14206 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
14207 (FONTSRC, FONTOBJ): New variables.
14208 (obj): Add $(FONTOBJ).
14209 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
14210 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
14211 @LIBOTF_LIBS@.
14212 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
14213 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
14214
14215 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
14216
14217 * character.h (Vscript_representative_chars): Extern it.
14218
14219 * character.c (Vscript_representative_chars): New variable.
14220 (syms_of_character): Declare it as a Lisp variable.
14221
14222 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
14223 enable_font_backend is nonzero, accept the composition method
14224 COMPOSITION_WITH_GLYPH_STRING.
14225
14226 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
14227 enumeration COMPOSITION_WITH_GLYPH_STRING.
14228
14229 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
14230 members clip_x, clip_y, clip_width, and clip_height.
14231 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14232
14233 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14234 --enable-font-backend. Call syms_of_font.
14235
14236 * fns.c (assoc_no_quit): New function.
14237
14238 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14239 (face_for_font, new_fontset_from_font)
14240 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14241
14242 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14243 (fontset_font, fontset_ascii, face_for_char)
14244 (make_fontset_for_ascii_face, Ffont_info)
14245 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14246 is nonzero, use font-backend mechanism.
14247 (find_font_encoding): Make it non-static.
14248 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14249 New functions.
14250
14251 * frame.h (struct frame): New members resx and resy.
14252 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14253 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14254
14255 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14256 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14257
14258 * lisp.h (assoc_no_quit): Extern it.
14259
14260 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14261 Through out the file, use FONT_INFO_FROM_FACE instead of
14262 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14263 rif->per_char_metric.
14264 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14265 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14266 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14267 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14268 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14269 nonzero, use font-backend mechanism.
14270 (get_per_char_metric): New function.
14271
14272 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14273 (set_lface_from_font_name)
14274 (set_font_frame_param, free_realized_face)
14275 (prepare_face_for_display, clear_face_gcs)
14276 (Finternal_set_font_selection_order, realize_x_face)
14277 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14278 font-backend mechanism.
14279 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14280 (load_face_font) [USE_FONT_BACKEND]: Abort.
14281 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14282 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14283
14284 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14285 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14286 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14287 nonzero, register all available font drivers. Call
14288 x_default_font_parameter for deciding a font.
14289 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14290
14291 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14292 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14293 (x_set_glyph_string_clipping_exactly)
14294 (x_compute_glyph_string_overhangs)
14295 (x_draw_glyph_string_foreground)
14296 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14297 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14298 enable_font_backend is nonzero, use font-backend mechanism.
14299 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14300
143012008-02-01 Kenichi Handa <handa@m17n.org>
14302
14303 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14304 system_eol_type.
14305 (syms_of_coding): Initialize system_eol_type.
14306
14307 * process.c (Fset_process_coding_system): Inherit system's eol
14308 format if necessary.
14309
143102008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14311
14312 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14313
143142008-02-01 Kenichi Handa <handa@m17n.org>
14315
14316 * coding.c (decode_eol): Pay attention to buffer relocation in
14317 del_range_2.
14318 (decode_coding): Call decode_eol before restoring undo_list.
14319
143202008-02-01 Kenichi Handa <handa@m17n.org>
14321
14322 * charset.c (Fdefine_charset_internal): Fix setting of
14323 emacs_mule_bytes.
14324
143252008-02-01 Kenichi Handa <handa@m17n.org>
14326
14327 * keyboard.c (read_char): Check if C is a character or not before
14328 looking up Vkeyboard_translate_table.
14329
143302008-02-01 Kenichi Handa <handa@m17n.org>
14331
14332 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14333 condition to terminate the loop.
14334
143352008-02-01 Kenichi Handa <handa@m17n.org>
14336
14337 * coding.c (produce_composition): Compare charbuf[i] instead of
14338 args[i] against 0.
14339 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14340
143412008-02-01 Kenichi Handa <handa@m17n.org>
14342
14343 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14344 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14345 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14346 detect_coding.
14347 (emacs_mule_char): Handle old style (Emacs 20) component character
14348 of a composition.
14349 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14350 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14351 composition rule.
14352 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14353
143542008-02-01 Kenichi Handa <handa@m17n.org>
14355
14356 * coding.c (encode_coding_ccl): Allocate destination dynamically
14357 when necessary.
14358
143592008-02-01 Kenichi Handa <handa@m17n.org>
14360
14361 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14362 the loop. When quitted, show a proper error message.
14363
143642008-02-01 Kenichi Handa <handa@m17n.org>
14365
14366 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14367 src->clip_head and src->clip_tail temporarily instead of src->hl.
14368
14369 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14370 character sequence.
14371 (Fccl_execute_on_string): Use ASET, not XSET.
14372
143732008-02-01 Kenichi Handa <handa@m17n.org>
14374
14375 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14376
143772008-02-01 Kenichi Handa <handa@m17n.org>
14378
14379 * coding.c (decode_coding): Fix the condition of terminating the
14380 decoding loop.
14381
143822008-02-01 Kenichi Handa <handa@m17n.org>
14383
14384 * data.c (Faset): On setting a character bigger than 255 in a
14385 unibyte string, signal an error instead of make the string multibyte.
14386
143872008-02-01 Kenichi Handa <handa@m17n.org>
14388
14389 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14390 made by a mapping table.
14391
143922008-02-01 Kenichi Handa <handa@m17n.org>
14393
14394 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14395 not.
14396 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14397 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14398
14399 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14400 s->face is NULL or not.
14401
144022008-02-01 Kenichi Handa <handa@m17n.org>
14403
14404 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14405 (x_draw_glyph_string): Fix drawing of right_overhang and
14406 left_overhang around/on cursor.
14407
14408 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14409
144102008-02-01 Kenichi Handa <handa@m17n.org>
14411
14412 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14413
144142008-02-01 Kenichi Handa <handa@m17n.org>
14415
14416 * coding.c (Fdefine_coding_system_internal)
14417 (Fdefine_coding_system_alias): Avoid a duplicated element in
14418 Vcoding_system_alist.
14419
144202008-02-01 Kenichi Handa <handa@m17n.org>
14421
14422 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14423
14424 * coding.c (Qcoding_system_define_form): New variable.
14425 (syms_of_coding): Intern and staticpro it.
14426 (Fcoding_system_p): Check Qcoding_system_define_form.
14427 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14428
14429 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14430 Fcoding_system_p.
14431 (CHECK_CODING_SYSTEM): If ID is not available, call
14432 Fcheck_coding_system.
14433 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14434 Try also Fcheck_coding_system.
14435
144362008-02-01 Kenichi Handa <handa@m17n.org>
14437
14438 * coding.c (code_conversion_restore): GCPRO arg.
14439
144402008-02-01 Kenichi Handa <handa@m17n.org>
14441
14442 * character.c (lisp_string_width): Check multibyteness of STRING.
14443
144442008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14445
14446 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14447 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14448 (decode_mac_font_name): Use decode_coding_c_string instead of
14449 decode_coding.
14450 (x_load_font): Initialize fontp->fontset to -1. Set
14451 fontp->encoding_type.
14452
144532008-02-01 Kenichi Handa <handa@m17n.org>
14454
14455 * search.c (search_buffer): Give up BM search on case-fold-search
14456 if one of a target character has a case-equivalence of different
14457 byte length even if that target charcter is an ASCII.
14458 (simple_search): Fix calculation of byte length of matched text.
14459 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14460
144612008-02-01 Kenichi Handa <handa@m17n.org>
14462
14463 * coding.c (decode_coding): Fix handling of invalid bytes.
14464
144652008-02-01 Kenichi Handa <handa@m17n.org>
14466
14467 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14468 Unicode characters.
14469
144702008-02-01 Kenichi Handa <handa@m17n.org>
14471
14472 * coding.c (encode_coding_object): If a pre-write-conversion
14473 function makes a new buffer, kill it.
14474
144752008-02-01 Kenichi Handa <handa@m17n.org>
14476
14477 * coding.c (QCascii_compatible_p): New variable.
14478 (syms_of_coding): Initialize it.
14479 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14480 calling string_char.
14481 (record_conversion_result): Add `default:' case.
14482 (coding_charset_list): Delete unused variable `coding_type'.
14483 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14484 property in the plist of the coding system.
14485 (Fcoding_system_put): Check QCascii_compatible_p.
14486
144872008-02-01 Miles Bader <miles@gnu.org>
14488
14489 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14490 removed calculation of frame `f', as it's now used.
14491
144922008-02-01 Kenichi Handa <handa@m17n.org>
14493
14494 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14495 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14496 (UNIDATA): New variable.
14497 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14498 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14499 $(RUN_TEMACS) unconditionally.
14500
145012008-02-01 Kenichi Handa <handa@m17n.org>
14502
14503 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14504 (admindir): New variable.
14505 ($(lispsource)international/charprop.el): New target.
14506
145072008-02-01 Miles Bader <miles@gnu.org>
14508
14509 * character.c (chars-in-region): Remove obsolete function.
14510 (syms_of_character): Remove its initialization.
14511
145122008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14513
14514 * w32select.c (validate_coding_system)
14515 (setup_windows_coding_system): New functions.
14516 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14517 setup_windows_coding_system.
14518 (setup_config, Fw32_get_clipboard_data): Use
14519 validate_coding_system.
14520 (Fx_selection_exists): Move call to setup_config to a place
14521 where signals are allowed.
14522
14523 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14524 (Fcheck_coding_system): Add declarations.
14525
145262008-02-01 Kenichi Handa <handa@m17n.org>
14527
14528 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14529
145302008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14531
14532 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14533 string as the second argument for x_new_fontset.
14534
145352008-02-01 Kenichi Handa <handa@m17n.org>
14536
14537 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14538 (encode_coding_object): Use safe_call instead of call2.
14539
145402008-02-01 Kenichi Handa <handa@m17n.org>
14541
14542 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14543
14544 * Makefile.in (lisp): Include charprop.el.
14545
145462008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14547
14548 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14549 Not sure if it's unnecessary.
14550
145512008-02-01 Steven Tamm <steventamm@mac.com>
14552
14553 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14554 some possibly unnecessary fontset checking code that crashed
14555 when creating a new frame.
14556
145572008-02-01 Kenichi Handa <handa@m17n.org>
14558
14559 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14560 lookup_face.
14561
14562 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14563
14564 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14565
145662008-02-01 Kenichi Handa <handa@m17n.org>
14567
14568 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14569 (coding_charset_list): New function.
14570
14571 * coding.h (coding_charset_list): Extern it.
14572
145732008-02-01 Kenichi Handa <handa@m17n.org>
14574
14575 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14576 concatenation of family and registry.
14577
145782008-02-01 Kenichi Handa <handa@m17n.org>
14579
14580 * character.h (BYTE8_STRING): Fix typo.
14581
14582 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14583 string to multibyte (sync to HEAD).
14584
14585 * casefiddle.c (casify_region): Handle changes in byte-length
14586 using replace_range_2 (sync to HEAD).
14587
145882008-02-01 Andreas Schwab <schwab@suse.de>
14589
14590 * chartab.c (map_char_table): GCPRO table and arg.
14591
145922008-02-01 Kenichi Handa <handa@m17n.org>
14593
14594 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14595 already at limit.
14596
145972008-02-01 Kenichi Handa <handa@m17n.org>
14598
14599 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14600 instead of fast_c_string_match_ignore_case.
14601 (find_font_encoding): Change argument to Lisp_Object. Use
14602 fast_string_match_ignore_case instead of
14603 fast_c_string_match_ignore_case. Change caller.
14604
146052008-02-01 Kenichi Handa <handa@m17n.org>
14606
14607 * xdisp.c (get_next_display_element): In unibyte case, decide to
14608 display in octal form by checking a character by
14609 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14610
14611 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14612
14613 * character.c (unibyte_has_multibyte_table): New variable.
14614
14615 * character.h (unibyte_has_multibyte_table): Extern it.
14616 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14617
146182008-02-01 Kenichi Handa <handa@m17n.org>
14619
14620 * coding.c (encode_coding_iso_2022): Fix handling of charset
14621 annotation.
14622
146232008-02-01 Kenichi Handa <handa@m17n.org>
14624
14625 * coding.c (setup_coding_system): If coding_system is nil, use
14626 Qundecided.
14627 (Fterminal_coding_system): Return nil if terminal coding system is
14628 `undecided'.
14629 (syms_of_coding): Define coding-system `undecided' here. Setup
14630 terminal_coding as `undecided'.
14631
146322008-02-01 Kenichi Handa <handa@m17n.org>
14633
14634 * xdisp.c (message_dolog, set_message_1): Call
14635 unibyte_char_to_multibyte with arg type int.
14636
14637 * lread.c (read1): Fix reading of a char-table.
14638
14639 * print.c (print_object): Include sub char-table in circularities
14640 detection.
14641
146422008-02-01 Kenichi Handa <handa@m17n.org>
14643
14644 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14645 Append the found sequences in car of ARGS instead of prepending.
14646
146472008-02-01 Kenichi Handa <handa@m17n.org>
14648
14649 * fileio.c (report_file_error): Make a unibyte string from
14650 strerror (errorno).
14651 (Fsubstitute_in_file_name): Fix the arg to
14652 unibyte_char_to_multibyte. It is evaluated twice.
14653
146542008-02-01 Kenichi Handa <handa@m17n.org>
14655
14656 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14657
146582008-02-01 Kenichi Handa <handa@m17n.org>
14659
14660 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14661 BOM is not found.
14662 (detect_coding, detect_coding_system): Optimization for ISO-2022
14663 when no 8-bit data is found.
14664
146652008-02-01 Jason Rumney <jasonr@gnu.org>
14666
14667 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14668
146692008-02-01 Kenichi Handa <handa@m17n.org>
14670
14671 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14672 CHARS.
14673
146742008-02-01 Steven Tamm <steventamm@mac.com>
14675
14676 * macterm.c (mac_encode_char): Add charset argument and update
14677 to use encoding_type.
14678 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14679 switch to pure fontset.
14680 (decode_mac_font_name): Temporarily remove decoding.
14681 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14682 (x_load_font): Temporarily remove encoding.
14683
146842008-02-01 Kenichi Handa <handa@m17n.org>
14685
14686 * xfaces.c (Fface_font): If frame is not on a window system,
14687 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14688 refer to face->font.
14689 (split_font_name_into_vector, build_font_name_from_vector)
14690 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14691 when HAVE_WINDOW_SYSTEM is defined.
14692
146932008-02-01 Kenichi Handa <handa@m17n.org>
14694
14695 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14696 (x_produce_glyphs): Fix setting of members of cmp in case
14697 cmp->glyph_len is zero.
14698
14699 * fontset.c (Fset_fontset_font): Fix docstring.
14700 (Ffontset_info): Make it backward compatible. New arg ALL.
14701
147022008-02-01 Kim F. Storm <storm@cua.dk>
14703
14704 * process.c (read_process_output): Grow decoding_buf when needed;
14705 this could cause a crash in allocate_string and compact_small_strings.
14706
147072008-02-01 Kenichi Handa <handa@m17n.org>
14708
14709 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14710
147112008-02-01 Kenichi Handa <handa@m17n.org>
14712
14713 * coding.c (setup_coding_system): Set coding->common_flags
14714 correctly for raw-text.
14715 (consume_chars): On encoding unibyte text by raw-text, don't check
14716 multibyte form.
14717 (encode_coding): On encoding by raw-text, never use translation tables.
14718
14719 * fileio.c (e_write): Short cut for the case of no encoding.
14720
147212008-02-01 Kenichi Handa <handa@m17n.org>
14722
14723 * coding.c (detect_coding, detect_coding_system): Delete unused
14724 variables.
14725
147262008-02-01 Kenichi Handa <handa@m17n.org>
14727
14728 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14729 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14730
147312008-02-01 Kenichi Handa <handa@m17n.org>
14732
14733 * coding.c (Ffind_coding_systems_region_internal): Include
14734 raw-text and no-conversion in the result.
14735
147362008-02-01 Kenichi Handa <handa@m17n.org>
14737
14738 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14739 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14740 FONT_DEF.
14741 (font_def_arg, add_arg, from_arg, to_arg): New args.
14742 (set_fontset_font): Change argument.
14743 (Fset_fontset_font): Fix for the case that TARGET is a script
14744 name and charset name.
14745 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14746
147472008-02-01 Kenichi Handa <handa@m17n.org>
14748
14749 * fontset.c (fontset_font): Rename from fontset_face. Change return
14750 value.
14751 (face_suitable_for_char_p, face_for_char): Adjust for the change
14752 of fontset_font.
14753 (make_fontset_for_ascii_face): Fix setting of the fontset element
14754 for ASCII.
14755 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14756 to get a font name.
14757 (Ffontset_info): Adjust for the change of fontset_font.
14758
14759 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14760
14761 * character.h (LEADING_CODE_LATIN_1_MIN)
14762 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14763
147642008-02-01 Kenichi Handa <handa@m17n.org>
14765
14766 * editfns.c (check_translation): New function.
14767 (Ftranslate_region_internal): Handle M:N mapping.
14768
147692008-02-01 Kenichi Handa <handa@m17n.org>
14770
14771 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14772
147732008-02-01 Kenichi Handa <handa@m17n.org>
14774
14775 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14776 goto invalid_code.
14777 (decode_coding_iso_2022): Fix handling of invalid designation.
14778
14779 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14780 after calling code_conversion_save.
14781
147822008-02-01 Kenichi Handa <handa@m17n.org>
14783
14784 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14785
14786 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14787
14788 * fontset.c: Include "intervals.h".
14789 (fontset_face): Fix comparing of Lisp_Objects.
14790 (free_face_fontset, new_fontset_from_font_name): Fix
14791 Lisp_Object/int mixup.
14792
14793 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14794
14795 * coding.c: Add many prototypes for static functions.
14796 (get_translation_table): Allow max_lookup to be NULL.
14797 (decode_coding, Ffind_coding_systems_region_internal)
14798 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14799 get_translation_table with max_lookup NULL.
14800
148012008-02-01 Kenichi Handa <handa@m17n.org>
14802
14803 * coding.c (get_translation_table): Declare it as Lisp_Object.
14804 (LOOKUP_TRANSLATION_TABLE): New macro.
14805 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14806 instead of CHAR_TABLE_REF.
14807
148082008-02-01 Kenichi Handa <handa@m17n.org>
14809
14810 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14811 annotation data format.
14812 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14813 Change arguments FROM and TO to single argument NCHARS. Change caller.
14814 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14815 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14816 (decode_coding_ccl, decode_coding_charset): Pay attention to
14817 coding->charbuf_used.
14818 (get_translation): New function.
14819 (produce_chars): New arguments translation_table and last_block.
14820 Translate characters here. Return number of carryover chars.
14821 Change caller.
14822 (produce_composition): New argument pos. Change caller.
14823 Adjust for the change of annotation data format.
14824 (produce_charset, produce_annotation): Likewise.
14825 (decode_coding, encode_coding): Don't call translate_chars.
14826 (consume_chars): New arg translation_table. Change caller.
14827 (translate_chars): Delete.
14828 (syms_of_coding): Make translation-table's number of extra slots 2.
14829
148302008-02-01 Kenichi Handa <handa@m17n.org>
14831
14832 * search.c (simple_search): Fix setting this_pos_byte in backward
14833 search.
14834
14835 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14836 byte sequence.
14837 (detect_coding_ccl): Fix setting of the variable valids.
14838
148392008-02-01 Kenichi Handa <handa@m17n.org>
14840
14841 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
14842
14843 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
14844
14845 * editfns.c (Ftranslate_region_internal): Rename from
14846 Ftranslate_region. Accept a char-table in TABLE.
14847 (syms_of_editfns): Defsubr Stranslate_region_internal.
14848
14849 * xfaces.c (set_lface_from_font_name): If a font is specified for
14850 a frame, generate a fontset from the font.
14851 (build_scalable_font_name): If the scalable font is requested for
14852 a specific size, don't change that size.
14853 (try_font_list): Try a scalable font also in the case that a
14854 pattern string is specified.
14855
148562008-02-01 Kenichi Handa <handa@m17n.org>
14857
14858 * xfaces.c (Fface_font): New optional arg CHARACTER.
14859
148602008-02-01 Kenichi Handa <handa@m17n.org>
14861
14862 * charset.h (CHARSET_OFFSET): New macro.
14863
148642008-02-01 Kenichi Handa <handa@m17n.org>
14865
14866 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
14867
14868 * fontset.c (fontset_face): Handle the case that repertory is a
14869 char-table.
14870 (find_font_encoding): Return nil for unknown encoding.
14871 (Fset_fontset_font): Ignore a font of unknown encoding.
14872
148732008-02-01 Kenichi Handa <handa@m17n.org>
14874
14875 * keymap.c (describe_vector): Handle default value of a char table.
14876
14877 * fontset.c (fontset_face): Handle fallback fonts correctly.
14878 (Ffontset_info): Return infomation about fallback fonts.
14879
148802008-02-01 Kenichi Handa <handa@m17n.org>
14881
14882 * fontset.c (FONTSET_DEFAULT): New macro.
14883 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
14884 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
14885 the case that it is nil.
14886 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
14887 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
14888
14889 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
14890 subset or superset.
14891
148922008-02-01 Kenichi Handa <handa@m17n.org>
14893
14894 * emacs.c (main): Call init_charset after syms_of_XXX.
14895
14896 * charset.c (Vcharset_map_directory): Delete.
14897 (Vcharset_map_path): New variable.
14898 (load_charset_map_from_file): Use Vcharset_map_path instead.
14899 (init_charset): Initialize Vcharset_map_path.
14900 (syms_of_charset): Delete declaration of "charset-map-directory",
14901 add declaration of "charset-map-path".
14902
149032008-02-01 Kenichi Handa <handa@m17n.org>
14904
14905 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
14906 ASCII only string.
14907
14908 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
14909
14910 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
14911 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
14912
149132008-02-01 Kenichi Handa <handa@m17n.org>
14914
14915 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
14916
14917 * coding.c (QCmnemonic, QCdefalut_char)
14918 (QCdecode_translation_table, QCencode_translation_table)
14919 (QCpost_read_conversion, QCpre_write_conversion): New variables.
14920 (get_translation_table): Return a list of translation tables if
14921 necessary.
14922 (decode_coding): Call get_translation_table with ENCODEP 0.
14923 (char_encodable_p): If translation_table is non-nil, always call
14924 translate_char.
14925 (Fdefine_coding_system_internal): Accept list of translation
14926 tables as :encode-translation-table and :decode-translation-table.
14927 (Fcoding_system_put): New function.
14928 (syms_of_coding): Declare new symbols. Defsubr
14929 Scoding_system_put.
14930 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
14931 typically JISX0212.
14932
14933 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
14934 when the charset is superset type.
14935
14936 * character.c (translate_char): Accept list of translation tables.
14937
149382008-02-01 Kenichi Handa <handa@m17n.org>
14939
14940 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
14941 (CODING_ATTR_TRANS_TBL): New macro.
14942
14943 * coding.c (get_translation_table): New function.
14944 (translate_chars): Fix the bug of skipping annotation data.
14945 (decode_coding, encode_coding): Utilize get_translation_table.
14946 (char_encodable_p, Funencodable_char_position): Translate char if
14947 necessary.
14948 (Ffind_coding_systems_region_internal)
14949 (Fcheck_coding_systems_region): Setup translation table for encode
14950 in a coding system attribute vector in advance.
14951 (Fdefine_coding_system_internal): Allow a symbol as translation
14952 table. For shift-jis type coding system, allow 4th charset.
14953
149542008-02-01 Kenichi Handa <handa@m17n.org>
14955
14956 * coding.c (decode_coding_sjis): Check the first byte rigidly.
14957
14958 * xdisp.c (get_next_display_element): Pass -1 as POS to
14959 FACE_FOR_CHAR if displaying a C-string.
14960
149612008-02-01 Kenichi Handa <handa@m17n.org>
14962
14963 * composite.c (get_composition_id): Handle xoff and yoff in a
14964 composition rule.
14965
14966 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
14967 (struct composition): New member lbearing and rbearing.
14968
14969 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
14970 (x_get_glyph_overhangs): Handle a composition glyph.
14971 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
14972
14973 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
14974 composition glyph.
14975
149762008-02-01 Kenichi Handa <handa@m17n.org>
14977
14978 * print.c: Include charset.h.
14979 (Vprint_charset_text_property): New variable.
14980 (Qdefault): Extern it.
14981 (PRINT_STRING_NON_CHARSET_FOUND)
14982 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
14983 (print_check_string_result): New variable.
14984 (print_check_string_charset_prop): New function.
14985 (print_prune_charset_plist): New variable.
14986 (print_prune_string_charset): New function.
14987 (print_object): Call print_prune_string_charset if
14988 Vprint_charset_text_property is not t.
14989 (print_interval): Print nothing if interval->plist is nil.
14990 (syms_of_print): Declare Vprint_charset_text_property as a lisp
14991 variable. Init and staticpro print_prune_charset_plist.
14992
149932008-02-01 Kenichi Handa <handa@m17n.org>
14994
14995 * fontset.c (new_fontset_from_font_name): Use the specified font
14996 for all characters in the new fontset.
14997
14998 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
14999 OBJECT args.
15000
15001 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
15002 OBJECT args for composition too.
15003
15004 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15005 OBJECT args.
15006
150072008-02-01 Kenichi Handa <handa@m17n.org>
15008
15009 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
15010
15011 * fontset.c (reorder_font_vector): Adjust for the change of
15012 FONT_DEF format.
15013 (fontset_face): New arg id. Change caller.
15014 (face_for_char): New args pos and object.
15015 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
15016 (fs_query_fontset): Check NAME by Fassoc too.
15017 (Fset_fontset_font): Allow non-XLFD font name.
15018 (Ffontset_info): Adjust for the change of FONT_DEF format.
15019
15020 * fontset.h (face_for_char): Adjust prototype.
15021
15022 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
15023 (append_space, extend_face_to_end_of_line)
15024 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15025 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
15026
15027 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
15028 POS and OBJECT args.
15029
15030 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
15031 POS and OBJECT args.
15032
150332008-02-01 Jason Rumney <jasonr@gnu.org>
15034
15035 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
15036 of GlobalAlloc'ed memory.
15037
150382008-02-01 Kenichi Handa <handa@m17n.org>
15039
15040 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
15041
15042 * charset.h (charset_table_used): Delete extern.
15043
15044 * charset.c (charset_table_used): Make it static.
15045 (map_charset_chars): Fix args to c_function with.
15046
15047 * chartab.c (map_sub_char_table_for_charset): Fix args to
15048 c_function with.
15049
15050 * coding.h (enum coding_result_code): Delete
15051 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
15052
15053 * coding.c (Qinsufficient_source, Qinconsistent_eol)
15054 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
15055 (Vlast_code_conversion_error): New variables.
15056 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
15057 (ONE_MORE_BYTE): Record error if any instead of signaling an
15058 error. If non-ASCII multibyte char is found, return the negative
15059 value of the code. All callers changed to check it.
15060 (ONE_MORE_BYTE_NO_CHECK): Likewise.
15061 (record_conversion_result): New function. Change all codes setting
15062 coding->result to call this function.
15063 (detect_coding_utf_8, decode_coding_utf_8)
15064 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
15065 Don't use the local variable incomplete.
15066 (emacs_mule_char): Change the second arg to `const'.
15067 (decode_coding): Fix of flushing out unprocessed data.
15068 (make_conversion_work_buffer): Fix making of a work buffer.
15069 (decode_coding_object): Return coding->dst_object.
15070
15071 * fontset.c (set_fontset_font): Fix args.
15072
15073 * lisp.h (CHARACTERBITS): Define as 22.
15074
15075 * process.c (send_process): Be sure to set coding->src_multibyte.
15076
15077 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
15078
150792008-02-01 Kenichi Handa <handa@m17n.org>
15080
15081 * xdisp.c (handle_auto_composed_prop): Give limit to
15082 Fnext_single_char_property_change.
15083
150842008-02-01 Kenichi Handa <handa@m17n.org>
15085
15086 * composite.c (syms_of_composite): Don't make the composition hash
15087 table weak.
15088
15089 * fontset.c (Fset_fontset_font): Fix docstring.
15090
15091 * lisp.h (detect_coding_system): Adjust prototype.
15092
15093 * fileio.c (kill_workbuf_unwind): Delete this function.
15094 (Finsert_file_contents): Adjust the call of detect_coding_system.
15095 Get conversion_buffer by code_conversion_save. Use the macro
15096 CODING_MAY_REQUIRE_DECODING. After decoding, update
15097 coding_system.
15098
15099 * coding.h (make_conversion_work_buffer): Delete extern.
15100 (code_conversion_save): Extern it.
15101
15102 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
15103 (CODING_GET_INFO): Delete argument eol_type. Change callers.
15104 (decode_coding_utf_8): Don't do eol converion.
15105 (detect_coding_utf_16): Check coding->src_chars, not
15106 coding->src_bytes. Add heuristics for those that have no signature.
15107 (decode_coding_emacs_mule, decode_coding_iso_2022)
15108 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15109 Don't do eol converion.
15110 (adjust_coding_eol_type): Return a new coding system.
15111 (detect_coding): Don't detect eol. Fix for utf-16 detection.
15112 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
15113 each change.
15114 (decode_coding): Pay attention to undo_list. Do eol conversion for
15115 all types of coding-systems (if necessary).
15116 (Vcode_conversion_work_buf_list): Delete it.
15117 (Vcode_conversion_reused_workbuf): Rename from
15118 Vcode_conversion_reused_work_buf.
15119 (Vcode_conversion_workbuf_name): New variable.
15120 (reused_workbuf_in_use): New variable.
15121 (make_conversion_work_buffer): Delete the arg DEPTH.
15122 (code_conversion_restore): Change argument to cons.
15123 (code_conversion_save): Delete the argument BUFFER. Change callers.
15124 (detect_coding_system): New argument src_chars. Change callers.
15125 Fix for utf-16 detection.
15126 (init_coding_once): Don't use ISO_carriage_return.
15127 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
15128 reused_workbuf_in_use.
15129
151302008-02-01 Kenichi Handa <handa@m17n.org>
15131
15132 * keymap.c (store_in_keymap): Pay attention to the case that idx
15133 is a cons specifying a character range.
15134
151352008-02-01 Kenichi Handa <handa@m17n.org>
15136
15137 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
15138 HANDLED_RECOMPUTE_PROPS.
15139
15140 * coding.c (Fdefine_coding_system_internal): Fix checking of
15141 ascii compatibility.
15142
151432008-02-01 Kenichi Handa <handa@m17n.org>
15144
15145 * charset.c (find_charsets_in_text): Delete unused locale variable.
15146 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
15147
15148 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
15149 Resync charset_list to Vemacs_mule_charset_list.
15150
15151 * keymap.c (store_in_keymap): Pay attention to the case that idx
15152 is a cons specifying a character range.
15153
151542008-02-01 Kenichi Handa <handa@m17n.org>
15155
15156 * composite.c (update_compositions): Bind inhibit-read-only, etc
15157 to t before calling remove-list-of-text-properties.
15158
15159 * print.c (print_object): Always print ASCII chars as is.
15160
151612008-02-01 Kenichi Handa <handa@m17n.org>
15162
15163 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
15164
15165 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
15166 is a char table.
15167
151682008-02-01 Kenichi Handa <handa@m17n.org>
15169
15170 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
15171
151722008-02-01 Kenichi Handa <handa@m17n.org>
15173
15174 * xfaces.c (set_lface_from_font_name): Fix for the case that
15175 FONTNAME is not fontset name.
15176
151772008-02-01 Kenichi Handa <handa@m17n.org>
15178
15179 * fns.c (base64_encode_1): Fix previous change.
15180
151812008-02-01 Kenichi Handa <handa@m17n.org>
15182
15183 * fontset.c (set_fontset_font): New function.
15184 (Fset_fontset_font): If a font is specified for a charset, use
15185 map_charset_chars to store the font spec in a fontset.
15186
151872008-02-01 Kenichi Handa <handa@m17n.org>
15188
15189 * fontset.c (fontset_face): Create a fallback fontset on demand.
15190 (make_fontset): Don't create a fallback fontset here.
15191 (free_face_fontset): Free a fallback fontset (if any) too.
15192 (n_auto_fontsets): Delete this variable.
15193 (auto_fontset_alist): New variable.
15194 (new_fontset_from_font_name): Check auto_fontset_alist.
15195 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
15196 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
15197 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
15198 Defsubr Sfontset_list_all.
15199
152002008-02-01 Kenichi Handa <handa@m17n.org>
15201
15202 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
15203
152042008-02-01 Kenichi Handa <handa@m17n.org>
15205
15206 * fontset.c (Fnew_fontset): Check NAME more rigidly.
15207
152082008-02-01 Kenichi Handa <handa@m17n.org>
15209
15210 * editfns.c (Fgoto_char): Fix docstring.
15211
152122008-02-01 Kenichi Handa <handa@m17n.org>
15213
15214 * insdel.c (insert_from_gap): Adjust intervals correctly.
15215
152162008-02-01 Jason Rumney <jasonr@gnu.org>
15217
15218 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
15219 (pfnGetFontUnicodeRanges): New dynamically loaded function.
15220 (w32_initialize): Try to load it.
15221 (x_get_font_repertory): Use it if available.
15222 (w32_encode_char): Add shortcut for unicode output.
15223
15224 * w32fns.c (w32_load_system_font): Default charset to -1.
15225 (x_to_w32_charset): Match all fonts for unicode.
15226 (w32_to_x_charset): New parameter matching. Don't return partial
15227 or wildcard charsets.
15228 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
15229 (w32_codepage_for_font): Return CP_UNICODE for unicode.
15230 (w32_to_x_font): Match charset to real charset.
15231 (enum_font_cb2): Always list unicode versions.
15232
15233 * makefile.w32-in (temacs): Increase EMHEAP.
15234
152352008-02-01 Jason Rumney <jasonr@gnu.org>
15236
15237 * w32term.c (w32_encode_char): New charset parameter.
15238 font_info.encoding becomes encoding_type.
15239 (x_get_font_repertory): New function. Warning: stub only!
15240 (x_new_font): Return quickly if font already set.
15241 (x_new_fontset): fontsetname parameter is Lisp_Object.
15242 Use new fs_query_fontset. Try new_fontset_from_font_name.
15243 Use fontset_name for return value.
15244
15245 * w32term.h: Declare x_get_font_repertory.
15246
15247 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15248 place of find_charset_in_text. Use encode_coding_object in place
15249 of encode_coding.
15250 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15251 decode_coding.
15252
15253 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15254 of x_new_fontset.
15255 (w32_load_system_font): Initialize charset as unicode.
15256 font_info.encoding becomes encoding_type.
15257 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15258 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15259 (syms_of_w32fns): Set get_font_repertory_func.
15260
15261 * w32console.c: Include character.h. Use terminal_encode_buffer
15262 from term.c.
15263 (write_glyphs): Use new version of encode_terminal_code. Use
15264 encode_coding_object in place of encode_coding.
15265
15266 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15267 encoding becomes encoding_type.
15268
15269 * term.c (terminal_encode_buffer): Make externally visible.
15270
15271 * makefile.w32-in: Add character.h dependancies.
15272 (character.o, chartab.o): New targets.
15273
152742008-02-01 Kenichi Handa <handa@m17n.org>
15275
15276 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15277 CODING_ID_EOL_TYPE.
15278
152792008-02-01 Andreas Schwab <schwab@suse.de>
15280
15281 * coding.c (produce_chars): Revert last change.
15282
152832008-02-01 Kenichi Handa <handa@m17n.org>
15284
15285 * charset.h (charset_unicode): Extern it.
15286
15287 * charset.c (string_xstring_p): Check by (C >= 0x100).
15288 (find_charsets_in_text): Change format of the arc CHARSETS. New
15289 arg MULTIBYTE.
15290 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15291 change of find_charsets_in_text.
15292 (Fsplit_char): Fix doc. Never return unknown.
15293
15294 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15295
15296 * coding.c (Fdefine_coding_system_alias): Update
15297 Vcoding_system_list.
15298
15299 * fontset.c (load_font_get_repertory): Pay attention to the case
15300 that ENCODING of a font is specified by a char-table.
15301
15302 * xterm.c (x_get_font_repertory): Handle the case that the
15303 encoding of font is other than Unicode.
15304
153052008-02-01 Kenichi Handa <handa@m17n.org>
15306
15307 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15308 if a character is encodable by the terminal coding system. If
15309 not, produces proper number of `?'s. Update
15310 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15311 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15312
153132008-02-01 Kenichi Handa <handa@m17n.org>
15314
15315 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15316 variables.
15317 (encode_terminal_code): Change argument. Encode multiple
15318 characters at once. Store the result of encoding in
15319 terminal_encode_buffer.
15320 (write_glyphs, insert_glyphs): Adjust for the change of
15321 encode_terminal_code.
15322 (term_init): Initialize terminal_encode_buffer and
15323 terminal_encode_buf_size.
15324
15325 * coding.c (consume_chars): If coding->src_object is nil, don't
15326 check annotation.
15327
153282008-02-01 Kenichi Handa <handa@m17n.org>
15329
15330 * character.c (char_string): Use ASCII_CHAR_P instead of
15331 SINGLE_BYTE_CHAR_P.
15332
153332008-02-01 Kenichi Handa <handa@m17n.org>
15334
15335 * xdisp.c (handle_auto_composed_prop): Check if the last
15336 characters of auto-composed region is newly composed with the
15337 following characters.
15338 (handle_composition_prop): Fix checking of point being inside
15339 composition.
15340
153412008-02-01 Kenichi Handa <handa@m17n.org>
15342
15343 * fns.c (concat): Don't change multibyteness of the result by
15344 concatenating an 8-bit character.
15345
15346 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15347 multibyteness of the result when newelt is an 8-bit character.
15348
153492008-02-01 Dave Love <fx@gnu.org>
15350
15351 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15352 EMACS_INT.
15353
15354 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15355
15356 * xfaces.c (face_numeric_value): Declare dim size_t.
15357 (Finternal_lisp_face_equal_p): Remove unused f.
15358
15359 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15360 (MATRIX_ROW): Remove unused vars.
15361 (draw_glyphs, x_insert_glyphs, fast_find_position)
15362 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15363 byte/char counts.
15364
15365 * regex.c (regex_compile): Remove unused var.
15366
15367 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15368
15369 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15370 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15371
15372 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15373
15374 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15375
15376 * fileio.c (Fwrite_region): Remove unused var.
15377
15378 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15379 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15380
15381 * composite.c (Fremove_list_of_text_properties): Declare.
15382
15383 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15384 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15385 (coding_inherit_eol_type): Remove unused attrs.
15386 (detect_coding): Cast arg of detect_eol.
15387
15388 * charset.c (syms_of_charset): Remove unused var p.
15389 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15390 byte/char counts.
15391
15392 * casetab.c (set_case_table): Remove unused var.
15393
15394 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15395 unused vars.
15396
153972008-02-01 Dave Love <fx@gnu.org>
15398
15399 * xterm.c (x_bitmap_mask): Declare.
15400
154012008-02-01 Dave Love <fx@gnu.org>
15402
15403 * xterm.c (x_term_init): Fix type error.
15404
15405 * lisp.h: Add Funibyte_char_to_multibyte.
15406
15407 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15408 (Fset_coding_system_priority): Doc fix.
15409
15410 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15411
15412 * indent.c (check_composition): Make start and end EMACS_INT.
15413
15414 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15415
15416 * xdisp.c (handle_composition_prop, check_point_in_composition):
15417 Make buffer positions EMACS_INT.
15418
15419 * composite.c (find_composition, run_composition_function)
15420 (update_compositions, Ffind_composition_internal): Make buffer
15421 positions EMACS_INT.
15422
15423 * composite.h (find_composition, update_compositions): Make
15424 position args EMACS_INT.
15425
15426 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15427
15428 * intervals.c (get_property_and_range):
15429 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15430
15431 * unexalpha.c: Don't include varargs.h.
15432
154332008-02-01 Dave Love <fx@gnu.org>
15434
15435 * coding.h (ENCODE_UTF_8): New.
15436
15437 * Makefile.in (gtkutil.o): Depend on coding.h.
15438
15439 * coding.c (Fset_coding_system_priority): Doc fix.
15440
154412008-02-01 Kenichi Handa <handa@m17n.org>
15442
15443 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15444 the case of auto saving.
15445
154462008-02-01 Andreas Schwab <schwab@suse.de>
15447
15448 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15449 `range' from GC.
15450
154512008-02-01 Kenichi Handa <handa@m17n.org>
15452
15453 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15454
154552008-02-01 Kenichi Handa <handa@m17n.org>
15456
15457 * fileio.c (choose_write_coding_system): Return a decided coding system.
15458 (Fwrite_region): Set Vlast_coding_system_used to the return value
15459 of choose_write_coding_system.
15460
154612008-02-01 Kenichi Handa <handa@m17n.org>
15462
15463 * charset.c (Fset_charset_priority): Pay attention to duplicated
15464 arguments.
15465
15466 * coding.c (QCcategory): New variable.
15467 (syms_of_coding): Defsym it. Set all elements of
15468 Vcoding_category_table and their symbol values.
15469 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15470 coding-category-XXX, and coding-category-list.
15471 (Fdefine_coding_system_internal): Add category in the plist.
15472
154732008-02-01 Kenichi Handa <handa@m17n.org>
15474
15475 * callproc.c (Fcall_process): Handle carryover correctly.
15476
15477 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15478 (raw_text_coding_system): Check NILP (coding_system).
15479 (coding_inherit_eol_type): Check NILP (coding_system) and
15480 NILP (parent).
15481 (consume_chars): Fix for the case of raw-text.
15482
15483 * process.c (read_process_output): Handle carryover correctly.
15484
154852008-02-01 Dave Love <fx@gnu.org>
15486
15487 * regex.c (re_search_2): Fix last change.
15488
154892008-02-01 Kenichi Handa <handa@m17n.org>
15490
15491 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15492 target_multibyte. Even in a unibyte case, return a converted
15493 multibyte char.
15494 (GET_CHAR_AFTER): New macro.
15495 (PATFETCH): Translate via multibyte char.
15496 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15497 (SETUP_MULTIBYTE_RANGE): New macro.
15498 (regex_compile): Setup compiled code so that its multibyteness
15499 matches that of a target. Fix the handling of "[X-YZ]" using
15500 SETUP_MULTIBYTE_RANGE.
15501 (analyse_first) <charset>: For filling fastmap for all multibyte
15502 characters, don't check by BASE_LEADING_CODE_P.
15503 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15504 the same as RE_MULTIBYTE_P (bufp) now.
15505 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15506 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15507 (TRANSLATE_VIA_MULTIBYTE): New macro.
15508 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15509 It is the same as RE_MULTIBYTE_P (bufp) now.
15510 <exactn>: Translate via multibyte.
15511 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15512 translate it.
15513 <charset, charset_not>: Fetch a character by
15514 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15515 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15516 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15517 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15518 by GET_CHAR_AFTER.
15519 (bcmp_translate): Likewise.
15520
15521 * search.c (compile_pattern): Check the member target_multibyte,
15522 not the member multibyte of buf.
15523
15524 * lread.c (read1): While reading a string, set force_singlebyte
15525 and force_multibyte correctly.
15526
15527 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15528 up of unibyte_to_multibyte_table.
15529
155302008-02-01 Kenichi Handa <handa@m17n.org>
15531
15532 * coding.c (setup_coding_system): If coding has
15533 post-read-conversion or pre-write-conversion, set
15534 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15535 respectively.
15536 (decode_coding_gap): Run post-read-conversion if any.
15537
15538 * fileio.c (Finsert_file_contents): Even if we read into a
15539 unibyte buffer, check if we must decode the result or not.
15540
155412008-02-01 Kenichi Handa <handa@m17n.org>
15542
15543 * coding.c (make_conversion_work_buffer): Change the work buffer
15544 name to the same one as that of Emacs 21.
15545
155462008-02-01 Kenichi Handa <handa@m17n.org>
15547
15548 * coding.h (make_conversion_work_buffer): Adjust prototype.
15549 (code_conversion_restore): Don't extern it.
15550
15551 * coding.c (detected_mask): Delete unused variable.
15552 (decode_coding_iso_2022): Pay attention to the byte sequence of
15553 CTEXT extended segment, and retain those bytes as is.
15554 (decode_coding_ccl): Delete unused variable `valids'.
15555 (setup_coding_system): Delete unused variable `category'.
15556 (consume_chars): Delete unused variable `category'. Make it work
15557 for non-multibyte case.
15558 (make_conversion_work_buffer): Change argument.
15559 (saved_coding): Delete unused variable.
15560 (code_conversion_restore): Don't check saved_coding->destination.
15561 (code_conversion_save): New function.
15562 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15563 instead of record_unwind_protect.
15564 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15565 (detect_coding_system): Delete unused variable `mask'.
15566 (Fdefine_coding_system_internal): Delete unused variable id.
15567
15568 * fileio.c (kill_workbuf_unwind): New function.
15569 (Finsert_file_contents): On replacing, call
15570 make_conversion_work_buffer with correct args, and call
15571 record_unwind_protect with the first arg kill_workbuf_unwind.
15572
15573 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15574
155752008-02-01 Kenichi Handa <handa@m17n.org>
15576
15577 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15578 (fontset_add): Fix for the case that TO is less than TO1.
15579 (Ffontset_info): Don't use fallback fontset on checking the
15580 default fontset.
15581 (dump_fontset): New function for debugging.
15582
15583 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15584 coding_type is Qcharset.
15585
155862008-02-01 Kenichi Handa <handa@m17n.org>
15587
15588 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15589 (map_char_table): Don't inherit the value from the parent on
15590 initializing VAL. Adjust for the above change.
15591
155922008-02-01 Kenichi Handa <handa@m17n.org>
15593
15594 * coding.c (Qsignature, Qendian): Delete these variables.
15595 (syms_of_coding): Don't initialize them.
15596 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15597 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15598 detect_info->found.
15599 (decode_coding_utf_16): Don't detect BOM here.
15600 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15601 is NOT utf_16_without_bom.
15602 (setup_coding_system): For a coding system of type utf-16, check
15603 if the attribute :endian is Qbig or not (not nil or not), and set
15604 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15605 (detect_coding): If coding type is utf-16 and BOM detection is
15606 required, detect it.
15607 (Fdefine_coding_system_internal): For a coding system of type
15608 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15609
156102008-02-01 Kenichi Handa <handa@m17n.org>
15611
15612 * coding.c (coding_set_source): Fix for the case that the current
15613 buffer is different from coding->src_object.
15614 (decode_coding_object): Don't use the conversion work buffer if
15615 DST_OBJECT is a buffer.
15616
156172008-02-01 Dave Love <fx@gnu.org>
15618
15619 * lread.c (read_emacs_mule_char) [len==2]: Index
15620 emacs_mule_charset correctly.
15621
156222008-02-01 Dave Love <fx@gnu.org>
15623
15624 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15625 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15626 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15627 treated specially.)
15628 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15629 (detected_mask): Remove Big5 bits.
15630
156312008-02-01 Kenichi Handa <handa@m17n.org>
15632
15633 The following changes are to make the font rescaling facility
15634 compatible with Emacs 21.
15635
15636 * xfaces.c (Vface_font_rescale_alist): Rename from
15637 Vface_resizing_fonts.
15638 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15639 (font_rescale_ratio): Rename from font_resizing_ratio.
15640 (split_font_name): Set font->rescale_ratio.
15641 (better_font_p): Pay attention to font->rescale_ratio.
15642 (build_scalable_font_name): Likewise. Change RESX, and RESY
15643 fields.
15644 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15645
156462008-02-01 Kenichi Handa <handa@m17n.org>
15647
15648 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15649 (Qutf_16_le): Remove these variables.
15650 (syms_of_coding): Don't DEFSYM them.
15651 (decode_coding_utf_16): Fix handling of BOM.
15652 (encode_coding_utf_16): Fix handling of BOM.
15653
156542008-02-01 Kenichi Handa <handa@m17n.org>
15655
15656 * fileio.c (Finsert_file_contents): On replacing, before decoding
15657 the file into the work buffer, set point of the work buffer to the end.
15658
156592008-02-01 Dave Love <fx@gnu.org>
15660
15661 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15662
156632008-02-01 Dave Love <fx@gnu.org>
15664
15665 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15666 and fix C types.
15667
156682008-02-01 Kenichi Handa <handa@m17n.org>
15669
15670 * xdisp.c (SKIP_GLYPHS): New macro.
15671 (set_cursor_from_row): Pay attention to string display properties.
15672
15673 * category.c (copy_category_entry): Fix for the case that RANGE
15674 is an integer.
15675
15676 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15677
15678 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15679
156802008-02-01 Kenichi Handa <handa@m17n.org>
15681
15682 * charset.c (Fcharset_id_internal): New function.
15683 (syms_of_charset): Defsubr it.
15684
15685 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15686 with the last arg charset_list acquired from coding.
15687 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15688 the attribute coding_attr_ccl_valids.
15689
15690 * coding.h (enum define_coding_ccl_arg_index): Set the first
15691 member coding_arg_ccl_decoder to coding_arg_max.
15692
15693 * ccl.h (ccl_driver): Adjust prototype.
15694
15695 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15696 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15697 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15698 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15699 last arg Qnil.
15700
157012008-02-01 Kenichi Handa <handa@m17n.org>
15702
15703 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15704 call encode_char.
15705
15706 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15707
157082008-02-01 Dave Love <fx@gnu.org>
15709
15710 * composite.c (syms_of_composite): Make composition_hash_table weak.
15711
157122008-02-01 Kenichi Handa <handa@m17n.org>
15713
15714 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15715 (font_name_registry): Don't extern them.
15716 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15717
15718 * fontset.h (Qfontset): Don't extern it.
15719 (new_fontset_from_font_name): Extern it.
15720
15721 * fontset.c: Give 8 extra slots to fontset objects.
15722 (Qfontset_info): New variable.
15723 (syms_of_fontset): Defsym it.
15724 (FONTSET_FALLBACK): New macro.
15725 (fontset_face): Try also the default fontset.
15726 (make_fontset): Realize a fallback fontset from the default fontset.
15727 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15728 using split_font_name_into_vector and build_font_name_from_vector.
15729 (Fset_fontset_font): Access the elements of font_spec by enum
15730 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15731 name by using split_font_name_into_vector.
15732 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15733 generate a proper font name from the fontset name. Update
15734 Vfontset_alias_alist.
15735 (n_auto_fontsets): New variable.
15736 (new_fontset_from_font_name): New function.
15737 (Ffont_info): Store the information about fonts generated from the
15738 default fontset in the first extra slot of the returned char-table.
15739
15740 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15741 (font_name_registry): Delete function.
15742 (split_font_name_into_vector): New function.
15743 (build_font_name_from_vector): New function.
15744 (font_list): The argument REGISTRY is now a list of registry names.
15745 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15746 specifies an explicit font name, return the name as is. Make a
15747 list of registy names.
15748
15749 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15750 of x_new_fontset.
15751 (Fx_create_frame): Don't call x_new_fontset here. Just use
15752 x_list_fonts to check the existence of fonts.
15753
15754 * xterm.h (x_new_fontset): Adjust prototype.
15755
15756 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15757 string. Use new_fontset_from_font_name to create a fontset from a
15758 font name.
15759
157602008-02-01 Kenichi Handa <handa@m17n.org>
15761
15762 * syntax.c (Vfind_word_boundary_function_table): New name for
15763 Vnext_word_boundary_function_table.
15764 (find-word-boundary-function-table): New name for
15765 next-word-boundary-function-table.
15766
157672008-02-01 Dave Love <fx@gnu.org>
15768
15769 * Makefile.in: Fix some dependencies.
15770
15771 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15772 set it to nil before returning.
15773
15774 * composite.c (update_compositions): Fix type error.
15775
15776 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15777
157782008-02-01 Kenichi Handa <handa@m17n.org>
15779
15780 * xterm.c (x_new_font): Optimize for the case that the font is
15781 already set for the frame.
15782
157832008-02-01 Kenichi Handa <handa@m17n.org>
15784
15785 * chartab.c (char_table_ascii): Check if the char table contents
15786 is sub-char-table or not.
15787 (char_table_set, char_table_set_range): Fix argument to
15788 char_table_ascii.
15789
15790 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15791 (detect_coding_utf_8, detect_coding_utf_16)
15792 (detect_coding_emacs_mule, detect_coding_iso_2022)
15793 (detect_coding_sjis, detect_coding_big5)
15794 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15795 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15796 sequence is valid in this coding system. Change callers.
15797 (MAX_ANNOTATION_LENGTH): New macro.
15798 (ADD_ANNOTATION_DATA): New macro.
15799 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15800 ADD_ANNOTATION_DATA. Change the format of annotation data.
15801 (ADD_CHARSET_DATA): New macro.
15802 (emacs_mule_char): New argument ID. Change callers.
15803 (decode_coding_emacs_mule, decode_coding_iso_2022)
15804 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15805 Produce charset annotation data in coding->charbuf.
15806 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15807 to charset annotation data in coding->charbuf.
15808 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15809 coding->common_flags if the coding system is iso-2022 based and
15810 uses designation.
15811 (produce_composition): Adjust for the new annotation data format.
15812 (produce_charset): New function.
15813 (produce_annotation): Handle charset annotation.
15814 (handle_composition_annotation, handle_charset_annotation): New
15815 functions.
15816 (consume_chars): Handle charset annotation. Utilize the above two
15817 functions.
15818 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15819 buffer, get the deleted text as a string and set
15820 coding->src_object to that string.
15821 (detect_coding, detect_coding_system): Use the new struct
15822 coding_detection_info.
15823
15824 * coding.h (struct coding_detection_info): New structure.
15825 (struct coding_system): Adjust prototype of the member `detector'.
15826 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15827
158282008-02-01 Kenichi Handa <handa@m17n.org>
15829
15830 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15831
158322008-02-01 Dave Love <fx@gnu.org>
15833
15834 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15835 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15836 to new local and nullify apropos_accumulate before returning.
15837 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
15838
158392008-02-01 Kenichi Handa <handa@m17n.org>
15840
15841 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
15842 correctly.
e3eea1fc 15843
aac0c6e3
MR
158442008-02-01 Dave Love <fx@gnu.org>
15845
15846 * fns.c (Flanginfo): Call synchronize_system_time_locale.
15847
158482008-02-01 Kenichi Handa <handa@m17n.org>
15849
15850 The following changes are to make character composition happen
15851 automatically on displaying.
15852
15853 * Makefile.in (lisp, shortlisp): Add composite.elc.
15854
15855 * composite.h (Qauto_composed, Vauto_composition_function)
15856 (Qauto_composition_function): Extern them.
15857
15858 * composite.c (Vcomposition_function_table)
15859 (Qcomposition_function_table): Delete variables.
15860 (Qauto_composed, Vauto_composition_function)
15861 (Qauto_composition_function): New variables.
15862 (run_composition_function): Don't call
15863 compose-chars-after-function.
15864 (update_compositions): Clear `auto-composed' text property.
15865 (compose_chars_in_text): Delete this function.
15866 (syms_of_composite): Staticpro Qauto_composed and
15867 Qauto_composition_function. Declare Vauto_composition_function as
15868 a Lisp variable.
15869
15870 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
15871
15872 * xdisp.c (it_props): Add an entry for Qauto_composed.
15873 (handle_auto_composed_prop): New function.
15874
15875 * xselect.c (selection_data_to_lisp_data): Don't call
15876 compose_chars_in_text.
15877
158782008-02-01 Dave Love <fx@gnu.org>
15879
15880 * keyboard.c (read_char): Modify checking around use of
15881 Vkeyboard_translate_table.
15882
15883 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15884 and fix C types.
15885
158862008-02-01 Kenichi Handa <handa@m17n.org>
15887
15888 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
15889 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15890 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
15891 the case that the last byte is '\r' correctly.
15892 (decode_coding): Flush out the unprocessed data correctly.
15893 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
15894
158952008-02-01 Dave Love <fx@gnu.org>
15896
15897 * xterm.c (XTread_socket): Fix changes for defined keysyms.
15898 Add XK_ISO... case.
15899 (xaw_scroll_callback): Revert last change.
15900
159012008-02-01 Kenichi Handa <handa@m17n.org>
15902
15903 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
15904
159052008-02-01 Kenichi Handa <handa@m17n.org>
15906
15907 * xfaces.c (Vface_resizing_fonts): New variable.
15908 (struct font_name): New member `resizing_ratio'.
15909 (font_resizing_ratio): New function.
15910 (split_font_name): Set font->resizing_ratio.
15911 (better_font_p): Pay attention to font->resizing_ratio.
15912 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
15913 RESX, and RESY fields.
15914 (try_alternative_families): Try scalable fonts if
15915 Vscalable_fonts_allowed is not Qt.
15916 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
15917
159182008-02-01 Dave Love <fx@gnu.org>
15919
15920 * xterm.c (xaw_scroll_callback): Cast correctly.
15921
159222008-02-01 Dave Love <fx@gnu.org>
15923
15924 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
15925 (lispy_kana_keys): Comment out.
15926 (make_lispy_event) [XK_kana_A]: Comment out.
15927
15928 * xterm.c (xaw_scroll_callback): Cast call_data.
15929 (XTread_socket): Deal with ASCII keysyms.
15930 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
15931
159322008-02-01 Dave Love <fx@gnu.org>
15933
15934 * xterm.c (Vx_keysym_table): New.
15935 (syms_of_xterm): Initialize it.
15936 (XTread_socket): Use it.
15937 From head: Eliminate incorrect optimization that tried to avoid
15938 decoding the output of X*LookupString.
15939 (x_get_font_repertory): Delete charset declaration.
15940
159412008-02-01 Kenichi Handa <handa@m17n.org>
15942
15943 * coding.c (detect_coding_charset): If only ASCII bytes are found,
15944 return 0.
15945 (Fdefine_coding_system_internal): Setup
15946 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
15947
159482008-02-01 Dave Love <fx@gnu.org>
15949
15950 * coding.c (Fcheck_coding_system): Doc fix.
15951
15952 * editfns.c (Finsert_byte): Return a proper value.
15953
159542008-02-01 Kenichi Handa <handa@m17n.org>
15955
15956 * coding.c (decode_coding): Fix args to translate_chars. Pay
15957 attention to Vstandard_translation_table_for_decode.
15958 (encode_coding): Fix args to translate_chars. Pay attention to
15959 Vstandard_translation_table_for_encode.
15960
15961 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
15962 SINGLE_BYTE_CHAR_P.
15963
15964 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
15965 not by SINGLE_BYTE_CHAR_P.
15966
15967 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
15968 SINGLE_BYTE_CHAR_P.
15969
15970 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
15971 SINGLE_BYTE_CHAR_P.
15972
15973 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
15974 by SINGLE_BYTE_CHAR_P.
15975
15976 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
15977 SINGLE_BYTE_CHAR_P.
15978
159792008-02-01 Dave Love <fx@gnu.org>
15980
15981 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
15982
159832008-02-01 Dave Love <fx@gnu.org>
15984
15985 * fns.c (Flanginfo): Fix typo.
15986
15987 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
15988
159892008-02-01 Kenichi Handa <handa@m17n.org>
15990
15991 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
15992 (detect_coding_emacs_mule, detect_coding_iso_2022)
15993 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
15994 incomplete byte sequence. Don't update *mask when correctly detected.
15995 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
15996 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
15997 (detect_coding, detect_coding_system): Adjust for the changes above.
15998
159992008-02-01 Kenichi Handa <handa@m17n.org>
16000
16001 * character.c (char_string): Rename from
16002 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
16003 (string_char): Rename from string_char.
16004
16005 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
16006 if C is greater than MAX_3_BYTE_CHAR.
16007 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
16008 string_char instead of string_char_with_unification.
16009
160102008-02-01 Dave Love <fx@gnu.org>
16011
16012 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
16013
160142008-02-01 Kenichi Handa <handa@m17n.org>
16015
16016 * keymap.c (push_key_description): Pay attention to force_multibyte.
16017
16018 * regex.c (re_search_2): Fix for the case of unibyte buffer.
16019
160202008-02-01 Dave Love <fx@gnu.org>
16021
16022 * charset.c (define_charset_internal): Rename `supprementary'.
16023
16024 * Makefile.in (lisp, shortlisp): Remove latin-N.
16025
160262008-02-01 Dave Love <fx@gnu.org>
16027
16028 * xfns.c (x_window, x_window): Use use_xim.
16029
16030 * xterm.c (use_xim): Initialize.
16031 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
16032 (x_term_init): Maybe set use_xim.
16033
16034 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
16035
160362008-02-01 Kenichi Handa <handa@m17n.org>
16037
16038 * search.c (search_buffer): Fix case-fold-search of multibyte
16039 characters.
16040 (boyer_moore): Rename the last argument to char_high_bits.
16041
160422008-02-01 Kenichi Handa <handa@m17n.org>
16043
16044 * xdisp.c (display_string): Fix for the case of zero width glyph.
16045
16046 * xfns.c (x_set_font): Change the error message of the case that
16047 x_new_fontset returns Qt.
16048
16049 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
16050 (Finternal_set_lisp_face_attribute): Use signal_error for the
16051 error of invalid fontset.
16052
16053 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
16054 fontset, return Qt.
16055
160562008-02-01 Dave Love <fx@gnu.org>
16057
16058 * unexelf.c (unexec): Make .got handling not SGI-specific.
16059
16060 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
16061
16062 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
16063
16064 * keyboard.c (read_key_sequence): Fix type error.
16065
16066 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
16067 type error.
16068
16069 * fontset.c (fontset_add): Return Lisp_Object.
16070
160712008-02-01 Dave Love <fx@gnu.org>
16072
16073 * charset.h (charset_ordered_list_tick): Declare extern.
16074
160752008-02-01 Kenichi Handa <handa@m17n.org>
16076
16077 The following changes (and some of 2008-02-01 changes of mine) are
16078 for handling syntax, category, and case conversion for unibyte
16079 characters by converting them to multibyte on the fly. With these
16080 changes, we don't have to setup syntax and case tables for unibyte
16081 characters in each language environment.
16082
16083 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
16084 multibyte if necessary.
16085
16086 * bytecode.c (Fbyte_code): Likewise.
16087
16088 * character.h (LEADING_CODE_LATIN_1_MIN)
16089 (LEADING_CODE_LATIN_1_MAX): New macros.
16090 (unibyte_to_multibyte_table): Extern it.
16091 (unibyte_char_to_multibyte): New macro.
16092 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
16093 (CHAR_LEADING_CODE): New macro.
16094 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
16095
16096 * character.c (unibyte_to_multibyte_table): New variable.
16097 (unibyte_char_to_multibyte): Move to character.h and define as macro.
16098 (multibyte_char_to_unibyte): If C is an eight-bit character,
16099 convert it to the corresponding byte value.
16100
16101 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
16102 not 1, signals an error. Update the elements of
16103 unibyte_to_multibyte_table.
16104 (init_charset_once): Initialize unibyte_to_multibyte_table.
16105 (syms_of_charset): Define the charset `iso-8859-1'.
16106
16107 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
16108 as is without converting it to unibyte. In a unibyte buffer,
16109 convert C to multibyte before checking the syntax.
16110
16111 * lisp.h (unibyte_char_to_multibyte): Delete extern.
16112
16113 * minibuf.c (Fminibuffer_complete_word): Use the macro
16114 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
16115
16116 * regex.h (struct re_pattern_buffer): New member target_multibyte.
16117
16118 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
16119 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
16120 that is zero, convert an eight-bit char to multibyte.
16121 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
16122 non-emacs case.
16123 (PATFETCH): Convert an eight-bit char to multibyte.
16124 (HANDLE_UNIBYTE_RANGE): New macro.
16125 (regex_compile): Setup the compiled pattern for multibyte chars
16126 even if the given regex string is unibyte. Use PATFETCH_RAW
16127 instead of PATFETCH in many places. To handle `charset'
16128 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
16129 only for ASCII chars.
16130 (analyse_first) <exactn>: Simplify because the compiled pattern
16131 is multibyte.
16132 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
16133 <charset>: Use CHAR_LEADING_CODE to get leading codes.
16134 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
16135 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
16136 multibyte always 1.
16137 (re_search_2): In emacs, set the locale variable multibyte to 1,
16138 otherwise to 0. New local variable target_multibyte. Check it
16139 to decide the multibyteness of STR1 and STR2. If
16140 target_multibyte is zero, convert unibyte chars to multibyte
16141 before translating and checking fastmap.
16142 (TARGET_CHAR_AND_LENGTH): New macro.
16143 (re_match_2_internal): In emacs, set the locale variable multibyte
16144 to 1, otherwise to 0. New local variable target_multibyte. Check
16145 it to decide the multibyteness of STR1 and STR2. Use
16146 TARGET_CHAR_AND_LENGTH to fetch a character from D.
16147 <charset, charset_not>: If multibyte is nonzero, check fastmap
16148 only for ASCII chars. Call bcmp_translate with
16149 target_multibyte, not with multibyte.
16150 <begline>: Declare the local variable C as `unsigned'.
16151 (bcmp_translate): Change the last arg name to target_multibyte.
16152
16153 * search.c (compile_pattern_1): Don't adjust the multibyteness of
16154 the regexp pattern and the matching target. Set cp->buf.multibyte
16155 to the multibyteness of the regexp pattern. Set
16156 cp->but.target_multibyte to the multibyteness of the matching target.
16157 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
16158 FETCH_STRING_CHAR_ADVANCE.
16159 (Freplace_match): Convert unibyte chars to multibyte.
16160
16161 * syntax.c (char_quoted, back_comment, scan_words)
16162 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
16163 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
16164 unibyte chars to multibyte.
16165 (skip_chars): Delete the arg syntaxp, and move the code for
16166 handling syntaxes to skip_syntaxes. Change callers.
16167 Fix the case that the multibyteness of STRING and the current
16168 buffer doesn't match.
16169 (skip_syntaxes): New function.
16170 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
16171 SINGLE_BYTE_CHAR_P.
16172
161732008-02-01 Kenichi Handa <handa@m17n.org>
16174
16175 * xfaces.c (QCfontset): New variable.
16176 (LFACE_FONTSET): New macro.
16177 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
16178 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
16179 (Finternal_set_lisp_face_attribute)
16180 (Finternal_get_lisp_face_attribute): Handle QCfontset.
16181 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
16182 check also LFACE_FONTSET_INDEX.
16183 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
16184 attrs[LFACE_FONT_INDEX].
16185 (syms_of_xfaces): Intern and staticpro QCfontset.
16186
16187 * dispextern.h (enum lface_attribute_index): New member
16188 LFACE_FONTSET_INDEX.
16189
16190 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
16191
161922008-02-01 Kenichi Handa <handa@m17n.org>
16193
16194 * coding.c (coding_set_destination): Fix coding->destination for
16195 the case converting a region.
16196 (encode_coding_utf_8): Encode eight-bit chars as single byte.
16197 (encode_coding_object): Fix coding->dst_pos and
16198 coding->dst_pos_byte for the case converting a region.
16199
16200 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
16201
16202 * character.h (BYTE8_STRING): New macro.
16203
16204 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
16205
162062008-02-01 Kenichi Handa <handa@m17n.org>
16207
16208 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
16209 characters by octal form.
16210
16211 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16212
16213 * buffer.h (_fetch_multibyte_char_len): Delete extern.
16214 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
16215 _fetch_multibyte_char_len.
16216 (FETCH_CHAR_AS_MULTIBYTE): New macro.
16217
16218 * casetab.c (set_canon, set_identity, shuffle): Simplify.
16219
16220 * casefiddle.c (casify_object): Simplify. Handle the case that
16221 the case conversion change the byte length.
16222 (casify_region): Likewise.
16223
16224 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
16225
16226 * character.c (_fetch_multibyte_char_len): Delete this variable.
16227 (syms_of_character): Setup Vprintable_chars.
16228
16229 * editfns.c (Fchar_equal): Fix for the unibyte case.
16230 (Finsert_byte): New function.
16231 (syms_of_editfns): Defsubr it.
16232
16233 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16234 of direct code 0x3ffff.
16235
16236 * search.c (Freplace_match): Fix for the unibyte case.
16237
162382008-02-01 Kenichi Handa <handa@m17n.org>
16239
16240 * lread.c (safe_to_load_p): Fix the logic.
16241
16242 * syntax.c (scan_words): Don't treat characters belonging to
16243 different scripts as constituting a word.
16244
16245 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16246
16247 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16248
16249 * emacs.c (main): In the case of --unibyte, instead of aborting on
16250 finding non-empty buffer, make it unibyte.
16251
162522008-02-01 Kenichi Handa <handa@m17n.org>
16253
16254 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16255 to create a fontset.
16256
162572008-02-01 Dave Love <fx@gnu.org>
16258
16259 * character.c (Funibyte_char_to_multibyte): Doc fix.
16260
16261 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16262
162632008-02-01 Kenichi Handa <handa@m17n.org>
16264
16265 * fontset.c (fontset_add): Make the type `int'.
16266 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16267
16268 * character.c (unibyte_char_to_multibyte)
16269 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16270 charset_unibyte, not charset_primary.
16271
16272 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16273
16274 * charset.c (charset_unibyte): Rename from charset_primary.
16275 (Funibyte_charset): Rename from Fprimary_charset.
16276 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16277 (syms_of_charset): Adjust for the above changes.
16278
16279 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16280 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16281 it->multibyte_p is zero.
16282
16283 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16284 Delete extern.
16285
162862008-02-01 Kenichi Handa <handa@m17n.org>
16287
16288 * coding.c (Fdefine_coding_system_internal): Fix category setting
16289 for a coding system of type iso-2022.
16290
162912008-02-01 Kenichi Handa <handa@m17n.org>
16292
16293 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16294
162952008-02-01 Kenichi Handa <handa@m17n.org>
16296
16297 * syntax.c (Vnext_word_boundary_function_table): New variable.
16298 (next-word-boundary-function-table): Declare it as a Lisp variable
16299 in syms_of_syntax.
16300 (scan_words): Call functions in Vnext_word_boundary_function_table
16301 if any.
16302
16303 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16304
16305 * fontset.c (fs_load_font): If fontp->charset is not negative,
16306 return fontp without setting its members.
16307
163082008-02-01 Dave Love <fx@gnu.org>
16309
16310 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16311
16312 * m/sparc.h (HAVE_ALLOCA): Delete.
16313
16314 * s/irix6-5.h: Don't include strings.h.
16315 (bcopy, bzero, bcmp): Don't undef.
16316
16317 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16318
16319 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16320 (TIOCSIGSEND): Don't test IRIX6.
16321 (bcopy, bzero, bcmp): Define conditionally.
16322
163232008-02-01 Kenichi Handa <handa@m17n.org>
16324
16325 * buffer.c (Qas, Qmake, Qto): New variables.
16326 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16327 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16328
16329 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16330 we are inserting a process output into a multibyte buffer.
16331
16332 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16333 multibyte_char_to_unibyte.
16334
16335 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16336 by the primary charset, make it eight-bit char.
16337 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16338
16339 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16340 (charset_8_bit__control, charset_8_bit_graphic)
16341 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16342 (define_charset_internal): New function.
16343 (syms_of_charset): Call define_charset_internal for pre-defined
16344 charsets.
16345
16346 * charset.h (charset_8_bit): Extern it.
16347
16348 * coding.c (make_conversion_work_buffer): Adjust for the change
16349 of Fset_buffer_multibyte.
16350 (encode_coding_raw_text): Increment p0 in the loop.
16351
16352 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16353
16354 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16355 for the change of Fset_buffer_multibyte.
16356
16357 * fns.c (Fstring_to_multibyte): New function.
16358 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16359
163602008-02-01 Dave Love <fx@gnu.org>
16361
16362 * xfns.c (x_put_x_image): Declare args.
16363
16364 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16365 (try_font_list): Declare an arg.
16366
16367 * xdisp.c (message2_nolog, set_message): Declare an arg.
16368
16369 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16370
16371 * syntax.c (scan_sexps_forward): Declare an arg.
16372
16373 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16374 Declare an arg.
16375
16376 * lisp.h (Fnew_fontset): Declare.
16377
16378 * keymap.c (push_key_description): Call CHARACTERP correctly.
16379
16380 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16381 (face_for_char): Delete unused vars.
16382 (Fset_fontset_font): Doc fix. Delete unused vars.
16383
16384 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16385
16386 * composite.c (update_compositions): Declare arg.
16387
16388 * cm.c (calccost, cmgoto): Declare args.
16389
16390 * charset.c: Remove `emacs' conditional. Doc fixes.
16391 (map_char_table_for_charset): Declare.
16392
16393 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16394
16395 * ccl.c: Remove `emacs' conditional.
16396
163972008-02-01 Kenichi Handa <handa@m17n.org>
16398
16399 The following changes are to allow specifying multiple font
16400 patterns for a character range (specified by script or charset).
16401
16402 * Makefile.in (abbrev.o): Depend on syntax.h.
16403 (xfaces.o): Depend on charset.h.
16404
16405 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16406 SINGLE_BYTE_CHAR_P.
16407
16408 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16409
16410 * character.h (Vchar_script_table): Extern it.
16411
16412 * character.c (Vscript_alist): Delete.
16413 (Vchar_script_table, Qchar_script_table): New variable.
16414 (syms_of_character): Declare Vchar_script_table as a lisp variable
16415 and initialize it.
16416
16417 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16418 have property char-table-extra-slots, make no extra slot.
16419
16420 * dispextern.h (struct face): Delete member `charset'.
16421 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16422 SINGLE_BYTE_CHAR_P.
16423 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16424 Add prototypes.
16425 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16426 (generate_ascii_font_name): Rename from generate_ascii_font.
16427
16428 * fontset.h (get_font_repertory_func): New prototype.
16429 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16430 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16431
16432 * fontset.c (Qprepend, Qappend): New variables.
16433 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16434 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16435 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16436 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16437 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16438 (load_font_get_repertory): New functions.
16439 (fontset_set): Delete.
16440 (fontset_face): New arg FACE. Return face ID, not face.
16441 Complete re-write to handle new fontset structure. Change caller.
16442 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16443 (face_for_char): Don't call lookup_face.
16444 (make_fontset_for_ascii_face): New arg FACE.
16445 (fs_load_font): New arg CHARSET_ID. Don't check
16446 Vfont_encoding_alist here.
16447 (find_font_encoding): New function.
16448 (list_fontsets): Use STRINGP, not ! NILP.
16449 (accumulate_script_ranges): New function.
16450 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16451 re-written to handle new fontset structure.
16452 (Ffontset_font): Return a copy of element.
16453 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16454 docstring of font-encoding-alist.
16455
16456 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16457 (Fset_fotset_font): Fix arguments to 5.
16458
16459 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16460
16461 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16462 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16463 (highlight_trailing_whitespace): Adjust for the change of
16464 lookup_named_face.
16465
16466 * xfaces.c: Include charset.h.
16467 (load_face_font): Delete argument C. Change caller.
16468 (generate_ascii_font_name): Rename from generate_ascii_font.
16469 (font_name_registry): New function.
16470 (cache_face): Store ascii faces before non-ascii faces in buckets.
16471 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16472 Lookup only ascii faces.
16473 (lookup_non_ascii_face): New function.
16474 (lookup_named_face): Delete argument C. Change caller.
16475 (lookup_derived_face): Delete argument C. Change caller.
16476 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16477 a string, just call font_list with it.
16478 (choose_face_font): Delete arguments FACE and C. New arg
16479 FONT_SPEC. Change caller.
16480 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16481 Change caller.
16482 (realize_non_ascii_face): New function.
16483 (realize_x_face): Call load_face_font here.
16484 (realize_tty_face): Delete argument C. Change caller.
16485 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16486 get a face ID.
16487 (dump_realized_face): Don't print charset of FACE.
16488
16489 * xfns.c (x_set_font): Always call x_new_fontset and
16490 store_frame_parameter.
16491 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16492 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16493
16494 * xterm.h (x_get_font_repertory): Extern it.
16495
16496 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16497 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16498 it->multibyte_p is zero.
16499 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16500 (x_new_fontset): If FONTSETNAME doesn't match any existing
16501 fontsets, create a new one.
16502 (x_get_font_repertory): New function.
16503
165042008-02-01 Kenichi Handa <handa@m17n.org>
16505
16506 * coding.c (Ffind_coding_systems_region_internal): Detect an
16507 ASCII only string correctly.
16508
16509 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16510 version is 0.
16511
165122008-02-01 Kenichi Handa <handa@m17n.org>
16513
16514 * lread.c: Include "coding.h".
16515 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16516 (load_each_byte, unread_char): New variables.
16517 (readchar_backlog): Delete.
16518 (readchar): Return a character unless load_each_byte is nonzero.
16519 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16520 cons. If unread_char is not -1, simply return it.
16521 (unreadchar): Handle the case that readcharfun is
16522 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16523 (read_multibyte): Delete.
16524 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16525 (read_emacs_mule_char): New functions.
16526 (Fload): Even if the file doesn't have the extension ".elc", if
16527 safe_to_load_p returns a positive version number, assume that the
16528 file contains bytecompiled code. If the version is less than 22,
16529 load the file while decoding multibyte sequences by emacs-mule.
16530 (readevalloop): Don't use readchar_backlog.
16531 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16532 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16533 (read_escape): Delete the arg BYTEREP.
16534 (read1): Set load_each_byte to 1 temporarily while handling
16535 #@NUMBER. Don't call read_multibyte.
16536 (read_vector): Call Fread with a cons. If readcharfun is
16537 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16538 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16539 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16540 and Qload_force_doc_strings.
16541
165422008-02-01 Kenichi Handa <handa@m17n.org>
16543
16544 * xdisp.c (face_before_or_after_it_pos): Call
16545 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16546
165472008-02-01 Kenichi Handa <handa@m17n.org>
16548
16549 * character.h (TRAILING_CODE_P): New macro.
16550 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16551 (string_char_with_unification): Fix prototype.
16552 (Vscript_alist): Extern it.
16553
16554 * character.c (Vscript_alist): New variable.
16555 (string_char_with_unification, str_as_unibyte)
16556 (string_escape_byte8): Add `const' to local variables.
16557 (syms_of_character): Declare script-alist as a Lisp variable.
16558
16559 * charset.h (Vcharset_ordered_list): Extern it.
16560 (charset_ordered_list_tick): Extern it.
16561 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16562 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16563 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16564 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16565 (Funify_charset): Adjust for the change of Funify_charset.
16566
16567 * charset.c (charset_ordered_list_tick): New variable.
16568 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16569 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16570 deunify intead of unify a charset.
16571 (string_xstring_p): Add `const' to local variables.
16572 (find_charsets_in_text): Add `const' to arguments and local variables.
16573 (encode_char): Adjust for the change of Funify_charset. Fix
16574 detecting of invalid code.
16575 (Fset_charset_priority): Increment charset_ordered_list_tick.
16576 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16577 and TO_CODE.
16578
16579 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16580 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16581 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16582 (decode_coding_ccl, consume_chars)
16583 (Ffind_coding_systems_region_internal)
16584 (Fcheck_coding_systems_region): Add `const' to local variables.
16585
16586 * print.c (print_object): Use octal form for printing the
16587 contents of a bool vector.
16588
165892008-02-01 Dave Love <fx@gnu.org>
16590
16591 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16592 <version == 20>: Refuse to load.
16593
165942008-02-01 Dave Love <fx@gnu.org>
16595
16596 * fns.c: Move coding.h.
16597 (Qcodeset, Qdays, Qmonths): New.
16598 (concat): Use CHARACTERP instead of INTEGERP.
16599 (Flocale_codeset): Delete.
16600 (Flanginfo): New function.
16601 (syms_of_fns): Change accordingly.
16602
16603 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16604
166052008-02-01 Dave Love <fx@gnu.org>
16606
16607 * casetab.c (init_casetab_once, init_casetab_once): Fix
16608 CHAR_TABLE_SET call.
16609
16610 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16611
16612 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16613
16614 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16615 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16616 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16617
16618 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16619
16620 * coding.c (ENCODE_DESIGNATION, decode_eol)
16621 (make_conversion_work_buffer, code_conversion_restore)
16622 (Fdefine_coding_system_internal): Convert Lisp types.
16623 (code_conversion_restore): Use EQ, not ==.
16624 (Fencode_coding_string): Fix code_convert_string call.
16625
16626 * coding.h (code_convert_region): Fix prototype.
16627
16628 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16629
16630 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16631 (Ffontset_info): Convert Lisp types.
16632
16633 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16634
16635 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16636
16637 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16638
16639 * chartab.c: Include "...h", not <...h> in some cases.
16640
16641 * callproc.c (Fcall_process): Remove unused variables.
16642
166432008-02-01 Dave Love <fx@gnu.org>
16644
16645 * coding.c (Fset_coding_system_priority): Allow null arg list.
16646
166472008-02-01 Dave Love <fx@gnu.org>
16648
16649 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16650 (Fself_insert_and_exit): Use CHARACTERP.
16651
16652 * callproc.c (Fcall_process): Remove unused vars.
16653
16654 * xterm.c (XTread_socket): Add extra dead keysyms.
16655
16656 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16657
16658 * dispextern.h: Remove prototypes for redraw_frame,
16659 redraw_garbaged_frames.
16660
16661 * cmds.c (Fself_insert_command): Use CHARACTERP.
16662
16663 * chartab.c (make_sub_char_table): Remove unused var.
16664 (Fset_char_table_default, Fmap_char_table): Doc fix.
16665
16666 * keymap.c (access_keymap): Remove generic char code.
16667 (push_key_description): Use CHARACTERP.
16668
166692008-02-01 Dave Love <fx@gnu.org>
16670
16671 * charset.c: Doc fixes.
16672 (Funify_charset): Extra checking.
16673
166742008-02-01 Dave Love <fx@gnu.org>
16675
16676 * lread.c: Remove some unused variables.
16677 (safe_to_load_p): If safe, return the magic number version byte.
16678 (Fload): Maybe use load-with-code-conversion.
16679
166802008-02-01 Kenichi Handa <handa@m17n.org>
16681
16682 * category.c (Fmodify_category_entry): Don't modify the contents
16683 of category_set for characters out of the range. Avoid
16684 unnecessary modification.
16685
16686 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16687 Vchar_unify_table. The default value of the table is now nil.
16688
16689 * character.c (syms_of_character): Setup Vchar_width_table for
16690 eight-bit-control and raw-byte chars.
16691
16692 * charset.h (enum define_charset_arg_index): Delete
16693 charset_arg_parents and add charset_arg_subset and
16694 charset_arg_superset.
16695 (enum charset_attr_index): Delete charset_parents and add
16696 charset_subset and charset_superset.
16697 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16698 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16699 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16700 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16701 (CHARSET_SUPERSET): New macros.
16702 (charset_work): Extern it.
16703 (ENCODE_CHAR): Use charset_work.
16704 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16705 (map_charset_chars): Extern it.
16706
16707 * charset.c (load_charset_map): Set the default value of encoder
16708 and deunifier char-tables to nil.
16709 (map_charset_chars): Change argument. Change callers. Use
16710 map_char_table_for_charset instead of map_char_table.
16711 (Fmap_charset_chars): New optional args from_code and to_code.
16712 (Fdefine_charset_internal): Adjust for the change of
16713 `define-charset' (:parents -> :subset or :superset).
16714 (charset_work): New variable.
16715 (encode_char, syms_of_charset): Adjust for the change of
16716 Fdefine_charset_internal.
16717 (Ffind_charset_string): Setup the vector `charsets' correctly.
16718
16719 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16720 the previous change.
16721 (char_table_ref_and_range): Adjust for the above change.
16722 (map_sub_char_table_for_charset): New function.
16723 (map_char_table_for_charset): New function.
16724
16725 * keymap.c (describe_vector): Handle a char-table directly here.
16726 (describe_char_table): Delete.
16727
16728 * lisp.h (map_charset_chars): Delete.
16729
167302008-02-01 Dave Love <fx@gnu.org>
16731
16732 * fns.c (count_combining): Comment out (unused).
16733 (Flocale_codeset): New.
16734 (syms_of_fns): Defsubr it.
16735
16736 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16737 (size_t): Remove.
16738
167392008-02-01 Dave Love <fx@gnu.org>
16740
16741 * Makefile.in (chartab.o): Depend on charset.h.
16742
167432008-02-01 Kenichi Handa <handa@m17n.org>
16744
16745 * character.c (syms_of_character): Set the default value of
16746 Vprintable_chars to Qnil.
16747
167482008-02-01 Dave Love <fx@gnu.org>
16749
16750 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16751
167522008-02-01 Kenichi Handa <handa@m17n.org>
16753
16754 * charset.c (load_charset_map): Handle the case that from < to
16755 correctly.
16756
16757 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16758 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16759 Pay attention to raw-8-bit chars.
16760
167612008-02-01 Kenichi Handa <handa@m17n.org>
16762
16763 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16764 It is not bytecompiled now.
16765
16766 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16767 (charset_jisx0208): New variables.
16768 (Fdefine_charset_internal): Setup them if appropriate.
16769 (init_charset_once): Initialize them to -1.
16770
16771 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16772 (charset_jisx0208): Extern them.
16773
16774 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16775 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16776 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16777 (setup_iso_safe_charsets): Fix arguments to Fassq.
16778 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16779 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16780 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16781 (encode_coding_iso_2022): Change the 1st arg to
16782 ENCODE_ISO_CHARACTER to a variable.
16783
167842008-02-01 Kenichi Handa <handa@m17n.org>
16785
16786 * charset.h (enum define_charset_arg_index): New enums
16787 charset_arg_min_code and charset_arg_max_code.
16788 (struct charset): New member char_index_offset.
16789
16790 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16791 Take charset->char_index_offset into account.
16792 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16793 args[charset_arg_max_code]. Setup charset.char_index_offset.
16794 (syms_of_charset): Fix args to Fdefine_charset_internal.
16795
167962008-02-01 Dave Love <fx@gnu.org>
16797
16798 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16799
168002008-02-01 Dave Love <fx@gnu.org>
16801
16802 * coding.c: Doc fixes.
16803 (Fcoding_system_aliases): Fix return value.
16804 (Qmac): Remove (duplicated) definition.
16805
168062008-02-01 Dave Love <fx@gnu.org>
16807
362654a6
JB
16808 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16809 New functions.
aac0c6e3
MR
16810
16811 * character.c (Fstring): Doc fix.
16812
16813 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16814
362654a6 16815 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
16816 (font-encoding-alist): Doc fix.
16817
168182008-02-01 Dave Love <fx@gnu.org>
16819
16820 * term.c (costs_set): Declare static, non-initialized for pcc.
16821 (encode_terminal_code): Remove unused var.
16822
16823 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16824 for K&R.
16825
16826 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16827
16828 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16829 (suffixes): Move out of make_subsidiaries for K&R.
16830
16831 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16832
16833 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16834
168352008-02-01 Dave Love <fx@gnu.org>
16836
16837 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
16838
16839 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
16840
168412008-02-01 Yong Lu <lyongu@asia-infonet.com>
16842
16843 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
16844
16845 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
16846
168472008-02-01 Kenichi Handa <handa@m17n.org>
16848
16849 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
16850 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
16851
168522008-02-01 Kenichi Handa <handa@m17n.org>
16853
16854 * coding.c (decode_coding_charset): Adjust for the change of
16855 Fdefine_coding_system_internal.
16856 (Fdefine_coding_system_internal): For a coding system of
16857 `charset' type, store a list of charset IDs in
16858 `charset_attr_charset_valids' element of coding attributes.
16859
168602008-02-01 Kenichi Handa <handa@m17n.org>
16861
16862 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
16863 (emacs_mule_char): New arg src. Delete arg `composition'. Change
16864 caller. Handle 2-byte and 3-byte charsets correctly.
16865 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
16866 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
16867 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
16868 (DECODE_EMACS_MULE_21_COMPOSITION): Call
16869 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
16870 sequence.
16871 (decode_coding_emacs_mule): Handle composition correctly. Rewind
16872 `src' and `consumed_chars' correctly before calling emacs_mule_char.
16873 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
16874 and alt&rule composition.
16875 (decode_coding_iso_2022): Handle composition correctly.
16876 (init_coding_once): Setup emacs_mule_bytes for private charsets.
16877
16878 * charset.c (Fdefine_charset_internal): Fix bug for the case of
16879 re-defining a charset. If the charset has :emacs-mule-id, setup
16880 emacs_mule_bytes.
16881 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
16882
168832008-02-01 Kenichi Handa <handa@m17n.org>
16884
16885 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
16886 (encode_coding_big5, encode_coding_charset): If coding requires safe
16887 encoding, produce a character specified by
16888 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
16889
168902008-02-01 Dave Love <fx@gnu.org>
16891
16892 * xterm.c (XSetIMValues): Declare.
16893
16894 * process.c: Conditionally include sys/wait.h, pty.h.
16895
16896 * print.c (print_object): Fix print format for 64-bit systems.
16897
16898 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
16899
16900 * buffer.c (emacs_strerror): Declare.
16901
16902 * fontset.c (Fclear_face_cache): Declare.
16903 (accumulate_font_info): Comment-out (unused).
16904 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
16905 variables.
16906
16907 * character.h (string_escape_byte8): Declare.
16908
16909 * charset.c (load_charset_map, load_charset_map_from_file): Remove
16910 unused vars.
16911 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
16912 (Fmap_charset_chars): Doc fix.
16913
16914 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
16915 (Fset_coding_system_priority, Fset_coding_system_priority)
16916 (Fdefine_coding_system_internal): Doc fix.
16917
169182008-02-01 Dave Love <fx@gnu.org>
16919
16920 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
16921
169222008-02-01 Kenichi Handa <handa@m17n.org>
16923
16924 * character.c (string_escape_byte8): Make multibyte string with
16925 correct size.
16926
16927 * charset.c (Fmake_char): Delete unnecessary code.
16928
169292008-02-01 Kenichi Handa <handa@m17n.org>
16930
16931 * xfns.c (x_encode_text): Allocate coding.destination here, and
16932 call encode_coding_object with dst_object Qnil.
16933
16934 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
16935 multibyte form correctly.
16936
16937 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
16938 against Vfont_encoding_alist.
16939
16940 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
16941 handling of charset list.
16942 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
16943 (decode_coding_object): Move point to coding->dst_pos before
16944 calling post-read-conversion function.
16945 (encode_coding_object): Give correct arguments to
16946 pre-write-conversion. Ignore the return value of
16947 pre-write-conversion function. Pay attention to the case that
16948 pre-write-conversion changes the current buffer. If dst_object is
16949 Qt, even if coding->src_bytes is zero, allocate at least one byte
16950 to coding->destination.
16951
16952 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
16953
16954 * charset.c (Fmake_char): Make it more backward compatible.
16955 (Fmap_charset_chars): Fix docstring.
16956
169572008-02-01 Dave Love <fx@gnu.org>
16958
16959 * coding.c: Doc fixes.
16960 (Fdefine_coding_system_alias): Use names, not symbols, in
16961 coding-system-alist.
16962
169632008-02-01 Kenichi Handa <handa@m17n.org>
16964
16965 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
16966 of calling free_realized_face.
16967
169682008-02-01 Yong Lu <lyongu@asia-infonet.com>
16969
16970 * charset.c (read_hex): Don't treat SPC as a comment starter.
16971 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
16972 (Fdecode_char): Fix typo.
16973
169742008-02-01 Kenichi Handa <handa@m17n.org>
16975
16976 * charset.h (struct charset): New member `code_space_mask'.
16977
16978 * coding.c (coding_set_source): Delete the local variable beg_byte.
16979 (encode_coding_charset, Fdefine_coding_system_internal):
16980 Delete the local variable charset.
16981 (Fdefine_coding_system_internal): Setup
16982 attrs[coding_attr_charset_valids] correctly.
16983
16984 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
16985 member to check if CODE is valid or not.
16986 (Fdefine_charset_internal): Initialize `code_space_mask' member.
16987 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
16988 is within the range of charset->min_code and carset->max_code.
16989
169902008-02-01 Dave Love <fx@gnu.org>
16991
16992 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
16993
16994 * dispextern.h (generate_ascii_font): Fix return type.
16995
16996 * xfaces.c (generate_ascii_font): Fix arg declaration.
16997
16998 * coding.c (coding_inherit_eol_type)
16999 (Fset_terminal_coding_system_internal)
17000 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
17001
170022008-02-01 Kenichi Handa <handa@m17n.org>
17003
17004 * coding.c (decode_coding_charset, encode_coding_charset): Handle
17005 multiple charsets correctly.
17006
170072008-02-01 Kenichi Handa <handa@m17n.org>
17008
17009 * search.c (boyer_moore): Fix handling of multibyte character
17010 translation.
17011
17012 * xdisp.c (display_mode_element): When the variable `elt' is
17013 changed, update `this' and `lisp_string'.
17014
170152008-02-01 Kenichi Handa <handa@m17n.org>
17016
17017 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
17018
17019 * callproc.c (Fcall_process): Be sure to give the current buffer
17020 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
17021
17022 * charset.c (struct charset_map_entries): New struct.
17023 (load_charset_map): Rename from parse_charset_map. New args
17024 entries and n_entries. Change caller.
17025 (load_charset_map_from_file): Rename from load_charset_map.
17026 Change caller. New arg control_flag. Call load_charset_map at
17027 the tail.
17028 (load_charset_map_from_vector): New function.
17029 (Fdefine_charset_internal): Setup charset.compact_codes_p.
17030 (encode_char): If the charset is compact, change a character index
17031 to a code point.
17032
17033 * coding.c (coding_alloc_by_making_gap): Check the case that the
17034 source and destination are the same correctly.
17035 (decode_coding_raw_text): Set coding->consumed_char and
17036 coding->consumed to 0.
17037 (produce_chars): If coding->chars_at_source is nonzero, update
17038 coding->consumed_char and coding->consumed before calling
17039 alloc_destination.
17040 (Fdefine_coding_system_alias): Register ALIAS in
17041 Vcoding_system_alist.
17042 (syms_of_coding): Define `no-conversion' coding system at the tail.
17043
17044 * fileio.c (Finsert_file_contents): Set coding_system instead of
17045 val. If the current buffer is multibyte, always call
17046 decode_coding_gap.
17047
17048 * xfaces.c (try_font_list): Give higher priority to fontset's
17049 family than face's family.
17050
170512008-02-01 Kenichi Handa <handa@m17n.org>
17052
17053 * callproc.c (Fcall_process): Be sure to give the current buffer
17054 to decode_coding_c_string.
17055
17056 * xfaces.c (try_font_list): Give a family specified in a fontset
17057 higher priority than a family specified in a face.
17058
170592008-02-01 Kenichi Handa <handa@m17n.org>
17060
17061 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
17062 Fix arguments to insert_from_buffer.
17063
17064 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
17065
170662008-02-01 Kenichi Handa <handa@m17n.org>
17067
17068 * coding.c (produce_chars): Set the variable `multibytep' correctly.
17069 (decode_coding_gap): Set coding->dst_multibyte correctly.
17070
170712008-02-01 Kenichi Handa <handa@m17n.org>
17072
17073 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
17074 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
17075 (encode_coding_utf_16): Substitute coding->default_char for
17076 non-Unicode characters.
17077 (decode_coding): Don't call record_insert here.
17078 (setup_coding_system): Initialize `surrogate' of
17079 coding->spec.utf_16 to 0.
17080 (EMIT_ONE_BYTE): Fix for multibyte case.
17081
17082 * insdel.c (insert_from_gap): Call record_insert.
17083
170842008-02-01 Kenichi Handa <handa@m17n.org>
17085
17086 * casefiddle.c (casify_region): Fix multibyte case.
17087
17088 * character.c (c_string_width): Add return type `int'.
17089 (char_string_with_unification): Delete arg ADVANCED.
17090
17091 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
17092 (CHAR_STRING): Adjust for the change of char_string_with_unification.
17093 (CHAR_STRING_ADVANCE): Make it do-while statement.
17094
17095 * chartab.c (sub_char_table_set_range): Optimize for the case
17096 DEPTH == 3. Add workaround code for a GCC optimization bug.
17097
17098 * charset.c (parse_charset_map): Remove an unused variable.
17099
17100 * coding.c: Delete unused variables.
17101
17102 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
17103 earlier. If inserted is zero and the coding system doesn't
17104 require flushing, don't call decode_coding_gap.
17105
17106 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
17107
171082008-02-01 Kenichi Handa <handa@m17n.org>
17109
17110 The following changes are for using Unicode as an internal
17111 character model, and use UTF-8 format for buffer/string
17112 representation.
17113
17114 * .gdbinit (xchartable): Adjust for the change of char table structure.
17115 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
17116
17117 * Makefile.in (obj): Add character.o and chartab.o.
17118 (lisp, shortlisp): Remove utf-8.elc.
17119 (*.o): For many files, change dependency on charset.h to
17120 character.h, and add dependency on character.h.
17121 (character.o, chartab.o): New targets.
17122
17123 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
17124 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
17125 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
17126 of "charset.h".
17127
17128 * dired.c, filelock.c: Include "character.h".
17129
17130 * alloc.c: Include "character.h" instead of "charset.h".
17131 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
17132 (syms_of_alloc): Remove defsubr for Smake_char_table.
17133
17134 * buffer.c: Include "character.h" instead of "charset.h", don't
17135 include "coding.h".
17136 (Fset_buffer_multibyte): Adjust for UTF-8.
17137
17138 * buffer.h: EXFUN Fbuffer_live_p.
17139
17140 * callproc.c: Include "character.h" instead of "charset.h".
17141 (Fcall_process): Big change for the new code-conversion APIs.
17142
17143 * casetab.c: Include "character.h" instead of "charset.h".
17144 (set_canon, set_identity, shuffle): Adjust for the new
17145 map_char_table spec.
17146 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
17147 accessing the char table structure.
17148
17149 * chartab.c: New file that implements char table.
17150
17151 * category.c: Include "character.h".
17152 (copy_category_entry): New function.
17153 (copy_category_table): Call map_char_table and copy_category_entry.
17154 (Fmake_category_table): Initialize all top-level slots.
17155 (char_category_set): New function.
17156 (modify_lower_category_set): Delete.
17157 (Fmodify_category_entry): Call char_table_ref_and_range.
17158
17159 * category.h (CATEGORY_SET): Just call char_category_set.
17160
17161 * ccl.c: Include "character.h".
17162 (Qccl, Qcclp): New variables.
17163 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
17164 it's less than 256.
17165 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
17166 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
17167 and DST type.
17168 (ccl_driver): Change types of argument, adjust code accordingly.
17169 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
17170 ccl_driver.
17171 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
17172
17173 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
17174 New members src_multibyte, dst_multibyte, consumed, and produced.
17175 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
17176 (CODING_SPEC_CCL_PROGRAM): New macro.
17177 (ccl_driver): Update prototype.
17178 (Qccl, Qcclp, Fccl_program_p): Extern them.
17179 (CHECK_CCL_PROGRAM): New macro.
17180
17181 * character.c, character.h, chartab.c: New files.
17182
17183 * charset.c: Mostly re-written. Move character and multibyte sequence
17184 handling codes to character.c.
17185
17186 * charset.h: Mostly re-written. Move character and multibyte sequence
17187 handling codes to character.h.
17188
17189 * coding.c, coding.h: Mostly re-written.
17190
17191 * composite.c: Include "character.h" instead of "charset.h".
17192 (CHAR_WIDTH): Move to character.h.
17193 (HASH_KEY, HASH_VALUE): Delete.
17194
17195 * composite.h (enum composition_method): Change order of enumeration
17196 symbols.
17197
17198 * data.c: Include "character.h" instead of "charset.h".
17199 (Faref): Call CHAR_TABLE_REF for a char table.
17200 (Faset): Call CHAR_TABLE_SET for a char table.
17201
17202 * dispextern.h (free_realized_face, check_face_attribytes)
17203 (generate_ascii_font): Extern them.
17204 (free_realized_multibyte_face): Delete extern.
17205
17206 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
17207 table structure.
17208
17209 * editfns.c: Include "character.h" instead of "charset.h".
17210 (Fchar_to_string): Always call CHAR_STRING.
17211
17212 * emacs.c (main): Call init_charset_once, init_charset,
17213 syms_of_chartab, and syms_of_character.
17214
17215 * fileio.c: Include "character.h" instead of "charset.h".
17216 (Finsert_file_contents): Big change for the new code-conversion API.
17217 (choose_write_coding_system, Fwrite_region): Likewise.
17218 (build_annotations_2): Delete.
17219 (e_write): Big change for the new code-conversion API.
17220
17221 * fns.c: Include "character.h" instead of "charset.h".
17222 (copy_sub_char_table): Move to chartab.c.
17223 (Fcopy_sequence): Call copy_char_table for a char table.
17224 (concat): Delete codes calling count_multibyte.
17225 (string_char_to_byte, string_byte_to_char): Adjust for the new
17226 multibyte form.
17227 (internal_equal): Adjust for the change of char table structure.
17228 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
17229 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
17230 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17231 (char_table_translate, optimize_sub_char_table)
17232 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17233 chartab.c.
17234 (char_table_ref_and_index): Delete.
17235 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17236 (Fmd5): Call preferred_coding_system instead of accessing
17237 Vcoding_category_list. Adjust for the new code-conversion API.
17238 (syms_of_fns): Move defsubr for char table related functions to
17239 chartab.c.
17240
17241 * fontset.c: Mostly re-written.
17242
17243 * fontset.h (struct font_info): Change type of the member encoding_type.
17244 (enum FONT_SPEC_INDEX): New enum.
17245 (fontset_font_pattern, fs_load_font): Update prototype.
17246 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17247
17248 * indent.c: Include "character.h" instead of "charset.h".
17249 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17250
17251 * insdel.c: Include "character.h" instead of "charset.h".
17252 (copy_text): Don't refer to Vnonascii_translation_table.
17253 (insert_from_gap): New function.
17254
17255 * keyboard.c: Include "character.h" instead of "charset.h".
17256 (command_loop_1): Never call direct_output_forward_char before
17257 a non-ASCII character.
17258 (read_char): If Vkeyboard_translate_table is a char table, always
17259 translate a character.
17260
17261 * keymap.c: Include "character.h".
17262 (store_in_keymap): Handle the case that IDX is a cons.
17263 (Fdefine_key): Handle the case that KEY is a cons and the car part
17264 is also a cons (range).
17265 (push_key_description): Adjust for the new character code.
17266 (describe_vector): Call describe_char_table for a char table.
17267 (describe_char_table): New function.
17268
17269 * keymap.h (describe_char_table): Extern it.
17270
17271 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17272 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17273 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17274 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17275 Delete.
17276 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17277 structure.
17278 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17279 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17280 (CHARTAB_SIZE_BITS_3): New macros.
17281 (chartab_size): Extern it.
17282 (struct Lisp_Char_Table): Re-design.
17283 (struct Lisp_Sub_Char_Table): New structure.
17284 (HASH_KEY, HASH_VALUE): Move from fns.c.
17285 (CHARACTERBITS): Define as 22.
17286 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17287 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17288 (GC_SUB_CHAR_TABLE_P): New macro.
17289 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17290 (code_convert_string_norecord): Deleted extern.
17291 (init_character_once, syms_of_character, init_charset)
17292 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17293
17294 * lread.c: Include "character.h".
17295 (read_multibyte): New arg NBYTES.
17296 (read_escape): Change the meaning of returned *BYTEREP.
17297 (to_multibyte): Delete.
17298 (read1): Adjust the handling of char table and string.
17299
17300 * print.c: Include "character.h" instead of "charset.h".
17301 (print_string): Convert 8-bit raw bytes to octal form by
17302 string_escape_byte8.
17303 (print_object): Adjust for the new multibyte form. Print 8-bit
17304 raw bytes always in octal form. Handle sub char table correctly.
17305
17306 * process.c: Include "character.h" instead of "charset.h".
17307 (read_process_output, send_process): Adjust for the new
17308 code-conversion API.
17309
17310 * puresize.h (BASE_PURESIZE): Increase.
17311
17312 * regex.c: Include "character.h" instead of "charset.h".
17313 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17314 (regex_compile): Accept a range whose starting and ending
17315 character have different leading bytes.
17316 (analyse_first): Adjust for the above change.
17317
17318 * search.c: Include "character.h" instead of "charset.h".
17319 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17320 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17321
17322 * syntax.c: Include "character.h" instead of "charset.h".
17323 (syntax_parent_lookup): Delete.
17324 (Fmodify_syntax_entry): Accept a cons as CHAR.
17325 (skip_chars): Adjust for the new multibyte form.
17326 (init_syntax_once): Call char_table_set_range instead of directly
17327 accessing the structure of a char table.
17328
17329 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17330 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17331 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17332 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17333
17334 * term.c: Include "buffer.h" and "character.h".
17335 (encode_terminal_code, write_glyphs): Adjust for the new
17336 code-conversion API.
17337 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17338
17339 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17340
17341 * xdisp.c: Include "character.h".
17342 (get_next_display_element): Adjust for the new multibyte form.
17343 (disp_char_vector): Adjust for the new char table structure.
17344 (decode_mode_spec_coding): Adjust for the new structure of
17345 coding system.
17346 (decode_mode_spec): Adjust for the new code-conversion API.
17347
17348 * xfaces.c: Include "character.h" instead of "charset.h".
17349 (load_face_font): Adjust for the change of choose_face_font and
17350 FS_LOAD_FONT.
17351 (generate_ascii_font): New function.
17352 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17353 (set_font_frame_param): Adjust for the change of choose_face_font.
17354 (free_realized_face): Make it public.
17355 (free_realized_faces_for_fontset): Rename from
17356 free_realized_multibyte_face. Free also faces realized for ASCII.
17357 (choose_face_font): Change arguments. Adjust for the change of
17358 fontset_font_pattern and FS_LOAD_FONT.
17359
17360 * xfns.c: Include "character.h".
17361 (x_encode_text): Adjust for the new code-conversion API.
17362
17363 * xselect.c: Don't include "charset.h".
17364 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17365
17366 * xterm.c: Include "character.h".
17367 (x_encode_char): New argument CHARSET. Change caller.
17368 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17369 Call ENCODE_CHAR instead of SPLIT_CHAR.
17370 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17371 CHAR_WIDTH instead of CHARSET_WIDTH.
17372 (XTread_socket): Adjust for the new code-conversion API.
17373 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17374 (x_load_font): Adjust for the change of struct font.
17375
173762008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17377
17378 * xfaces.c (face_at_buffer_position): Remove unused vars.
17379
173802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17381
17382 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17383 Fix overflow checking.
17384
173852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17386
17387 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17388 Cancel previous change.
17389
173902008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17391
17392 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17393 ccl->eight_bit_control. Fix check for buffer overflow.
17394 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17395 (ccl_driver): Initialize extra_bytes to 0.
17396
173972008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17398
17399 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17400 return it ORed with ctrl_modifier.
17401
174022008-01-29 Miles Bader <miles@gnu.org>
17403
17404 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17405
174062008-01-28 Jason Rumney <jasonr@gnu.org>
17407
17408 * w32.c (stat): Don't double check for networked drive.
17409
174102008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17411
17412 * window.c (run_window_configuration_change_hook): New function.
17413 Code extracted from set_window_buffer. Set the selected frame.
17414 (set_window_buffer): Use it.
17415 * window.h (run_window_configuration_change_hook): Declare.
17416 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17417
17418 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17419
174202008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17421
17422 * Makefile.in: Remove references to unused macros.
17423
174242008-01-26 Eli Zaretskii <eliz@gnu.org>
17425
17426 * w32.c (g_b_init_get_sid_sub_authority)
17427 (g_b_init_get_sid_sub_authority_count): New static variables.
17428 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17429 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17430 (init_user_info): Use them to retrieve uid and gid.
17431 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17432 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17433 st_uid and st_gid of the file.
17434
174352008-01-26 Jason Rumney <jasonr@gnu.org>
17436
17437 * w32.c (logon_network_drive): New function.
17438 (stat): Use it.
17439
174402008-01-26 Chong Yidong <cyd@stupidchicken.com>
17441
17442 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17443 invisible text covered with an ellipsis.
17444
174452008-01-25 Richard Stallman <rms@gnu.org>
17446
17447 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17448 jump back to beginning. Move some other initializations after that.
17449 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17450 New variables.
17451 (syms_of_xdisp): Init them.
17452
17453 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17454
17455 * buffer.c (reset_buffer_local_variables):
17456 Implement `permanent-local-hook'.
17457 (Qpermanent_local_hook): New variable.
17458 (syms_of_buffer): Init and staticpro it.
17459
174602008-01-25 Michael Albinus <michael.albinus@gmx.de>
17461
17462 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17463
174642008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17465
17466 * fns.c (Fclrhash): Return TABLE.
17467
174682008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17469
17470 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17471 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17472 is set even without positional changes.
17473 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17474
17475 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17476
174772008-01-23 Jason Rumney <jasonr@gnu.org>
17478
17479 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17480
17481 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17482 the unicode range available in MULE by locale-coding-system.
17483 Improve dbcs lead byte detection. Set event timestamp and modifiers
17484 earlier.
17485
174862008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17487
17488 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17489 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17490 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17491 when used on child processes.
17492
174932008-01-21 Michael Albinus <michael.albinus@gmx.de>
17494
17495 * dbusbind.c (Fdbus_method_return_internal): Rename from
17496 Fdbus_method_return.
17497 (Fdbus_unregister_object): Move to dbus.el.
17498 (Fdbus_call_method, Fdbus_method_return_internal)
17499 (Fdbus_send_signal): Improve debug messages.
17500
175012008-01-20 Martin Rudalics <rudalics@gmx.at>
17502
17503 * undo.c (undo_inhibit_record_point): New variable.
17504 (syms_of_undo): Initialize it.
17505 (record_point): Don't record point when undo_inhibit_record_point
17506 is set.
17507
175082008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17509
17510 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17511
17512 * xdisp.c (Qauto_hscroll_mode): New var.
17513 (syms_of_xdisp): Initialize it.
17514 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17515 window's buffer.
17516 (hscroll_windows): Don't check automatic_hscrolling_p here.
17517
17518 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17519 vscroll if we're setting window-buffer to the value it already has.
17520
175212008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17522
17523 * m/intel386.h: Remove references to XENIX.
17524
175252008-01-17 Andreas Schwab <schwab@suse.de>
17526
17527 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17528 instead of HAVE_X86_64_LIB64_DIR.
17529 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17530
175312008-01-17 Glenn Morris <rgm@gnu.org>
17532
17533 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17534 to HAVE_X86_64_LIB64_DIR.
17535
175362008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17537
17538 * s/irix3-3.h:
17539 * s/irix4-0.h:
17540 * s/386-ix.h:
17541 * s/domain.h:
17542 * s/hpux9-x11r4.h:
17543 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17544
17545 * sysdep.c: Remove code containing references to symbols defined
17546 by unsupported systems.
17547
175482008-01-16 Glenn Morris <rgm@gnu.org>
17549
17550 * coding.c (select-safe-coding-system-function): Doc fix.
17551
175522008-01-15 Glenn Morris <rgm@gnu.org>
17553
17554 * config.in: Revert 2008-01-13 change: this is a generated file.
17555
175562008-01-13 Tom Tromey <tromey@redhat.com>
17557
17558 * lisp.h: Fix typo.
17559
175602008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17561
17562 * m/sequent-ptx.h:
17563 * m/sequent.h:
17564 * s/ptx.h:
17565 * s/ptx4-2.h:
17566 * s/ptx4.h: Remove files for systems no longer supported.
17567
17568 * callproc.c (Fcall_process): Fix previous change.
17569
175702008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17571
17572 * unexsunos4.c: Remove file, system not supported anymore.
17573
17574 * m/mips.h:
17575 * m/intel386.h:
17576 * callproc.c:
17577 * config.in:
17578 * ecrt0.c:
17579 * emacs.c:
17580 * fileio.c:
17581 * frame.c:
17582 * getpagesize.h:
17583 * keyboard.c:
17584 * lread.c:
17585 * process.c:
17586 * puresize.h:
17587 * sysdep.c:
17588 * systty.h:
17589 * syswait.h:
17590 * unexec.c:
17591 * xdisp.c:
17592 * alloc.c: Remove code containing references to symbols defined by
17593 unsupported systems.
17594
175952008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17596
17597 * coding.c (detect_coding_mask): Fix previous change.
17598
175992008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17600
17601 * coding.c (detect_coding_iso2022): New arg
17602 latin_extra_code_state. Allow Latin extra codes only
17603 when *latin_extra_code_state is nonzero.
17604 (detect_coding_mask): If there is a NULL byte, detect the encoding
17605 as UTF-16 or binary. If Latin extra codes exist, detect the
17606 encoding as ISO-2022 only when there's no other proper encoding is
17607 found.
17608
176092008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17610
17611 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17612 #ifdef MAC_OS.
17613
176142008-01-08 Richard Stallman <rms@gnu.org>
17615
17616 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17617
176182008-01-06 Nick Roberts <nickrob@snap.net.nz>
17619
17620 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17621 menu bar in parentheses.
17622
176232008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17624
17625 * m/7300.h:
17626 * m/acorn.h:
17627 * m/alliant-2800.h:
17628 * m/alliant.h:
17629 * m/alliant1.h:
17630 * m/alliant4.h:
17631 * m/altos.h:
17632 * m/amdahl.h:
17633 * m/apollo.h:
17634 * m/att3b.h:
17635 * m/aviion-intel.h:
17636 * m/aviion.h:
17637 * m/celerity.h:
17638 * m/clipper.h:
17639 * m/cnvrgnt.h:
17640 * m/convex.h:
17641 * m/cydra5.h:
17642 * m/delta88k.h:
17643 * m/dpx2.h:
17644 * m/dual.h:
17645 * m/elxsi.h:
17646 * m/f301.h:
17647 * m/gould-np1.h:
17648 * m/gould.h:
17649 * m/i860.h:
17650 * m/ibmps2-aix.h:
17651 * m/ibmrt-aix.h:
17652 * m/ibmrt.h:
17653 * m/irist.h:
17654 * m/is386.h:
17655 * m/isi-ov.h:
17656 * m/mega68.h:
17657 * m/mg1.h:
17658 * m/news-r6.h:
17659 * m/news-risc.h:
17660 * m/news.h:
17661 * m/nh3000.h:
17662 * m/nh4000.h:
17663 * m/ns16000.h:
17664 * m/ns32000.h:
17665 * m/nu.h:
17666 * m/orion.h:
17667 * m/orion105.h:
17668 * m/paragon.h:
17669 * m/pfa50.h:
17670 * m/plexus.h:
17671 * m/pyramid.h:
17672 * m/pyrmips.h:
17673 * m/sh3el.h:
17674 * m/sps7.h:
17675 * m/sr2k.h:
17676 * m/stride.h:
17677 * m/sun1.h:
17678 * m/sun2.h:
17679 * m/sun3-68881.h:
17680 * m/sun3-fpa.h:
17681 * m/sun3-soft.h:
17682 * m/sun3.h:
17683 * m/sun386.h:
17684 * m/symmetry.h:
17685 * m/tad68k.h:
17686 * m/tahoe.h:
17687 * m/targon31.h:
17688 * m/tek4300.h:
17689 * m/tekxd88.h:
17690 * m/tower32.h:
17691 * m/tower32v3.h:
17692 * m/ustation.h:
17693 * m/wicat.h:
17694 * m/xps100.h:
17695 * s/cxux.h:
17696 * s/cxux7.h:
17697 * s/dgux.h:
17698 * s/dgux4.h:
17699 * s/dgux5-4-3.h:
17700 * s/dgux5-4r2.h:
17701 * s/esix.h:
17702 * s/esix5r4.h:
17703 * s/hiuxmpp.h:
17704 * s/hiuxwe2.h:
17705 * s/iris3-5.h:
17706 * s/iris3-6.h:
17707 * s/isc2-2.h:
17708 * s/isc3-0.h:
17709 * s/isc4-0.h:
17710 * s/isc4-1.h:
17711 * s/newsos5.h:
17712 * s/newsos6.h:
17713 * s/osf1.h:
17714 * s/osf5-0.h:
17715 * s/riscix1-1.h:
17716 * s/riscix12.h:
17717 * s/sco4.h:
17718 * s/sco5.h:
17719 * s/sunos4-0.h:
17720 * s/sunos4-1.h:
17721 * s/sunos413.h:
17722 * s/sunos4shr.h:
17723 * s/umax.h:
17724 * s/unipl5-2.h:
17725 * s/xenix.h:
17726 * cxux-crt0.s:
17727 * unexapollo.c:
17728 * unexconvex.c:
17729 * unexenix.c:
17730 * unexsni.c: Remove files for systems no longer supported.
17731
17732 * m/intel386.h: Remove references to unsupported systems.
17733
17734 * w32.c (get_emacs_configuration): Remove reference to i860.
17735
17736 * sysdep.c: Remove dead code.
17737
177382008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17739
17740 * s/rtu.h:
17741 * m/masscomp.h: Remove files. Platform is obsolete.
17742
177432008-01-04 Michael Albinus <michael.albinus@gmx.de>
17744
17745 * dbusbind.c (Fdbus_method_return): New function.
17746 (xd_read_message): Add the serial number to the event.
17747 (Fdbus_register_method): Activate the function.
17748
177492008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17750
17751 * keyboard.c (read_key_sequence): Fix typo.
17752
177532008-01-03 Michael Albinus <michael.albinus@gmx.de>
17754
17755 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17756 (xd_signature, xd_append_arg): Handle element type detection for
17757 empty arrays.
17758 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17759 SDATA () calls; this must be solved more general.
17760 (Fdbus_register_signal): Use SBYTES instead of strlen.
17761
177622008-01-03 Magnus Henoch <magnus@zemdatav>
17763
17764 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17765 unsigned int for byte values (necessary for big-endian platform).
17766 (Fdbus_call_method): Handle the case of no returned arguments.
17767
177682007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17769
17770 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17771
177722007-12-31 Magnus Henoch <mange@freemail.hu>
17773
17774 * dbusbind.c (xd_signature): Signature of variant is just "v".
17775
177762007-12-30 Michael Albinus <michael.albinus@gmx.de>
17777
17778 * dbusbind.c: Fix several errors and compiler warnings.
17779 Reported by Tom Tromey <tromey@redhat.com>.
17780 (XD_ERROR, XD_DEBUG_MESSAGE)
17781 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17782 (xd_append_arg): Part for basic D-Bus types rewritten.
17783 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17784 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17785 appropriate.
17786 (xd_read_message): Return Qnil. Don't signal an error; it is not
17787 useful during event reading.
17788 (Fdbus_register_signal): Signal an error if the check for
17789 FUNCTIONP fails.
17790 (Fdbus_register_method): New function. The implementation is not
17791 complete, the call of the function signals an error therefore.
17792 (Fdbus_unregister_object): New function, renamed from
17793 Fdbus_unregister_signal. The initial check signals an error, if
17794 the object is not well formed.
17795
177962007-12-30 Richard Stallman <rms@gnu.org>
17797
17798 * textprop.c (get_char_property_and_overlay):
17799 Signal error if POSITION is out of range in a buffer.
17800
178012007-12-29 Martin Rudalics <rudalics@gmx.at>
17802
17803 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17804 because the original parameters are in pure storage now.
17805
178062007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17807
17808 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17809
178102007-12-22 Eli Zaretskii <eliz@gnu.org>
17811
17812 * callint.c (syms_of_callint) <command-history>: Add reference to
17813 history-length in the doc string.
17814
178152007-12-17 Jason Rumney <jasonr@gnu.org>
17816
17817 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17818 before passing as wParam.
17819
178202007-12-22 Michael Albinus <michael.albinus@gmx.de>
17821
17822 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17823 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17824 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17825 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17826 as number.
17827 (Fdbus_call_method): Fix docstring.
17828
178292007-12-21 Michael Albinus <michael.albinus@gmx.de>
17830
17831 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17832 New macros.
17833 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17834 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17835 Simplify.
17836 (xd_signature): New function.
17837 (xd_append_arg): Compute also signatures. Major rewrite.
17838 (xd_retrieve_arg): Make debug messages friendly.
17839 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
17840 Check for signatures of arguments.
17841
178422007-12-19 Michael Albinus <michael.albinus@gmx.de>
17843
17844 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
17845 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
17846 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
17847 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
17848 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
17849 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
17850 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
17851 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
17852 (xd_retrieve_value): Remove. Functionality included in ...
17853 (xd_append_arg): New function.
17854 (Fdbus_call_method, Fdbus_send_signal): Apply it.
17855
178562007-12-16 Michael Albinus <michael.albinus@gmx.de>
17857
17858 * dbusbind.c (top): Include <stdio.h>.
17859 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
17860 dbus_message_new_method_call and dbus_message_new_signal.
17861 (Fdbus_register_signal): Rename unique_name to uname.
17862 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
17863 non-existing unique name. Fix typos in matching rule. Return an
17864 object which is useful in Fdbus_unregister_signal.
17865 (Fdbus_unregister_signal): Reimplementation, in order to remove
17866 only the corresponding entry.
17867 (Vdbus_registered_functions_table): Change the order of entries.
17868 Apply these changes in xd_read_message and Fdbus_register_signal.
17869
178702007-12-16 Andreas Schwab <schwab@suse.de>
17871
17872 * fileio.c (Finsert_file_contents): Fix overflow check to not
17873 depend on undefined integer overflow.
17874
178752007-12-14 Jason Rumney <jasonr@gnu.org>
17876
17877 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
17878 for characters above 127.
17879
178802007-12-13 Jason Rumney <jasonr@gnu.org>
17881
17882 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
17883 before dereferencing array.
17884 (lookup_vk_code): Remove zero comparison.
17885
178862007-12-14 Michael Albinus <michael.albinus@gmx.de>
17887
17888 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
17889 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
17890 Use `unsigned int' instead of `uint'.
17891 (xd_read_message, Fdbus_register_signal): Split expressions into
17892 multiple lines before operators "&&" and "||", according to the
17893 GNU Coding Standards.
17894
178952007-12-14 Eli Zaretskii <eliz@gnu.org>
17896
17897 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
17898
178992007-12-12 Juri Linkov <juri@jurta.org>
17900
17901 * buffer.c (Frename_buffer): In interactive spec replace
17902 `read-buffer' with `read-string' that uses `buffer-name-history'
17903 as history, and the current buffer's name as default.
17904
179052007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
17906
17907 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
17908 manipulating the backtrace manually.
17909 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
17910 (struct backtrace, backtrace_list): Remove.
17911 (command_loop_1): Remove dead var `no_direct'.
17912
17913 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
17914 preserve non-built-in buffer-local variables.
17915 (Fkill_all_local_variables): Don't re-create&re-set permanent
17916 buffer-local variables.
17917
179182007-12-09 Juri Linkov <juri@jurta.org>
17919
17920 * buffer.c (Frename_buffer): Change interactive spec from "s" to
17921 Lisp code that uses `read-buffer' with current buffer as default.
17922
179232007-12-08 Michael Albinus <michael.albinus@gmx.de>
17924
17925 * dbusbind.c (xd_read_message): Generate an event for every
17926 registered handler. There might be several handlers registered
17927 for the same signal.
17928 (Fdbus_register_signal): Don't overwrite a registration for the
17929 same signal. Add a new registration if handlers are different.
17930 (Vdbus_registered_functions_table): Rework doc string.
17931
179322007-12-07 Michael Albinus <michael.albinus@gmx.de>
17933
17934 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
17935 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
17936 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
17937 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
17938 Unify argument lists.
17939 (xd_read_message, Fdbus_register_signal): Reorder and extend event
17940 arguments and hash table keys. Use unique name for service.
17941 (Fdbus_unregister_signal): Remove checks.
17942 (Vdbus_registered_functions_table): Fix doc string.
17943
179442007-12-05 Magnus Henoch <mange@freemail.hu>
17945
17946 * process.c (make_process): Initialize pty_flag to 0.
17947
179482007-12-05 Jason Rumney <jasonr@gnu.org>
17949
17950 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
17951 specified XBMs.
17952
179532007-12-05 Richard Stallman <rms@gnu.org>
17954
17955 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
17956
179572007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17958
17959 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
17960 New variable.
17961 (mac_try_close_socket) [MAC_OSX]: New function.
17962 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
17963 Update cfsockets_for_select. Replace invalid CFRunLoop source.
17964
17965 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
17966 Use mac_try_close_socket.
17967
179682007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17969
17970 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
17971 reloc_base.
17972 (copy_dysymtab): Compute relocation base here.
17973 (rebase_reloc_address) [__ppc64__]: New function.
17974 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
17975 changed.
17976
179772007-12-05 Jason Rumney <jasonr@gnu.org>
17978
17979 * w32proc.c (sys_spawnve): Quote args with wildcards.
17980
179812007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17982
17983 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
17984 __objc_* sections.
17985 (unrelocate) [_LP64]: Set relocation base to address of data segment.
17986
179872007-12-05 Michael Albinus <michael.albinus@gmx.de>
17988
17989 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
17990 Move check for Vdbus_registered_functions_table to
17991 xd_read_queued_messages.
17992 (xd_read_queued_messages): Protect xd_read_message calls by
17993 internal_condition_case_1.
17994
179952007-12-04 Michael Albinus <michael.albinus@gmx.de>
17996
17997 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
17998 Qdbus_system_bus and Qdbus_session_bus, respectively.
17999 (Vdbus_intern_symbols): Remove.
18000 (Vdbus_registered_functions_table): New hash table.
18001 (XD_SYMBOL_INTERN_SYMBOL): Remove.
18002 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
18003 Rewrite in order to manage registered functions by hash table
18004 Vdbus_registered_functions_table.
18005
180062007-12-03 Jan Djärv <jan.h.d@swipnet.se>
18007
18008 * xterm.c: Update URL to Window Manager Specification in comment.
18009
180102007-12-02 Michael Albinus <michael.albinus@gmx.de>
18011
18012 * config.in (HAVE_DBUS): Add.
18013
18014 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
18015 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
18016 (obj): Add $(DBUS_OBJ).
18017 (LIBES): Add $(DBUS_LIBS).
18018 (dbusbind.o): New target.
18019
18020 * dbusbind.c: New file.
18021
18022 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
18023
18024 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
18025 (Qdbus_event): New Lisp symbol.
18026 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
18027 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 18028 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
18029
18030 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
18031
180322007-12-01 Richard Stallman <rms@gnu.org>
18033
18034 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
18035
180362007-11-30 Jason Rumney <jasonr@gnu.org>
18037
18038 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
18039 (w32con_reset_terminal_modes): Clear screen buffer.
18040 (w32_face_attributes): Don't use color indexes that are out of range.
18041 Only reverse the default colors.
18042
18043 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
18044 WINDOWSNT.
18045
18046 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
18047
180482007-11-29 Jason Rumney <jasonr@gnu.org>
18049
18050 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
18051 (w32_face_attributes): Use Vtty_defined_color_alist to determine
18052 if the terminal colors are initialized.
18053 (unspecified_fg, unspecified_bg): Remove unused declarations.
18054
180552007-11-29 Andreas Schwab <schwab@suse.de>
18056
18057 * keyboard.c (apply_modifiers): Fix typo.
18058
180592007-11-29 Richard Stallman <rms@gnu.org>
18060
18061 * keymap.c (Fcurrent_local_map): Doc fix.
18062
180632007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
18064
18065 * s/gnu-kfreebsd.h: New file.
18066
180672007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
18068
18069 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
18070 Don't cast redundantly.
18071
18072 * keyboard.c (KEY_TO_CHAR): New macro.
18073 (parse_modifiers, apply_modifiers): Accept integer arguments.
18074 (read_key_sequence): Use them to unify the "shift->unshift" mapping
18075 for chars and symbol keys.
18076 After doing such remapping, apply function-key-map again.
18077
180782007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
18079
18080 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
18081 compiled anymore.
18082
180832007-11-26 Andreas Schwab <schwab@suse.de>
18084
18085 * process.c (list_processes_1): Fix indentation level of the
18086 command column.
18087
180882007-11-23 Andreas Schwab <schwab@suse.de>
18089
18090 * editfns.c (Fformat): Handle %c specially since it requires the
18091 argument to be of type int.
18092
180932007-11-23 Markus Triska <markus.triska@gmx.at>
18094
18095 * emacs.c (main): Call init_editfns before init_process, since
18096 init_process sets Vprocess_connection_type depending on OS release.
18097
180982007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
18099
18100 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
18101 (find_symbol_value): Use do_symval_forwarding.
18102
18103 * data.c (set_internal): Set the value in the `cons-cell' (for
18104 Buffer_Local_values) not only for frame-local variables.
18105
181062007-11-22 Andreas Schwab <schwab@suse.de>
18107
18108 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
18109 values to sprintf.
18110 * keymap.c (Fsingle_key_description): Likewise.
18111 * print.c (print_object): Likewise.
18112
181132007-11-22 Jan Djärv <jan.h.d@swipnet.se>
18114
18115 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
18116 file for image is nil.
18117
181182007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
18119
18120 * term.c: Include stdarg.h.
18121 (fatal): Implement using varargs.
18122 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
18123
181242007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18125
18126 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
18127 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
18128 Update call to buffer_slot_type_mismatch.
18129 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
18130 (buffer_slot_type_mismatch): Update.
18131 * buffer.c (buffer_local_types): Remove.
18132 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
18133 (defvar_per_buffer): Set the type in the buffer_objfwd.
18134
181352007-11-21 Jason Rumney <jasonr@gnu.org>
18136
18137 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
18138 CreateFileMapping returns NULL on failure.
18139
181402007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18141
18142 * search.c (Fset_match_data): Remove the `evaporate' feature.
18143 (unwind_set_match_data): Don't use the `evaporate' feature.
18144
181452007-11-21 Jason Rumney <jasonr@gnu.org>
18146
18147 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
18148
18149 * w32console.c (w32con_write_glyphs): Remove unused variables.
18150
181512007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
18152
18153 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
18154
18155 * s/darwin.h (MULTI_KBOARD): Remove.
18156
18157 * macfns.c (x_create_tip_frame, Fx_create_frame)
18158 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
18159
181602007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
18161
18162 * buffer.c (Fbuffer_local_value): Remove redundant test.
18163 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
18164 than in `current-buffer' to match the comment.
18165 Do the swap using swap_in_global_binding.
18166
18167 * data.c (store_symval_forwarding, set_internal):
18168 * eval.c (specbind): Remove dead code.
18169
18170 * coding.c (detect_coding, Fupdate_coding_systems_internal):
18171 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
18172 Since we do not want to see internal Lisp_*fwd objects here.
18173
181742007-11-18 Jan Djärv <jan.h.d@swipnet.se>
18175
18176 * sysdep.c (init_system_name): Use getaddrinfo if available.
18177
18178 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
18179 (x_scroll_bar_note_movement): start, end, with, height in struct
18180 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
18181
181822007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
18183
18184 * puresize.h (BASE_PURESIZE): Increase to 1190000.
18185
181862007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
18187
18188 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
18189 This undoes Richard's change of 14-Oct-2002.
18190
18191 * alloc.c (allocate_other_vector):
18192 * lisp.h (allocate_other_vector): Remove.
18193
18194 * window.c (struct save_window_data): Move non-lisp data to the end
18195 and make it `int' rather than Lisp_Object.
18196 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
18197 Done wrap/unwrap integer values.
18198 (Fset_window_configuration, compare_window_configurations):
18199 Update use of fields to their new types.
18200
18201 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
18202 Turn integer fields into `int'. Merge x_window_low and x_window_high.
18203 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
18204 (SET_SCROLL_BAR_X_WINDOW): Remove.
18205 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
18206 Access the new x_window field directly.
18207 * xterm.c (x_scroll_bar_create): Use a pseudovector.
18208 Don't wrap/unwrap integers into Lisp_Objects.
18209 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
18210 (x_scroll_bar_report_motion):
18211 Don't wrap/unwrap integers into Lisp_Objects.
18212 (x_term_init): Use SDATA.
18213 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
18214 (x_scroll_bar_set_handle, x_scroll_bar_remove)
18215 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
18216 (x_scroll_bar_report_motion, x_scroll_bar_clear):
18217 * xfns.c (x_set_background_color):
18218 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
18219 Access the new x_window field directly.
18220
18221 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
18222 (allocate_pseudovector): Make non-static.
18223
18224 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
18225 (allocate_pseudovector): Declare.
18226 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
18227
182282007-11-15 Andreas Schwab <schwab@suse.de>
18229
18230 * editfns.c (Fformat): Correctly format EMACS_INT values.
18231 Also take precision into account when formatting an integer.
18232
18233 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18234
182352007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18236
18237 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18238 (syms_of_keyboard): Defsubr it.
18239
18240 * data.c (swap_in_global_binding): Fix longstanding bug where
18241 store_symval_forwarding was not called with the right second argument,
18242 thus causing objfwd-ing from being dropped.
18243
182442007-11-14 Juanma Barranquero <lekktu@gmail.com>
18245
18246 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18247 (Fx_display_pixel_height, Fx_display_planes)
18248 (Fx_display_color_cells, Fx_server_max_request_size)
18249 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18250 (Fx_display_visual_class, Fx_display_save_under):
18251 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18252 (Fx_display_pixel_height, Fx_display_planes)
18253 (Fx_display_color_cells, Fx_server_max_request_size)
18254 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18255 (Fx_display_mm_height, Fx_display_mm_width)
18256 (Fx_display_backing_store, Fx_display_visual_class)
18257 (Fw32_select_font, Fx_display_save_under):
18258 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18259 (Fx_display_pixel_height, Fx_display_planes)
18260 (Fx_display_color_cells, Fx_server_max_request_size)
18261 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18262 (Fx_display_save_under): Fix typos in docstrings.
18263
182642007-11-14 Juanma Barranquero <lekktu@gmail.com>
18265
18266 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18267 corresponding to deleted entries; they are an implementation detail.
18268 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18269 Remove variables.
18270 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18271 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18272 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18273 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18274 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18275 (Fw32_define_rgb_color, Fw32_load_color_file)
18276 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18277 Fix typos in docstrings.
18278 (Fx_server_version): Reflow docstring.
18279 (Fw32_shell_execute): Doc fixes.
18280
182812007-11-13 Juanma Barranquero <lekktu@gmail.com>
18282
18283 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18284 if w32_parse_hot_key returned nil.
18285
182862007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18287
18288 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18289
182902007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 18291
aac0c6e3
MR
18292 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18293
18294 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18295
18296 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18297 Remove W32_SCROLL_BAR_CLICK_EVENT.
18298
18299 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18300 Add MULTIMEDIA_KEY_EVENT.
18301
18302 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18303 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18304 (make_lispy_event) [WINDOWSNT]: Use it to translate
18305 MULTIMEDIA_KEY_EVENT.
18306
18307 * w32term.h (WM_APPCOMMAND): Define if not already.
18308 (GET_APPCOMMAND_LPARAM): Likewise.
18309
18310 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18311 WM_APPCOMMAND.
18312
18313 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18314 (syms_of_w32fns): Export and initialize it.
18315 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18316
183172007-11-09 Chong Yidong <cyd@stupidchicken.com>
18318
18319 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18320 twice.
18321
18322 * xdisp.c (handle_face_prop): Fix last change.
18323
183242007-11-09 Richard Stallman <rms@gnu.org>
18325
18326 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18327 not just for after-strings and before-strings.
18328 Call face_for_overlay_string and pass the overlay to it.
18329 (handle_display_prop): Determine whether property came from an overlay.
18330 Pass OVERLAY arg to handle_single_display_spec.
18331 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18332 (load_overlay_strings): Fill in it->string_overlays.
18333 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18334
18335 * xfaces.c (face_for_overlay_string): Function renamed from
18336 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18337
18338 * dispextern.h (struct it): New elt string_overlays.
18339 New elt from_overlay, also in stack.
18340 Rearrange a few elements.
18341 (face_for_overlay_string): Decl renamed from
18342 face_at_buffer_position_no_overlays, and add argument.
18343
183442007-11-09 Richard Stallman <rms@gnu.org>
18345
18346 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18347 to get the base face for an overlay string.
18348
18349 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18350
18351 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18352
18353 * xdisp.c (handle_stop): Move some code out of loop.
18354
183552007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18356
18357 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18358 Fix conversion from Lisp object to ATSUFontID.
18359
183602007-11-09 Jason Rumney <jasonr@gnu.org>
18361
18362 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18363
183642007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18365
18366 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18367 Don't assume regions are aligned to page boundary.
18368 (print_load_command_name): Add LC_UUID if defined.
18369
183702007-11-09 Richard Stallman <rms@gnu.org>
18371
18372 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18373
183742007-11-07 Jason Rumney <jasonr@gnu.org>
18375
18376 * s/windows95.h: Remove.
18377
183782007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18379
18380 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18381 abort with a message on unhandled store_type values.
18382
183832007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18384
18385 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18386 Remove HAVE_X11R5 and HAVE_X11R4.
18387
183882007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18389
18390 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18391
183922007-11-01 Johan Bockgård <bojohan@gnu.org>
18393
18394 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18395 Don't set s->stippled_p here, since it has already been set by
18396 x_set_glyph_string_gc from x_draw_glyph_string.
18397
183982007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18399
18400 * sunfns.c: Remove file.
18401
18402 * m/sun386.h:
18403 * m/sun2.h:
18404 * m/sparc.h: Remove Sun windows code.
18405
184062007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18407
18408 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18409 (init_keyboard): Set current_kboard's window-system to nil.
18410 (tty_read_avail_input): Typo.
18411 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18412
184132007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18414
18415 * s/usg5-4.h:
18416 * s/usg5-3.h:
18417 * s/ptx.h:
18418 * m/is386.h:
18419 * m/ibmps2-aix.h:
18420 * Makefile.in: Remove all mentions of X10.
18421
18422 * dispnew.c (syms_of_display): Don't mention version 10.
18423
184242007-10-28 Juanma Barranquero <lekktu@gmail.com>
18425
18426 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18427 ($(BLD)/abbrev.$(O)): Remove.
18428
184292007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18430
18431 Rewrite abbrev.c in Elisp.
18432 * image.c (Qcount): Don't declare as extern.
18433 (syms_of_image): Initialize and staticpro `Qcount'.
18434 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18435 * emacs.c (main): Don't call syms_of_abbrev.
18436 * Makefile.in (obj): Remove abbrev.o.
18437 (abbrev.o): Remove.
18438 * abbrev.c: Remove.
18439
184402007-10-26 Martin Rudalics <rudalics@gmx.at>
18441
18442 * window.c (window_min_size_2): Don't count header-line.
18443
184442007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18445
18446 * frame.h (struct frame): Move all bit fields after the first bit
18447 field to take advantage of the available space. Group all the
18448 chars together to reduce wasted space due to padding.
18449
184502007-10-26 Juanma Barranquero <lekktu@gmail.com>
18451
18452 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18453
18454 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18455 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18456 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18457 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18458 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18459 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18460 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18461 (last_marked, mark_object_loop_halt): Make static.
18462
18463 * frame.c (syms_of_frame) <delete-frame-functions>:
18464 Fix typo in docstring.
18465
184662007-10-25 Juanma Barranquero <lekktu@gmail.com>
18467
18468 * w32.c (init_environment): Fix tiny memory leak.
18469 (w32_get_resource): Remove unused variable `ok'.
18470
184712007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18472
18473 Make `window-system' into a keyboard-local variable (rather than
18474 frame-local as done originally by multi-tty).
18475
18476 * keyboard.h (struct kboard): Add Vwindow_system.
18477 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18478 (mark_kboards): Mark Vwindow_system.
18479
18480 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18481 (init_display): Don't set the obsolete `window-system' frame-param.
18482
18483 * xterm.c (x_term_init):
18484 * w32term.c (w32_create_terminal):
18485 * term.c (init_tty): Set Vwindow_system.
18486 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18487 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18488
18489 * xfns.c (Fx_create_frame, x_create_tip_frame):
18490 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18491 * macfns.c (Fx_create_frame):
18492 Don't set the obsolete `window-system' frame-param.
18493
18494 * frame.h (Qwindow_system): Remove.
18495 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18496 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18497
184982007-10-24 Richard Stallman <rms@gnu.org>
18499
18500 * frame.c (x_figure_window_size): For fullscreen case,
18501 set USPosition | PPosition without clobbering rest of window_prompting.
18502
18503 * keyboard.c (Fcurrent_idle_time): Doc fix.
18504
18505 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18506
185072007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18508
18509 * process.c (unwind_request_sigio): Only define if __ultrix__.
18510
18511 * callproc.c (child_setup): Remove spurious *.
18512
18513 * lisp.h (Fget_text_property): Declare.
18514 (have_menus_p): Declare it here rather than in sys-dep header files.
18515 * macterm.h (have_menus_p):
18516 * msdos.h (have_menus_p):
18517 * xterm.h (have_menus_p): Remove.
18518
18519 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18520 (Fmake_variable_frame_local): Just check the variable's const-ness
18521 rather than checking nil or t.
18522
185232007-10-22 Jason Rumney <jasonr@gnu.org>
18524
18525 * w32fns.c: Include math.h.
18526 (w32_abort): Declaration moved to nt/config.nt.
18527
18528 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18529 (abort): Redefinition moved to nt/config.nt.
18530
18531 * m/windowsnt.h: Remove.
18532
185332007-10-22 Juanma Barranquero <lekktu@gmail.com>
18534
18535 * emacs.c (Fdump_emacs): Fix typo in message.
18536 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18537 <installation-directory>: Reflow docstring.
18538
185392007-10-22 Juri Linkov <juri@jurta.org>
18540
18541 * minibuf.c: Allow minibuffer default to be a list of default values.
18542 With empty input use the first element of this list as returned default.
18543 (string_to_object)
18544 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18545 (read_minibuf): If defalt is cons, set histstring to its car.
18546 (Fread_string): If default_value is cons, set val to its car.
18547 (Fread_buffer): If def is cons, use its car.
18548 (Fcompleting_read): If defalt is cons, set val to its car.
18549
185502007-10-21 Michael Albinus <michael.albinus@gmx.de>
18551
18552 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18553
185542007-10-20 Juanma Barranquero <lekktu@gmail.com>
18555
18556 * doc.c (Fdocumentation): Check for advice in all cases.
18557
185582007-10-19 Chong Yidong <cyd@stupidchicken.com>
18559
18560 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18561
185622007-10-19 Richard Stallman <rms@gnu.org>
18563
18564 * doc.c (Fdocumentation): Check for and handle an advised function.
18565
185662007-10-19 Juanma Barranquero <lekktu@gmail.com>
18567
18568 * process.c (Fset_process_filter): Doc fix.
18569
185702007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18571
18572 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18573 which caused key-translation-map to applied repeatedly (thus breaking
18574 double-mode).
18575
185762007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18577
18578 * xselect.c (x_own_selection, x_handle_selection_clear)
18579 (x_clear_frame_selections):
18580 * w32menu.c (list_of_panes, list_of_items):
18581 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18582 * textprop.c (validate_plist, interval_has_all_properties)
18583 (interval_has_some_properties, interval_has_some_properties_list)
18584 (add_properties, text_property_list):
18585 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18586 * minibuf.c (Fassoc_string):
18587 * macselect.c (x_own_selection, x_clear_frame_selections)
18588 (Fx_disown_selection_internal):
18589 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18590 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18591
185922007-10-17 Chong Yidong <cyd@stupidchicken.com>
18593
18594 * process.c: Link to libs for calling res_init() if available.
18595 (Fmake_network_process): Call res_init() before getaddrinfo or
18596 gethostbyname, if possible.
18597
185982007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18599
18600 * lread.c (read1): Set pvectype for char_tables.
18601
18602 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18603 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18604 Add type checks.
18605 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18606
18607 * alloc.c (free_misc): Use XMISCTYPE.
18608 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18609
186102007-10-17 Glenn Morris <rgm@gnu.org>
18611
18612 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18613 (syms_of_minibuf): Add Qcompletion_ignore_case.
18614 * dired.c (Qcompletion_ignore_case): Change to external.
18615 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18616 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18617 (Fread_file_name): Use it rather than intern'ing.
18618
18619 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18620 (Fread_coding_system): Ignore case of user input.
18621
186222007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18623
18624 * xdisp.c (handle_display_prop): Ignore display specs after
18625 replacing one when string text is being replaced.
18626 (handle_single_display_spec): Pretend as if characters with display
18627 property haven't been consumed only when buffer text is being replaced.
18628
186292007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18630
18631 * xfns.c (Fx_create_frame, Fx_display_list):
18632 * window.c (window_fixed_size_p, enlarge_window)
18633 (shrink_window_lowest_first):
18634 * macterm.c (init_font_name_table):
18635 * macfns.c (Fx_create_frame, Fx_display_list):
18636 * lread.c (close_load_descs):
18637 * keyboard.c (read_char_x_menu_prompt):
18638 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18639 * coding.c (code_convert_region_unwind): Test the type of an object
18640 rather than just !NILP before extracting data from it.
18641
18642 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18643
18644 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18645 (XMISCANY): New macro.
18646 (XMISCTYPE): Use it.
18647 (struct Lisp_Misc_Any): New type.
18648 (union Lisp_Misc): Use it.
18649 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18650 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18651 (find_symbol_value, set_internal, default_value, Fset_default)
18652 (Fmake_variable_buffer_local, Fmake_local_variable)
18653 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18654 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18655 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18656 * alloc.c (allocate_buffer): Set the size and tag.
18657 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18658 Use XMISCANY.
18659 (die): Follow the GNU convention for error messages.
18660 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18661 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18662 tag any more.
18663 (set_buffer_internal_1):
18664 * frame.c (store_frame_param):
18665 * eval.c (specbind):
18666 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18667
18668 * doc.c (Fsnarf_documentation): Simplify.
18669
186702007-10-14 Juanma Barranquero <lekktu@gmail.com>
18671
18672 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18673 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18674
186752007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18676
18677 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18678
186792007-10-14 Juanma Barranquero <lekktu@gmail.com>
18680
18681 * eval.c (do_autoload): Don't save autoloads.
18682
18683 * data.c (Ffset): Save autoload of the function being set.
18684
186852007-10-07 John Paul Wallington <jpw@pobox.com>
18686
18687 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18688 parameter before setting up faces.
18689
186902007-10-13 Eli Zaretskii <eliz@gnu.org>
18691
18692 * ccl.c (Fregister_code_conversion_map):
18693 * keyboard.c (append_tool_bar_item): Reformat last change.
18694
18695 * lisp.h (eabs): Rename from `abs'. All callers changed.
18696
186972007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18698
18699 * buffer.c (add_overlay_mod_hooklist):
18700 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18701 * fontset.c (make_fontset):
18702 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18703 (append_tool_bar_item):
18704 * macmenu.c (grow_menu_items):
18705 * w32menu.c (grow_menu_items):
18706 * xmenu.c (grow_menu_items): Use larger_vector.
18707
187082007-10-13 Eli Zaretskii <eliz@gnu.org>
18709
18710 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18711 selected frame'' on MSDOS).
18712
187132007-10-12 Martin Rudalics <rudalics@gmx.at>
18714
18715 * frame.c (Qexplicit_name): New variable.
18716 (x_report_frame_params): Report it in parameter alist.
18717 (syms_of_frame): Intern and staticpro it.
18718
187192007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18720
18721 * macfns.c (x_create_tip_frame): Set terminal for frame.
18722
187232007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18724
18725 * frame.c (Qenvironment): Remove.
18726 (syms_of_frame) <Qenvironment>: Don't initialize.
18727 (Fdelete_frame): Don't treat the `environment' param specially.
18728 * frame.h (Qenvironment): Don't declare.
18729 * callproc.c (set_initial_environment): Don't set unused frame param.
18730
18731 * frame.c (Fframe_with_environment): Remove.
18732 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18733
18734 * lisp.h (Fframe_with_environment): Don't declare.
18735
187362007-10-10 Juanma Barranquero <lekktu@gmail.com>
18737
18738 * indent.c (indent_tabs_mode, last_known_column)
18739 (last_known_column_modified): Make static.
18740 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18741
187422007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18743
18744 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18745
187462007-10-09 Jason Rumney <jasonr@gnu.org>
18747
18748 * w32term.c (x_set_window_size): Disable code that attempts to tell
18749 Lisp code about a size change before it actually happens.
18750
187512007-10-09 Richard Stallman <rms@gnu.org>
18752
18753 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18754 return HANDLED_RETURN.
18755
187562007-10-08 Martin Rudalics <rudalics@gmx.at>
18757
18758 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18759 when there's an unread command event.
18760
18761 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18762 window autoselection act appropriately when leaving selected frame.
18763 (syms_of_frame): Initialize focus_follows_mouse.
18764 * frame.h (focus_follows_mouse): Extern it.
18765 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18766 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18767 * msdos.c (dos_rawgetc): Likewise.
18768 * w32term.c (w32_read_socket): Likewise.
18769 * xterm.c (handle_one_xevent): Likewise.
18770 * xdisp.c (syms_of_xdisp): In doc-string of
18771 mouse-autoselect-window mention focus-follows-mouse.
18772
187732007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18774
18775 * macterm.c (mac_load_query_font): Fix missing return value.
18776 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18777 Add BLOCK_INPUT.
18778
187792007-10-08 Richard Stallman <rms@gnu.org>
18780
18781 * xdisp.c (get_window_cursor_type): Implement documented behavior
18782 for cursor-in-non-selected-windows = t.
18783
187842007-10-08 Jason Rumney <jasonr@gnu.org>
18785
18786 * w32.c (w32_get_resource): Always close registry keys.
18787
187882007-10-08 Jason Rumney <jasonr@gnu.org>
18789
18790 * makefile.w32-in (LIBS): Add COMCTL32.
18791
18792 * w32fns.c (globals_of_w32fns): Init common controls.
18793
187942007-10-08 Richard Stallman <rms@gnu.org>
18795
18796 * image.c (our_memory_buffer): Rename from omfib_buffer.
18797
187982007-10-08 Richard Stallman <rms@gnu.org>
18799
18800 * buffer.c (Foverlays_at): Doc fix.
18801
188022007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18803
18804 * fns.c (Fplist_put): Preserve uneven tail data.
18805
188062007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18807
18808 * termhooks.h (enum event_kind): Remove trailing comma.
18809
18810 * frame.h (enum): Remove trailing comma.
18811
188122007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18813
18814 * w32proc.c (delete_child): Don't terminate threads of zombies.
18815
188162007-10-08 Martin Rudalics <rudalics@gmx.at>
18817
18818 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18819
18820 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18821 last-repeatable-command.
18822 (init_kboard): Initialize Vlast_repeatable_command.
18823 (command_loop_1): Set it to real_this_command unless that was
18824 bound to an input event.
18825 (mark_kboards): Mark it.
18826
188272007-10-08 Richard Stallman <rms@gnu.org>
18828
18829 * eval.c (condition-case): Doc fix.
18830
188312007-10-08 Masatake YAMATO <jet@gyve.org>
18832
18833 * xfaces.c (tty_supports_face_attributes_p): Fix code
18834 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18835 was copied and not edited.
18836
188372007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
18838
18839 Add new `input-decode-map' keymap and use it for terminal
18840 escape sequences.
18841 * keyboard.h (struct kboard): Add Vinput_decode_map.
18842 Remove Vlocal_key_translation_map.
18843 * keyboard.c (read_key_sequence): Add support for input-decode-map.
18844 (init_kboard): Init input-decode-map.
18845 Replace local-key-translation-map back with key-translation-map.
18846 (syms_of_keyboard): Declare input-decode-map.
18847 Remove local-key-translation-map. Update docstrings.
18848 (mark_kboards): Mark Vinput_decode_map.
18849 Don't mark Vlocal_key_translation_map.
18850 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
18851 Replace local-key-translation-map back with key-translation-map.
18852 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
18853 Bind in input-decode-map rather than function-key-map.
18854
18855 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
18856 This was made redundant by the previous introduction of XSETPVECTYPE.
18857
188582007-10-09 Richard Stallman <rms@gnu.org>
18859
18860 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
18861
188622007-09-29 Richard Stallman <rms@gnu.org>
18863
18864 * eval.c (internal_condition_case_2, internal_condition_case_1)
18865 (internal_condition_case): Reenable abort if x_catching_errors ()
18866 to see if that really happens and why.
18867
188682007-10-06 Andreas Schwab <schwab@suse.de>
18869
18870 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
18871
188722007-10-04 Juanma Barranquero <lekktu@gmail.com>
18873
18874 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
18875
188762007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
18877
18878 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
18879
188802007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
18881
18882 * window.h (struct window):
18883 * window.c (struct save_window_data, struct saved_window):
18884 * termhooks.h (struct terminal):
18885 * process.h (struct Lisp_Process):
18886 * frame.h (struct frame):
18887 * buffer.h (struct buffer):
18888 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
18889 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
18890 The size field of (pseudo)vectors is now unsigned.
18891 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
18892
18893 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
18894 Turn `count' into an integer.
18895
18896 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
18897 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
18898 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
18899 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
18900 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
18901
18902 * alloc.c (allocate_pseudovector): New fun.
18903 (ALLOCATE_PSEUDOVECTOR): New macro.
18904 (allocate_window, allocate_terminal, allocate_frame)
18905 (allocate_process): Use it.
18906 (mark_vectorlike): New function.
18907 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
18908 (mark_terminals): Use it.
18909 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
18910 (Fmake_byte_code): Use XSETPVECTYPE.
18911
18912 * frame.c (Fframe_parameters): Minor simplification.
18913
18914 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
18915
18916 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
18917
18918 * buffer.c (Fget_buffer_create, init_buffer_once):
18919 * lread.c (defsubr):
18920 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
18921
18922 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
18923 defined differently in the m/*.h files.
18924 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
18925 (XSETPVECTYPE): New macro.
18926 (XSETPSEUDOVECTOR): Use it.
18927
18928 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
18929 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
18930
18931 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
18932 * lread.c (defvar_per_buffer):
18933 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
18934
18935 * window.c (candidate_window_p): Only consider as visible frames that
18936 are on the same terminal.
18937
18938 * m/ibms390x.h (MARKBIT): Remove unused macro.
18939
189402007-10-01 Juanma Barranquero <lekktu@gmail.com>
18941
18942 * lread.c (Fload): Fix typo in docstring.
18943
189442007-10-01 Michaël Cadilhac <michael@cadilhac.name>
18945
18946 * floatfns.c (Fexpt): Manually check for overflows, so that a power
18947 of a non-zero value can't yield zero.
18948
189492007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
18950
18951 * term.c (term_clear_mouse_face, term_mouse_highlight)
18952 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
18953
18954 * print.c (safe_debug_print): Use XHASH.
18955
18956 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
18957 Lisp elements such as tags.
18958 (XHASH): New macro.
18959 (EQ): Use it.
18960 (SREF, SSET, STRING_COPYIN): Use SDATA.
18961 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
18962
18963 * alloc.c (mark_terminal): Remove left-over declaration.
18964 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
18965 (allocate_vectorlike): Remove type argument. Adjust callers.
18966 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
18967 Only handle the one remaining MEM_TYPE_VECTORLIKE.
18968
18969 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
18970 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
18971 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
18972 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
18973 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
18974 Use them.
18975
18976 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
18977 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
18978 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
18979
189802007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
18981
18982 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
18983 loaded by default.
18984
189852007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
18986
18987 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
18988 on this tty.
18989 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
18990
18991 * term.c (mouse_face_window): Rename from Qmouse_face_window.
18992 Update all users.
18993 (handle_one_term_event): Use Gpm_DrawPointer.
18994 (Fgpm_mouse_start): Rename from Fterm_open_connection.
18995 Signal errors instead of returning nil. Always return nil.
18996 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
18997 Make it a noop if gpm-mouse was not activated.
18998 (syms_of_term): Update names.
18999
190002007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
19001
19002 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
19003 (init_sys_modes): Check that gpm_tty is the current tty.
19004
19005 * alloc.c (allocate_terminal): Set the vector size to only count the
19006 lisp fields. Initialize those to nil.
19007 (mark_object): Don't treat terminals specially.
19008 (mark_terminal): Remove.
19009 (mark_terminals): Use mark_object instead.
19010
19011 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
19012 the GC to the beginning.
19013
19014 * indent.h:
19015 * indent.c: Use EMACS_INT for ints coming from Elisp data.
19016
19017 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
19018
190192007-09-25 Jason Rumney <jasonr@gnu.org>
19020
19021 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
19022
19023 * w32console.c (create_w32cons_output): Remove.
19024
19025 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
19026
19027 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
19028 (reset_sys_modes): Use reset_terminal_modes_hook.
19029
190302007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
19031
19032 * eval.c (do_autoload): Don't output any message.
19033
190342007-09-24 Juri Linkov <juri@jurta.org>
19035
19036 * emacs.c (standard_args): Change priority of "--no-splash"
19037 from 40 to 3. Add "--no-desktop" with the same priority.
19038
190392007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
19040
19041 * alloc.c (gc_sweep): Check cons cell mark bits word by word
19042 and optimize the case where they are all 1.
19043
190442007-09-23 Johannes Weiner <hannes@saeurebad.de>
19045
19046 * lisp.h (abs): Define if not defined.
19047 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
19048 Don't define `abs', since it's defined in lisp.h.
19049
190502007-09-22 Eli Zaretskii <eliz@gnu.org>
19051
19052 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
19053 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
19054 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
19055 (init_tty): Use DEV_TTY instead of "/dev/tty".
19056 [WINDOWSNT]: No need to protect from NAME arg being null.
19057
190582007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
19059
19060 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
19061 up the tty state.
19062
190632007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19064
19065 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
19066 (gpm_tty): Change its type.
19067 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
19068 (gpm_tty): Change its type and initialize it.
19069 (Fterm_open_connection): Check the frame is indeed a tty.
19070 Use the new gpm_tty.
19071 (Fterm_close_connection): Use the new gpm_tty.
19072 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
19073 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
19074
190752007-09-21 Juanma Barranquero <lekktu@gmail.com>
19076
19077 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
19078 underline_color, to draw strike-through.
19079
190802007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19081
19082 * lisp.h (allocate_terminal): Declare.
19083
19084 * window.c (candidate_window_p): Consider frames that are being placed
19085 by the user as somewhere between visible and iconified.
19086 (window_loop): Prefer windows on the current frame.
19087 (Fselect_window): Move the use of select-frame to the beginning so we
19088 can just delegate all the work (it'll call us back anyway).
19089
19090 * frame.c (Qdisplay_environment_variable):
19091 * frame.h (Qdisplay_environment_variable): Delete.
19092
19093 * .gdbinit (xbacktrace): Print the arg's address rather than the value
19094 of the first arg, since that value may be a union.
19095
19096 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
19097 parameter rather than Qdisplay_environment_variable. If all else
19098 fails, look for DISPLAY in initial-environment.
19099
191002007-09-21 Glenn Morris <rgm@gnu.org>
19101
19102 * Makefile.in (emacstool): Remove target.
19103 (lisp, shortlisp): Remove termdev.elc.
19104
191052007-09-21 Markus Triska <markus.triska@gmx.at>
19106
19107 * xterm.c (x_delete_display): Compile session management conditionally.
19108
191092007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
19110
19111 * callproc.c (getenv_internal_1): New function.
19112 (getenv_internal): Use it.
19113 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
19114
19115 * terminal.c (get_terminal): Don't accept ints to represent terminals.
19116 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
19117 (Fset_terminal_parameter): Work with dead terminals as well.
19118 (Fmodify_terminal_parameters): Remove.
19119
19120 * terminal.c (get_terminal): Handle terminals.
19121 Make sure the terminal returned is live.
19122 (create_terminal): Use allocate_terminal.
19123 (mark_terminals): Move to alloc.c.
19124 (delete_terminal): Use terminal->name as liveness status.
19125 NULL out fields after freeing their contents.
19126 Don't deallocate the object.
19127 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
19128 rather than an int.
19129 (Fterminal_live_p): Accept non-integer arguments.
19130 (Fterminal_list): Return terminal objects rather than an ints.
19131
19132 * alloc.c (enum mem_type): New member for `terminal' objects.
19133 (allocate_terminal): New function.
19134 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
19135 Handle terminals.
19136 (mark_terminal): New fun.
19137 (mark_terminals): Move from terminal.c.
19138
19139 * term.c (get_tty_terminal): Don't treat output_initial specially.
19140 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
19141 (delete_tty): Use terminal->name as liveness status.
19142
19143 * termhooks.h (struct terminal): Make it into a pseudovector.
19144 Remove `deleted' replaced by checking `name's nullness.
19145
19146 * print.c (print_object): Handle terminals.
19147
19148 * lisp.h (enum pvec_type): New `terminal' pseudovector.
19149 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
19150
19151 * frame.c (make_terminal_frame):
19152 * keyboard.c (tty_read_avail_input):
19153 * w32term.c (x_delete_terminal):
19154 * xfns.c (Fx_create_frame, x_create_tip_frame):
19155 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
19156
191572007-09-20 Glenn Morris <rgm@gnu.org>
19158
19159 * process.c (Fmake_network_process): Doc fix.
19160
191612007-09-19 Jason Rumney <jasonr@gnu.org>
19162
19163 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
19164
191652007-09-19 Michaël Cadilhac <michael@cadilhac.name>
19166
19167 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
19168 Fix a C warning regarding variable constness.
19169
19170 * xterm.c (handle_one_xevent): Fix a C warning.
19171
191722007-09-18 Jason Rumney <jasonr@gnu.org>
19173
19174 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
19175
191762007-09-17 Jan Djärv <jan.h.d@swipnet.se>
19177
19178 * gtkutil.c (gdpy_def): New variable.
19179 (xg_initialize): Initialize gdpy_def.
19180 (xg_display_close): If no other display exists, set gdpy_def to a
19181 new connection.
19182
191832007-09-16 Jan Djärv <jan.h.d@swipnet.se>
19184
19185 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
19186 when we have no file name for the icon.
19187 (xg_tool_bar_expose_callback): Remove.
19188 (xg_create_tool_bar): Don't connect expose signal to
19189 xg_tool_bar_expose_callback.
19190 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
19191
191922007-09-16 Andreas Schwab <schwab@suse.de>
19193
19194 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
19195 values instead of zapping them.
19196
191972007-09-14 Glenn Morris <rgm@gnu.org>
19198
19199 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
19200 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
19201 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
19202 scope and rename to omfib_buffer for clarity.
19203 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
19204
192052007-09-14 Kenichi Handa <handa@m17n.org>
19206
19207 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
19208
192092007-09-13 Jason Rumney <jasonr@gnu.org>
19210
19211 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
19212
19213 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
19214
19215 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
19216 (mac_term_init): Call here instead, passing rif.
19217
192182007-09-13 Glenn Morris <rgm@gnu.org>
19219
19220 * s/hpux.h: No longer define `static' as nothing.
19221
192222007-09-13 Johan Bockgård <bojohan@gnu.org>
19223
19224 * callint.c (Fcall_interactively): Remove unused var `fun'.
19225
192262007-09-12 Romain Francoise <romain@orebokech.com>
19227
19228 * window.c (prefer_window_split_horizontally, display_buffer):
19229 Revert 2007-09-08 change.
19230
192312007-09-12 Glenn Morris <rgm@gnu.org>
19232
19233 * alloca.c: Remove file.
19234 * Makefile.in (alloca): Do not undef.
19235 (allocaobj, alloca.o): Remove.
19236 (otherobj): Remove allocaobj.
19237 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19238 * regex.c (C_ALLOCA): Remove all references and code that was only
19239 used when this was defined.
19240 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19241 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19242 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19243
19244 * Makefile.in (SOURCES, unlock, relock): Delete.
19245
19246 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19247 (menu_grab_callback): All uses changed.
19248
19249 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19250 (x_reply_selection_request): All uses changed.
19251
192522007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19253
19254 * lread.c (load_warn_old_style_backquotes): Change message to look
19255 better when it appears in the middle of byte-compiler messages.
19256
192572007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19258
19259 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19260
19261 * xterm.c (x_create_terminal): Add comment.
19262
19263 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19264
192652007-09-10 Richard Stallman <rms@gnu.org>
19266
19267 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19268
192692007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19270
19271 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19272 (DEFUN): Document `intspec', use it instead of `prompt'.
19273
19274 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19275
19276 * data.c (Finteractive_form): If the interactive specification starts
19277 with a `(', use it as a Lisp form.
19278
19279 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19280 name and file modes.
19281
19282 * callint.c (Fcall_interactively): Comment fixes.
19283
192842007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19285
19286 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19287 and compiled functions.
19288
192892007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19290
19291 * window.c (prefer_window_split_horizontally): New variable.
19292 (display_buffer): Consider splitting window horizontally depending
19293 on prefer_window_split_horizontally.
19294
192952007-09-08 Eli Zaretskii <eliz@gnu.org>
19296
19297 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19298
192992007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19300
19301 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19302
19303 * frame.c (x_set_frame_parameters): Check number is positive before
19304 using XFASTINT.
19305
19306 * window.c (freeze_window_start): Don't presume selected_window holds
19307 a window object.
19308 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19309
193102007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19311
19312 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19313
193142007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19315
19316 * window.c (Vsplit_window_preferred_function): New var.
19317 (Fdisplay_buffer): Use it.
19318 (syms_of_window): Export, and initialize it.
19319
193202007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19321
19322 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19323
193242007-09-06 Glenn Morris <rgm@gnu.org>
19325
19326 * gtkutil.c (menu_grab_callback) <cnt>:
19327 * xselect.c (x_reply_selection_request) <cnt>: Move static
19328 variable to file scope.
19329
193302007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19331
19332 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19333 consistent values of selected_frame and selected_window.
19334
193352007-09-04 Jason Rumney <jasonr@gnu.org>
19336
19337 * w32console.c (initialize_w32_display): Zero unused hooks.
19338
193392007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19340
19341 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19342 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19343
193442007-09-04 Jason Rumney <jasonr@gnu.org>
19345
19346 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19347 in w32console.c. Set up input. Remove XXX comments that have been
19348 confirmed as correct.
19349
19350 * s/ms-w32.h (MULTI_KBOARD): Define.
19351
19352 * w32console.c (one_and_only_w32cons): Remove.
19353 (initialize_w32_display): Take terminal argument.
19354
19355 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19356 initialize_w32_display.
19357 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19358
19359 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19360
19361 * keyboard.c (discard_mouse_events): Discard it.
19362 (make_lispy_event): Translate it to a lisp event.
19363 (lispy_wheel_names): Add wheel-left and right events.
19364 (syms_of_keyboard): Enlarge wheel_syms.
19365
19366 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19367 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19368
19369 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19370
19371 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19372 from WM_MOUSEHWHEEL.
19373 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19374
19375 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19376 terminal.
19377
19378 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19379 keyboard for the terminal.
19380
193812007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19382
19383 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19384 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19385 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19386 and resume-tty-function to resume-tty-hook.
19387 (Fsuspend_tty, Fresume_tty): Use new names.
19388
193892007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19390
19391 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19392 if it starts with "n:".
19393
193942007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19395
19396 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19397
193982007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19399
19400 * frame.h:
19401 * frame.c (Qterm_environment_variable): Remove.
19402 (syms_of_frame): Don't init and staticpro it.
19403
19404 * callproc.c (getenv_internal): Remove special case for $TERM.
19405
19406 * callproc.c (Vinitial_environment): New variable.
19407 (set_initial_environment): Initialize it.
19408 (syms_of_callproc): Declare it.
19409 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19410 TERM under which a process runs is never related to the TERM in which
19411 Emacs is running.
19412
194132007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19414
19415 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19416 * s/darwin.h: ... do it here.
19417
194182007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19419
19420 * lisp.h (set_initial_environment): Rename from set_global_environment.
19421
19422 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19423 removed by mistake on the multi-tty branch.
19424
19425 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19426 (Fmodify_frame_parameters): Return a value.
19427
19428 * image.c (png_load): Comment-out var only used in commented-out code.
19429
19430 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19431 before passing it to mark_object.
19432
19433 * xfaces.c (internal_resolve_face_name): Return a value.
19434 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19435
19436 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19437 (x_icon): Comment-out var only used in commented-out code.
19438
194392007-08-29 Romain Francoise <romain@orebokech.com>
19440
19441 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19442 QUIT hasn't been provided.
19443
194442007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19445
19446 * callproc.c (child_setup, getenv_internal): Use the
19447 display-environment-variable and term-environment-variable frame params.
19448 (set_initial_environment): Initialise Vprocess_environment.
19449
19450 * config.in: Disable multi-keyboard support on a mac.
19451
19452 * frame.c (Qterm_environment_variable)
19453 (Qdisplay_environment_variable): New variables.
19454 (syms_of_frame): Intern and staticpro them.
19455 (Fmake_terminal_frame): Disable output method test.
19456
19457 * frame.h: Declare them here.
19458
19459 * macfns.c (x_set_mouse_color): Get rif from the frame.
19460 (x_set_tool_bar_lines): Don't use updating_frame.
19461 (mac_window): Add 2 new parameters for consistency with other systems.
19462 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19463 frame parameters following what is done in X11 and w32. Don't use
19464 FRAME_MAC_DISPLAY_INFO.
19465 (Fx_open_connection, start_hourglass): Remove window-system check.
19466 (x_create_tip_frame): Get the keyboard from the terminal.
19467
19468 * macmenu.c: Reorder includes.
19469 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19470
19471 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19472 terminal parameter.
19473 (x_clear_frame): Add a frame parameter.
19474 (note_mouse_movement): Get rif from the frame.
19475 (mac_term_init): Initialize the terminal.
19476 (mac_initialize): Make static and move terminal initialization ...
19477 (mac_create_terminal): ... to this new function.
19478
19479 * macterm.h (struct mac_display_info): Add terminal.
19480 (mac_initialize): Delete declaration.
19481
19482 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19483
19484 * sysdep.c: Comment out text after #endif.
19485
19486 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19487 is defined. Better initialize ttys in windows. Use terminal
19488 specific mouse_position_hook.
19489
19490 * termhooks.h (union display_info): Add mac_display_info.
19491
19492 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19493 Set the default minibuffer frame, window_system and the rest of the
19494 frame parameters following what is done in X11.
19495
19496 * w32term.c (w32_initialize): Make static.
19497
19498 * xselect.c (x_handle_selection_clear): Only access
19499 terminal->kboard when MULTI_KBOARD is defined.
19500
19501 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19502 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19503
195042007-08-29 Jason Rumney <jasonr@gnu.org>
19505
19506 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19507 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19508
19509 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19510 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19511
19512 * keyboard.c (restore_kboard_configuration): Only define when
19513 MULTI_KBOARD defined.
19514
19515 * makefile.w32-in: Update dependancies from Makefile.in.
19516 (OBJ1): Add terminal.$(O)
19517
19518 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19519 Don't define function body.
19520 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19521
19522 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19523
19524 * w32.c (request_sigio, unrequest_sigio): Remove.
19525
19526 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19527 (w32con_clear_frame, w32con_clear_end_of_line)
19528 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19529 (w32con_delete_glyphs, w32con_set_terminal_window)
19530 (scroll_line, w32_sys_ring_bell): Add frame arg.
19531 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19532 Add terminal arg.
19533 (PICK_FRAME): Remove.
19534 (w32con_write_glyphs): Use frame specific terminal coding.
19535 (one_and_only_w32cons): New global variable.
19536 (initialize_w32_display): Use it for storing hooks.
19537 (create_w32cons_output): New function.
19538
19539 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19540 arg a frame.
19541
19542 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19543 Set window_system.
19544 (x_set_tool_bar_lines): Don't use updating_frame.
19545 (Fx_create_frame): Set terminal and ref count.
19546 (Fx_open_connection): Remove window-system check.
19547
19548 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19549
19550 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19551 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19552 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19553 Add frame arg.
19554 (x_delete_terminal, w32_create_terminal): New functions.
19555 (w32_term_init): Create a terminal.
19556 (w32_initialize): Move terminal specific initialization to
19557 w32_create_terminal.
19558
19559 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19560 (w32_clear_rect, w32_clear_area): Use background from frame.
19561 (w32_display_info): Add terminal.
19562 (w32_sys_ring_bell, x_delete_display): Declare here.
19563
19564 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19565
19566 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19567
195682007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19569
19570 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19571 Fix get_named_tty calls for the controlling tty.
19572
195732007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19574
19575 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19576
195772007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19578
19579 * term.c (tty_insert_glyphs): Add missing first parameter.
19580
195812007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19582
19583 * buffer.c (Fbuffer_list, Fbury_buffer):
19584 Take frame->buried_buffer_list into account.
19585
19586 * cm.c (current_tty): New variable, for cmputc().
19587 (cmputc): Use it.
19588 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19589 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19590 (cmgoto): Add tty parameter. Pass it on to calccost().
19591 Use emacs_tputs() instead of tputs().
19592
19593 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19594 tputs().
19595 (current_tty): New variable, for cmputc().
19596 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19597
19598 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19599 (internal_condition_case, internal_condition_case_1)
19600 (internal_condition_case_2): Don't abort when x_catching_errors.
19601
19602 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19603 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19604 prevent crashes caused by bogus longjmps in read_char.
19605
19606 * keymap.h (Fset_keymap_parent): Add EXFUN.
19607
19608 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19609 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19610 Remove redundant definition.
19611
19612 * macfns.c (x_set_mouse_color, x_make_gc):
19613 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19614
19615 * w32term.c (x_free_frame_resources):
19616 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19617 (w32_initialize): Use the accessor macros for terminal characteristics.
19618
19619 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19620 Use the accessor macros for terminal characteristics.
19621 * msdos.c (internal_terminal_init): Use the accessor macros for
19622 terminal characteristics.
19623 (ScreenVisualBell, internal_terminal_init):
19624 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19625
19626 * termopts.h (no_redraw_on_reenter): Declare.
19627
19628 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19629 (mark_terminals, mark_ttys): Declare.
19630 (Fgarbage_collect): Call them.
19631 (mark_object): Mark buried_buffer_list.
19632
19633 * prefix-args.c: Include stdlib.h for exit.
19634
19635 * syssignal.h: Add comment.
19636
19637 * indent.c: Include stdio.h.
19638
19639 * window.h (Vinitial_window_system): Declare.
19640 (Vwindow_system): Delete declaration.
19641
19642 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19643
19644 * image.c (lookup_image): Don't initialize `c' until the xasserts
19645 have been run.
19646
19647 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19648 FRAME_FOREGROUND_PIXEL.
19649
19650 * print.c (print_preprocess): Don't lose print_depth levels while
19651 iterating.
19652
19653 * widget.c (update_from_various_frame_slots):
19654 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19655
19656 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19657 frames.
19658 (window_internal_height): Remove bogus make_number call.
19659 (init_window_once): Call make_terminal_frame with two zero parameters.
19660
19661 * fileio.c (Fread_file_name): Update comment.
19662
19663 * callint.c (Fcall_interactively):
19664 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19665 Make sure it is correctly unwound.
19666
19667 * xsmfns.c (x_session_close): New function.
19668
19669 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19670 Delete declarations.
19671
19672 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19673 (x_output): Remove background_pixel and foreground_pixel fields.
19674 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19675 (x_delete_device, x_session_close): Declare.
19676
19677 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19678 (read_filtered_event): Call `read_char' with a local
19679 `wrong_kboard_jmpbuf'.
19680
19681 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19682 Don't call single_kboard_state. Use FRAME_RIF.
19683
19684 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19685 systems.
19686
19687 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19688 (Fframe_with_environment, Fset_input_meta_mode)
19689 (Fset_quit_char): EXFUN.
19690 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19691 (init_sys_modes, reset_sys_modes): Update prototypes.
19692 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19693
19694 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19695 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19696 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19697 Delete declarations.
19698 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19699 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19700 New declarations.
19701
19702 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19703 already does that during init_display(). Call syms_of_keymap
19704 before syms_of_keyboard. Call `syms_of_terminal'.
19705 Call set_initial_environment, not set_process_environment.
19706 (shut_down_emacs): Call reset_all_sys_modes() instead of
19707 reset_sys_modes().
19708
19709 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19710 (internal_resolve_face_name, resolve_face_name_error): New functions.
19711 (resolve_face_name): Protect against loops and errors thrown by Fget.
19712 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19713 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19714
19715 * scroll.c: Replace CURTTY() with local variables throughout the
19716 file (where applicable).
19717 (calculate_scrolling, calculate_direct_scrolling)
19718 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19719 characteristics.
19720
19721 * keymap.c (Vfunction_key_map): Remove.
19722 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19723 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19724 (Vkey_translation_map): Remove.
19725 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19726 (Fdescribe_buffer_bindings)
19727 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19728 Update for terminal-local key-translation-map.
19729
19730 * Makefile.in (callproc.o): Update dependencies.
19731 (lisp, shortlisp): Add termdev.elc.
19732 (obj): Add terminal.o.
19733 (terminal.o): Add dependencies.
19734 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19735 (data.o, fns.o): Add termhooks.h dependency.
19736 (SOME_MACHINE_LISP): Add dnd.elc.
19737 (minibuf.o): Fix typo.
19738 Update dependencies.
19739
19740 * data.c (do_symval_forwarding, store_symval_forwarding)
19741 (find_symbol_value): Use the selected frame's keyboard, not
19742 current_kboard.
19743
19744 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19745 Vwindow_system.
19746
19747 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19748 Fmenu_bar_open.
19749 (syms_of_xmenu): Update defsubr.
19750 (mouse_position_for_popup, Fx_popup_menu)
19751 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19752 (set_frame_menubar, free_frame_menubar)
b97439ce 19753 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
19754 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19755 an X frame.
19756
19757 * xselect.c (x_own_selection): Abort if not an X frame.
19758 (some_frame_on_display): Check if it is an X frame.
19759 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19760
19761 * coding.c: Include frame.h and termhooks.h.
19762 (terminal_coding, keyboard_coding): Delete.
19763 (Fset_terminal_coding_system_internal)
19764 (Fset_keyboard_coding_system_internal)
19765 (Fkeyboard_coding_system)
19766 (Fterminal_coding_system): Add a terminal parameter.
19767 Get terminal_coding from the terminal.
19768 (init_coding_once): Don't call setup_coding_system here.
19769
19770 * dispextern.h (set_scroll_region, turn_off_insert)
19771 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19772 (tty_clear_end_of_line, tty_setup_colors)
19773 (delete_tty, updating_frame)
19774 (produce_special_glyphs, produce_glyphs, write_glyphs)
19775 (insert_glyphs): Remove.
19776 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19777 (tty_turn_off_highlight, get_tty_size): Add declaration.
19778 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19779
19780 * frame.h (enum output_method): Add output_initial.
19781 (struct x_output): Delete.
19782 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19783 Access foreground_pixel and background_pixel directly from the frame.
19784 (tty_display): Delete.
19785 (struct frame): Add buried_buffer_list, foreground_pixel,
19786 background_pixel and terminal. Delete kboard.
19787 (union output_data): Add tty.
19788 (FRAME_KBOARD): Get the kboard from the terminal.
19789 (FRAME_INITIAL_P): New macro.
19790 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19791 (Qterm_environment_variable, Qdisplay_environment_variable)
19792 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19793 New declarations.
19794
19795 * termchar.h (tty_output, tty_display_info): New structures.
19796 (tty_list): Declare.
19797 (FRAME_TTY, CURTTY): New macros.
19798 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19799 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19800 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19801 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19802
19803 * callproc.c: Include frame.h and termhooks.h, for terminal
19804 parameters.
19805 (add_env): New function.
19806 (child_setup): Use it.
19807 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19808 (getenv_internal): Fix get_terminal_param call.
19809 (Fgetenv_internal, egetenv): Update doc.
19810 (syms_of_callproc): Initialize Vprocess_environment to nil.
19811 Register and initialize them. Remove obsolete defvars. Update doc
19812 strings.
19813 (child_setup): Handle Vlocal_environment_variables.
19814 (getenv_internal): Add terminal parameter.
19815 Handle Vlocal_environment_variables.
19816 (Fgetenv_internal): Add terminal parameter.
19817 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19818 environment in a frame (not terminal) parameter. Update doc strings.
19819 (set_initial_environment): Rename from set_global_environment.
19820 Store Emacs environment in initial frame parameter.
19821
19822 * xdisp.c (redisplay_internal): Update references to
19823 `previous_terminal_frame'.
19824 (display_mode_line, Fformat_mode_line): Replace calls to
19825 `push_frame_kboard' with `push_kboard'.
19826 (get_glyph_string_clip_rects): Add extra parentheses and
19827 braces to prevent compiler warnings.
19828 (calc_pixel_width_or_height): Add xassert to check that the
19829 frame is alive. Don't call `lookup_image' on a termcap frame.
19830 (message2_nolog, message3_nolog, redisplay_internal)
19831 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19832 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19833 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19834 (Fx_display_pixel_width, Fx_display_pixel_height)
19835 (Fx_display_planes, Fx_display_color_cells)
19836 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19837 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
19838 (Fx_display_backing_store, Fx_display_visual_class)
19839 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
19840 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
19841
19842 * xfns.c (x_set_foreground_color x_set_background_color)
19843 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
19844 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19845 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
19846 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
19847 terminal that is being deleted.
19848 (Fx_create_frame): Use `store_frame_param' to set `window-system'
19849 frame parameter, and make sure it overrides any user-supplied setting.
19850 (Fx_close_connection, Fx_synchronize): Unify argument names with
19851 the rest of the DEFUNs.
19852
19853 * dispnew.c (Fsend_string_to_terminal): Update call to
19854 `get_tty_terminal'.
19855 (Fredraw_frame, Fsend_string_to_terminal)
19856 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
19857 FRAME_TERMCAP_P and FRAME_TTY.
19858 (window_change_signal): Don't believe width/height values that are
19859 impossibly small.
19860 (Vinitial_window_system): Rename from Vwindow_system.
19861 (termscript, Wcm, rif): Delete.
19862
19863 * termhooks.h (struct terminal): New struct containing the
19864 previously global text display hooks and new members NAME,
19865 DELETED and PARAM_ALIST.
19866 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
19867 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
19868 (FRAME_RIF): New macros.
19869 (get_terminal_param, get_device): New declarations.
19870 (termscript): Delete declaration.
19871
19872 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
19873 (XTflash, x_free_frame_resources, x_scroll_bar_create)
19874 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
19875 FRAME_FOREGROUND_PIXEL.
19876 (x_fully_uncatch_errors): Disable definition.
19877 (x_scroll_bar_expose): Fix reference to foreground pixel.
19878 (XTread_socket): Disable loop on all X displays.
19879 (x_delete_terminal): Don't set terminal->deleted and let
19880 delete_terminal delete the frames on the terminal.
19881 (x_delete_display): Doc update to reflect changes in
19882 delete_terminal.
19883 (x_display_info) <terminal>: Move member earlier in the struct.
19884 (deleting_tty): Remove old variable.
19885 (Fsuspend_tty): Call clear_tty_hooks.
19886 (Fresume_tty, init_tty): Call set_tty_hooks.
19887 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
19888 errors on X frames.
19889 (x_catch_errors_unwind): Abort if x_error_message is NULL.
19890 (handle_one_xevent): Initialize `f' to NULL.
19891 (x_delete_terminal, x_create_terminal): New functions.
19892 (XTset_terminal_modes, XTreset_terminal_modes)
19893 (XTread_socket, x_connection_closed, x_term_init)
19894 (x_term_init, x_delete_display): Add terminal parameter.
19895 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
19896 X connections.
19897
19898 * frame.c: Include termchar.h.
19899 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
19900 (Qwindow_system, Qenvironment, Qterm_environment_variable)
19901 (Qdisplay_environment_variable): New vars.
19902 (Fframep): Deal with output_initial.
19903 (Fframe-live-p): Doc fix.
19904 (Fwindow-system): New function.
19905 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
19906 (make_terminal_frame): Don't create frames on a terminal that is
19907 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19908 (store_frame_param): Check for found_for_frame before calling XFRAME.
19909 (Fmake_terminal_frame): Handle NULL tty names correctly.
19910 (syms_of_frame): Enhance doc string of `default-frame-alist'.
19911 (Fdelete_frame): Remove unused variable `count'. Don't allow other
19912 frames to refer to a deleted frame in their 'environment parameter.
19913 (Fframe_with_environment): New function.
19914 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
19915 (get_future_frame_param): New function.
19916 (Fmake_terminal_frame): Use it.
19917 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
19918
19919 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
19920 * sysdep.c (reset_sys_modes): Update for renames.
19921
19922 * keyboard.c (tty_read_avail_input): New function.
19923 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
19924 (syms_of_keyboard): Defsubr them.
19925 (Fset_input_meta_mode, Fset_quit_char): New functions.
19926 (Fset_input_mode): Split to above functions.
19927 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
19928 parameter. Use it in call to `read_char'.
19929 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
19930 Set wrong_kboard_jmpbuf correctly in recursive calls.
19931 Use current_kboard to access Vkeyboard_translate_table.
19932 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
19933 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
19934 Update longjmp invocations. Remember the original current_kboard,
19935 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
19936 changes it. Comment out unnecessary calls to
19937 `record_single_kboard_state' and `any_kboard_state'.
19938 Update recursive calls.
19939 (wrong_kboard_jmpbuf): Remove global variable.
19940 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
19941 Handle deleted interrupted_kboards correctly; that is a legal
19942 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
19943 and read_char calls. Abort if interrupted_kboard died in read_char.
19944 (any_kboard_state, single_kboard_state)
19945 (push_frame_kboard): Remove function.
19946 (pop_kboard): Switch out of single_kboard mode if the kboard has
19947 been deleted. Remove unused variable. Help debugging by not
19948 changing current_kboard unnecessarily. Set current_kboard to the
19949 kboard of the selected frame when the stored kboard object has
19950 been deleted before pop_kboard.
19951 (temporarily_switch_to_single_kboard): Change first parameter to a
19952 frame pointer. Throw an error when caller wants to change kboards
19953 while in single_kboard mode. Don't push_kboard if we weren't in
19954 single kboard state. Don't pop_kboard if we popped into any
19955 kboard state.
19956 (restore_kboard_configuration): Abort if pop_kboard changed the
19957 kboard in single_kboard mode. Call pop_kboard only after setting
19958 up single_kboard mode.
19959 (Frecursive_edit): Switch to single_kboard mode only in nested
19960 command loops.
19961 (cmd_error, command_loop, command_loop_1, timer_check):
19962 Comment out unnecessary call to `any_kboard_state' and
19963 `record_single_kboard_state'.
19964 (delete_kboard): Exit single_kboard mode if we have just deleted
19965 that kboard. Use FRAME_KBOARD.
19966 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
19967 `fatal_error_signal'.
19968 (record_single_kboard_state): Don't push_kboard if we weren't in
19969 single kboard state. Don't pop_kboard if we popped into any
19970 kboard state.
19971 (push_frame_kboard): Rename to push_kboard.
19972 (kbd_buffer_get_event): Use FRAME_TERMINAL.
19973 (read_avail_input): Read input from all terminals.
19974 (mark_kboards): Also mark Vkeyboard_translate_table.
19975 (kbd_buffer_store_event_hold): Simplify condition.
19976 (read_key_sequence): Reinitialize fkey and keytran at each replay.
19977 (Vkeyboard_translate_table): Move to struct kboard.
19978 (init_kboard): Initialize Vkeyboard_translate_table.
19979 (syms_of_keyboard): Use DEFVAR_KBOARD to define
19980 Vkeyboard_translate_table. Update doc strings. Update docs of
19981 local-function-key-map and function-key-map.
19982
19983 * terminal.c: New file.
19984
19985 * term.c: Include errno.h.
19986 (Vring_bell_function, device_list, initial_device)
19987 (next_device_id, ring_bell, update_begin, update_end)
19988 (set_terminal_window, cursor_to, raw_cursor_to)
19989 (clear_to_end, clear_frame, clear_end_of_line)
19990 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
19991 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
19992 (syms_of_term): Move their initialization to terminal.c.
19993 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
19994 (Ftty_display_color_cells)
19995 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
19996 (clear_tty_hooks, set_tty_hooks)
19997 (init_tty, maybe_fatal): New functions.
19998 (Ftty_type): Return nil if terminal is not on a tty instead of
19999 throwing an error. Doc update.
20000 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
20001 Doc update. Initialize new subrs and variables.
20002 (delete_tty): Use terminal->deleted.
20003 (tty_set_terminal_modes): Rename from set_terminal_modes.
20004 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
20005 (set_scroll_region): Rename to `tty_set_scroll_region'.
20006 (turn_on_insert): Rename to `tty_turn_on_insert'.
20007 (turn_off_insert): Rename to `tty_turn_off_insert'.
20008 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
20009 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
20010 (toggle_highligh): Rename to `tty_toggle_highlight'.
20011 (background_highlight): Rename to `tty_background_highlight'.
20012 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
20013 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
20014 (tty_set_scroll_region, tty_background_highlight)
20015 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
20016 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
20017 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
20018 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
20019 Add static modifier.
20020 (tty_reset_terminal_modes, tty_set_terminal_window)
20021 (tty_set_scroll_region, tty_background_highlight)
20022 (tty_highlight_if_desired, tty_cursor_to)
20023 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
20024 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
20025 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
20026 renames.
20027
200282007-08-28 Jan Djärv <jan.h.d@swipnet.se>
20029
20030 * keyboard.c: Qrtl is new.
20031 (parse_tool_bar_item): Handle :rtl keyword.
20032 (syms_of_keyboard): Intern :rtl keyword.
20033
20034 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
20035
20036 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
20037 so no Lisp code is executed.
20038 (file_for_image, find_rtl_image): New functions.
20039 (xg_get_image_for_pixmap): Use file_for_image.
20040 (update_frame_tool_bar): If direction is RTL, use RTL image if
20041 defined. Use Gtk stock images if defined.
20042
200432007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20044
20045 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
20046 for nonexistent or zero-width glyph in composition glyph.
20047
200482007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
20049
20050 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
20051
20052 * xdisp.c (Finvisible_p): New function.
20053 (syms_of_xdisp): defsubr it.
20054
200552007-08-24 Juanma Barranquero <lekktu@gmail.com>
20056
20057 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
20058 Doc fixes.
20059
200602007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20061
20062 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
20063
200642007-08-24 Martin Rudalics <rudalics@gmx.at>
20065
20066 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
20067 whether decoding has modified buffer contents.
20068
200692007-08-24 Jason Rumney <jasonr@gnu.org>
20070
20071 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
20072 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
20073 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
20074 (init_svg_functions) [HAVE_NTGUI]: New function.
20075 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
20076 (svg_load_image): Use them.
20077 (svg_load_image) [HAVE_NTGUI]: Implement background.
20078
200792007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20080
20081 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
20082 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
20083 (LIBX): Remove @RSVG_LIBS@.
20084 (LIBES): Add $(RSVG_LIBS).
20085
20086 * image.c (svg_load_image): Blend with specified background if exists.
20087 Use IMAGE_BACKGROUND. Add Mac OS Support.
20088
20089 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
20090 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
20091 Remove macros.
20092 [MAC_OSX] (socket_callback): Do nothing.
20093 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
20094 ReceiveNextEvent.
20095 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
20096 socket_callback.
20097 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
20098
200992007-08-22 Glenn Morris <rgm@gnu.org>
20100
20101 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
20102
201032007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
20104
20105 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
20106
20107 * image.c: Add support for SVG images. Some additional comments
20108 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
20109 (svg_image_p): New function to test for SVG image.
20110 (svg_load): New function to load SVG image.
20111 (svg_load_image): New function, helper for svg_load.
20112 (Qsvg): New Lisp_object.
20113 (svg_keyword_index): New enum.
20114 (svg_format): New static `image_keyword' struct.
20115 (svg_type): New static `image_type' struct.
20116 (librsvg/rsvg.h): Include it.
20117
201182007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
20119
20120 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
20121
201222007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
20123
20124 * lread.c (Qold_style_backquotes): New var.
20125 (syms_of_lread): Init and staticpro it.
20126 (load_warn_old_style_backquotes): New fun.
20127 (Fload): Use them to warn about old style backquotes.
20128 (end_of_file_error, Fload): Remove unused vars.
20129
20130 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
20131
20132 * lread.c (Vold_style_backquotes): New var.
20133 (syms_of_lread): Init and export it to Elisp.
20134 (read1): Set it when we find an old-style (back)quote.
20135
201362007-08-22 Jason Rumney <jasonr@gnu.org>
20137
20138 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
20139
201402007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
20141
20142 * puresize.h (BASE_PURESIZE): Increase to 1140000.
20143
201442007-08-19 Richard Stallman <rms@gnu.org>
20145
20146 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
20147
201482007-08-19 Andreas Schwab <schwab@suse.de>
20149
20150 * alloc.c (pure): Round PURESIZE up.
20151
201522007-08-17 Jan Djärv <jan.h.d@swipnet.se>
20153
20154 * xterm.c (handle_one_xevent): Remove check that mouse click is in
20155 active frame.
20156
201572007-08-16 Richard Stallman <rms@gnu.org>
20158
20159 * eval.c (Fcommandp): Add parens to clarify.
20160
20161 * minibuf.c (Fall_completions): Use enum for type of table.
20162
20163 * emacs.c (USAGE2): Improve text.
20164
201652007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
20166
20167 * term.c (tty_default_color_capabilities): Declare static
20168 variables in file scope, to avoid HPUX compiler problem.
20169
201702007-08-13 Jan Djärv <jan.h.d@swipnet.se>
20171
20172 * gtkutil.c (update_frame_tool_bar): Use -1 as index
20173 to gtk_toolbar_insert.
20174
201752007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
20176
20177 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
20178
20179 * insdel.c (reset_var_on_error): New fun.
20180 (signal_before_change, signal_after_change):
20181 Use it to reset (after|before)-change-functions to nil in case of error.
20182 Bind inhibit-modification-hooks to t.
20183 Don't bind (after|before)-change-functions to nil while they run.
20184
201852007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20186
20187 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
20188 filling pixmap with stippled background.
20189
201902007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20191
20192 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
20193 Don't use invisible frame as parent window for repositioning.
20194
201952007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
20196
20197 * print.c (new_backquote_output): Rename from old_backquote_output.
20198 (print): Inverse its logic (according to its name) so as to match the
20199 behavior of new_backquote_flag in lread.c.
20200
202012007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20202
20203 * gmalloc.c (posix_memalign): New function.
20204
20205 * macterm.c (frame_highlight, frame_unhighlight): Don't call
20206 ActivateControl/DeactivateControl here.
20207 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
20208 frame-notice-user-settings is non-nil.
20209 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
20210 for kEventParamFMFontStyle.
20211 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
20212 mac_pass_command_to_system and mac_pass_control_to_system here.
20213 (XTread_socket): Call ActivateControl/DeactivateControl here.
20214 (XTread_socket) [TARGET_API_MAC_CARBON]:
20215 Check mac_pass_command_to_system and mac_pass_control_to_system here.
20216 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
20217 for window repositioning.
20218
202192007-08-08 Glenn Morris <rgm@gnu.org>
20220
20221 * Replace `iff' in doc-strings and comments.
20222
202232007-08-07 Chong Yidong <cyd@stupidchicken.com>
20224
20225 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
20226
202272007-08-07 Martin Rudalics <rudalics@gmx.at>
20228
20229 * fileio.c (Finsert_file_contents): Run format-decode and
20230 after_insert_file_functions on entire buffer when REPLACE is
20231 non-nil and inhibit modification_hooks and point_motion_hooks.
20232 For consistency, run after_insert_file_functions iff something
20233 got inserted. Move signal_after_change and update_compositions
20234 after code running after_insert_file_functions. Make sure that
20235 undo_list doesn't record intermediate steps of the decoding process.
20236
202372007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20238
20239 * emacs.c (main)
20240 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20241 Call malloc_enable_thread on interactive startup.
20242
20243 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20244 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20245 [USE_PTHREAD]: Conditionalize with it.
20246 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20247 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20248 New functions.
20249
202502007-08-06 Chong Yidong <cyd@stupidchicken.com>
20251
20252 * xdisp.c (redisplay_window): When restoring original buffer
20253 position, make sure it is still valid.
20254
20255 * image.c (png_load): Ignore png-supplied background color.
20256
202572007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20258
20259 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20260 Use kCFAbsoluteTimeIntervalSince1970.
20261
20262 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20263 New variable.
20264 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20265 event loop should be quit.
20266 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20267 Quit dialog event loop if quit_dialog_event_loop is set.
20268
20269 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20270 (Selection): New typedef. Use instead of ScrapRef.
20271 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20272 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20273 (mac_clear_selection): Rename from clear_scrap.
20274 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20275 scrap_has_target_type. All uses changed.
20276 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20277 (mac_selection_has_target_p): New functions.
20278 (mac_put_selection_value): Rename from put_scrap_string.
20279 (mac_get_selection_value): Rename from get_scrap_string.
20280 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20281 (put_scrap_private_timestamp, scrap_has_target_type)
20282 (get_scrap_private_timestamp): Remove functions.
20283 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20284 (x_own_selection, x_get_local_selection):
20285 Use mac_valid_selection_value_p.
20286 (x_own_selection): Don't use put_scrap_private_timestamp.
20287 Record OWNERSHIP-INFO into Vselection_alist instead.
20288 (x_get_local_selection): Don't check type if request is local.
20289 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20290 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20291
202922007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20293
20294 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20295 add comment explaining why.
20296
202972007-08-03 Richard Stallman <rms@gnu.org>
20298
20299 * fileio.c (Fvisited_file_modtime): Use make_time.
20300
203012007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20302
20303 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20304 build.
20305
203062007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20307
20308 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20309
203102007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20311
20312 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20313
203142007-07-30 Richard Stallman <rms@gnu.org>
20315
20316 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20317
203182007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20319
20320 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20321
203222007-07-28 Nick Roberts <nickrob@snap.net.nz>
20323
20324 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20325 remote default-directory.
20326
20327 * buffer.c (mode-line-format): Update doc string.
20328
203292007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20330
20331 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20332 scroll bar gap.
20333 (x_scroll_bar_create): Set bar->fringe_extended_p.
20334 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20335 on frame edge. Check fringe background extension. Don't clear
20336 extended fringe background area.
20337
20338 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20339 (w32_fill_area): Enclose multiple statements with do ... while (0).
20340
20341 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20342 Extend fringe background to scroll bar gap.
20343 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20344 Set bar->fringe_extended_p.
20345 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20346 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20347 background extension. Don't clear extended fringe background area.
20348
20349 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20350 New member fringe_extended_p.
20351
203522007-07-25 Glenn Morris <rgm@gnu.org>
20353
20354 * Relicense all FSF files to GPLv3 or later.
20355
20356 * COPYING: Switch to GPLv3.
20357
203582007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20359
20360 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20361
20362 * data.c (Finteractive_form): Check for the presence of an
20363 `interactive-form' symbol property more thoroughly.
20364
20365 * data.c (Finteractive_form): Use an `interactive-form' property if
20366 present, analogous to the function-documentation property.
20367
203682007-07-24 Jason Rumney <jasonr@gnu.org>
20369
20370 * w32fns.c (x_real_positions): Get real position from OS instead of
20371 calculating it.
20372
203732007-07-23 Jason Rumney <jasonr@gnu.org>
20374
20375 * filelock.c (current_lock_owner): Allow for @ sign in username.
20376
203772007-07-22 Nick Roberts <nickrob@snap.net.nz>
20378
20379 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20380 remote default-directory.
20381
20382 * buffer.c (mode-line-format): Describe above case in doc string.
20383
203842007-07-20 Eli Zaretskii <eliz@gnu.org>
20385
20386 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20387 Define if not defined.
20388
203892007-07-18 Jason Rumney <jasonr@gnu.org>
20390
20391 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20392
203932007-07-18 Richard Stallman <rms@gnu.org>
20394
20395 * data.c (Fsetq_default): Doc fix.
20396
20397 * eval.c (Fsetq): Doc fix.
20398
203992007-07-18 Juanma Barranquero <lekktu@gmail.com>
20400
20401 * coding.c (Ffind_operation_coding_system):
20402 * eval.c (For, Fand): Doc fixes.
20403 Reported by Johan Bockgård.
20404
204052007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20406
20407 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20408
20409 * xterm.h: Declare x_ewmh_activate_frame.
20410
20411 * xterm.c (x_ewmh_activate_frame): New function.
20412 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20413
204142007-07-17 Martin Rudalics <rudalics@gmx.at>
20415
20416 * window.c (Fdisplay_buffer): If largest or LRU window is the
20417 only window, split it even if it is not eligible for splitting.
20418 This restores the original behavior broken by the 2007-07-15
20419 change.
20420
204212007-07-17 Glenn Morris <rgm@gnu.org>
20422
20423 * abbrev.c (abbrev_check_chars): New function.
20424 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20425 Call abbrev_check_chars to check abbrev characters are word
20426 constituents. Doc fix.
20427
204282007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20429
20430 * process.c (Fstart_process, Fmake_network_process)
20431 (read_process_output): Fix up last changes.
20432
204332007-07-16 Eli Zaretskii <eliz@gnu.org>
20434
20435 * makefile.w32-in (clean): Don't delete *~.
20436
204372007-07-16 Andreas Schwab <schwab@suse.de>
20438
20439 * window.c (Fdisplay_buffer): Use NILP.
20440 (Fset_window_scroll_bars): Likewise.
20441
204422007-07-15 Martin Rudalics <rudalics@gmx.at>
20443
20444 * window.c (window_min_size_2): New function.
20445 (window_min_size_1, size_window, Fdisplay_buffer)
20446 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20447 windows without mode- or header-lines when window-min-height is
20448 too small.
20449 (size_window): Reset nodelete_p after testing it, following an
20450 earlier note by Kim F. Storm.
20451 (display_buffer): Do not set split_height_threshold to twice the
20452 value of window_min_height to avoid changing the value of a
20453 customizable variable. Rather explicitly check whether the
20454 height of the window that shall be splitted is at least as large
20455 as split_height_threshold.
20456 (Fwindow_full_width_p): New defun.
20457 (syms_of_window): Defsubr it.
20458
20459 * window.h: Add EXFUN for Fwindow_full_width_p.
20460
204612007-07-14 Jason Rumney <jasonr@gnu.org>
20462
20463 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20464
204652007-07-14 Richard Stallman <rms@gnu.org>
20466
20467 * eval.c (maybe_call_debugger): New function.
20468 (find_handler_clause): Use maybe_call_debugger.
20469 Call it when the handler says `debug'.
20470 Eliminate DEBUGGER_VALUE_PTR.
20471 (Fsignal): Eliminate debugger_value.
20472 (Qdebug): New variable.
20473 (syms_of_eval): Initialize it.
20474
204752007-07-14 Juanma Barranquero <lekktu@gmail.com>
20476
20477 * eval.c (Fprogn):
20478 * keyboard.c (Ftrack_mouse):
20479 * print.c (Fwith_output_to_temp_buffer):
20480 * window.c (Fsave_window_excursion): Doc fix.
20481
204822007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20483
20484 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20485
204862007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20487
20488 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20489 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20490 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20491 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20492 Remove unused encoding_carryover.
20493 * process.c: Adjust all functions accordingly.
20494
204952007-07-12 Richard Stallman <rms@gnu.org>
20496
20497 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20498
204992007-07-11 Jason Rumney <jasonr@gnu.org>
20500
20501 * makefile.w32-in (LIBS): Include OLE32.
20502
20503 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20504 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20505
205062007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20507
20508 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20509 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20510 from a Lisp_Object into a bare pointer.
20511 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20512 Adjust the code correspondingly.
20513
20514 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20515
20516 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20517 (term_show_mouse_face): Remove unused var `j'.
20518 (handle_one_term_event): Remove unused vars `i' and `j'.
20519 Don't cast return value of ttyname since it's not necessary.
20520
205212007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20522
20523 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20524 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20525
20526 * fns.c (map_char_table): Use an array of int for `indices' rather than
20527 an array of Lisp_Objects (which are only ever integers anyway).
20528 (Fmap_char_table): Update caller.
20529 * lisp.h: Update prototype.
20530 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20531 * fontset.c (Ffontset_info):
20532 * casetab.c (set_case_table): Update callers.
20533
20534 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20535
20536 * keymap.c (struct accessible_keymaps_data)
20537 (struct where_is_internal_data): New structures.
20538 (accessible_keymaps_1, where_is_internal_1): Use them to change
20539 interface to adhere to the one used by map_keymap.
20540 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20541 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20542
20543 * keymap.h (map_keymap_function_t): More informative prototype.
20544
205452007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20546
20547 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20548 (looking_at_1): Don't change search_regs and last_thing_searched
20549 if `inhibit-changing-match-data' is non-nil.
20550 (string_match_1, search_buffer, set_search_regs): Likewise.
20551 (syms_of_search): Add Lisp level definition for
20552 `inhibit-changing-match-data' and set it to nil.
20553 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20554 start and end of the match, instead of using values in search_regs.
20555
205562007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20557
20558 * minibuf.c (Fcompleting_read): New value `confirm-only'
20559 for `require-match'.
20560
205612007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20562
20563 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20564 part of the 2007-06-27 change to syms_of_fileio.
20565
205662007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20567
20568 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20569 Check WINDOWP before using XWINDOW. Consolidate return statements.
20570
205712007-06-27 Richard Stallman <rms@gnu.org>
20572
20573 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20574
205752007-06-27 Juanma Barranquero <lekktu@gmail.com>
20576
20577 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20578
205792007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20580
20581 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20582 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20583 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20584 (_free_internal, memalign): Use them.
20585 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20586 Initialize to PTHREAD_MUTEX_INITIALIZER.
20587 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20588 (morecore_nolock): Rename from morecore. All uses changed.
20589 Use only nolock versions of internal allocation functions.
20590 (_malloc_internal_nolock, _realloc_internal_nolock)
20591 (_free_internal_nolock): New functions created from
20592 _malloc_internal, _realloc_internal, and _free_internal.
20593 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20594 Copy hook value to automatic variable before its use.
20595 (memalign): Copy hook value to automatic variable before its use.
20596
205972007-06-26 Kenichi Handa <handa@m17n.org>
20598
20599 * coding.c (Ffind_operation_coding_system): Docstring improved.
20600 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20601
206022007-06-25 David Kastrup <dak@gnu.org>
20603
20604 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20605 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20606 cater for additional parameter.
20607
20608 * keymap.h: Adjust number of parameters to `current-active-maps'.
20609
20610 * doc.c (Fsubstitute_command_keys): Adjust call of
20611 `current-active-maps'.
20612
206132007-06-25 David Kastrup <dak@gnu.org>
20614
20615 * callint.c (Fcall_interactively): Make the parsing of interactive
20616 specs somewhat more readable.
20617
206182007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20619
20620 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20621 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20622 if extended background has already been filled.
20623
206242007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20625
20626 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20627 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20628
20629 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20630 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20631 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20632 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20633 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20634 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20635 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20636 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20637 Run timers during dialog popup.
20638 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20639
206402007-06-21 Jason Rumney <jasonr@gnu.org>
20641
20642 * image.c (convert_mono_to_color_image): Swap fore and background.
20643
206442007-06-20 Jason Rumney <jasonr@gnu.org>
20645
20646 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20647 (w32_free_bdf_font): Unmap memory not handle.
20648
206492007-06-20 Sam Steingold <sds@gnu.org>
20650
20651 * gmalloc.c (__morecore): Fix the declaration to comply with the
20652 definition.
20653
206542007-06-20 Juanma Barranquero <lekktu@gmail.com>
20655
20656 * w32term.c (w32_delete_display): Remove leftover declaration.
20657 (w32_define_cursor, w32_initialize): Make static.
20658
20659 * w32.c (_wsa_errlist): Fix typo in error message.
20660 (init_environment): Ignore any environment variable from the
20661 registry having a null value.
20662
206632007-06-20 Glenn Morris <rgm@gnu.org>
20664
20665 * Makefile.in (LIBGIF): Default to -lgif.
20666
206672007-06-17 Jason Rumney <jasonr@gnu.org>
20668
20669 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20670 unicode strings.
20671
206722007-06-16 Juanma Barranquero <lekktu@gmail.com>
20673
20674 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20675 Fix typo in docstring.
20676
206772007-06-16 Eli Zaretskii <eliz@gnu.org>
20678
20679 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20680 and their keybindings.
20681
206822007-06-15 Chong Yidong <cyd@stupidchicken.com>
20683
20684 * composite.c (update_compositions): Fix last fix.
20685
206862007-06-14 Jason Rumney <jasonr@gnu.org>
20687
20688 * w32.c (get_process_times_fn): New function pointer.
20689 (globals_of_w32): Intialize it if present in kernel32.dll.
20690 (w32_get_internal_run_time): New function.
20691
20692 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20693
206942007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20695
20696 * composite.c (update_compositions): Check the validness of
20697 compositions.
20698
206992007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20700
20701 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20702 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20703
20704 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20705 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20706
20707 * macgui.h (USE_MAC_TOOLBAR): New define.
20708
20709 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20710 Return immediately unless popup is activated.
20711
20712 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20713 background to scroll bar gap.
20714 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20715 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20716 scroll bars on frame edge. Check fringe background extension.
20717 Don't clear extended fringe background area.
20718 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20719 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20720 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20721 [USE_MAC_TOOLBAR]: New macros.
20722 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20723 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20724 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20725 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20726 [USE_MAC_TOOLBAR]: New functions.
20727 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20728 manually if previous repositioning has failed.
20729 (mac_handle_keyboard_event): Use precomputed event kind.
20730 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20731 as tool bar item click. Handle mouse movement over tool bar items.
20732
20733 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20734 toolbar_win_gravity.
20735 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20736 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20737 Add externs.
20738
20739 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20740 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20741
207422007-06-14 Chong Yidong <cyd@stupidchicken.com>
20743
20744 * image.c (search_image_cache): Remove unused variable.
20745
207462007-06-13 Chong Yidong <cyd@stupidchicken.com>
20747
20748 * xfns.c, xmenu.c: Link to xaw3d if available.
20749
207502007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20751
20752 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20753 frame_foreground and frame_background.
20754
20755 * image.c (lookup_image): Save frame foreground and background colors.
20756 (search_image_cache): Check if saved and current frame colors match.
20757
207582007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20759
20760 * regex.c (regex_compile): Remove the `regnum' counter.
20761 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20762
207632007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20764
20765 * term.c: Include intervals.h to declare Fget_text_property.
20766
207672007-06-10 Jason Rumney <jasonr@gnu.org>
20768
20769 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20770
207712007-06-08 Juanma Barranquero <lekktu@gmail.com>
20772
20773 * callint.c (Fcall_interactively):
20774 * editfns.c (Fdelete_and_extract_region):
20775 * fileio.c (Fread_file_name):
20776 * fns.c (Fmapconcat):
20777 * keyboard.c (cmd_error_internal):
20778 * keymap.c (Fkey_description):
20779 * lread.c (openp):
20780 * minibuf.c (read_minibuf):
20781 * search.c (wordify):
20782 * sunfns.c (sel_read):
20783 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20784 * xfns.c (x_default_scroll_bar_color_parameter):
20785 * xmenu.c (menu_help_callback):
20786 * xselect.c (Fx_get_atom_name):
20787 * xterm.c (x_term_init): Use empty_unibyte_string.
20788
207892007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20790
20791 * alloc.c (init_strings): Initialize canonical empty strings.
20792 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20793 canonical empty string when the requested size is 0.
20794
20795 * emacs.c (empty_unibyte_string): Rename from empty_string.
20796 (empty_multibyte_string): New canonical empty string.
20797 (syms_of_emacs): Don't initialize empty_string.
20798
20799 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20800 string, if appropriate.
20801 (empty_unibyte_string, empty_multibyte_string): New externs.
20802 (empty_string): Remove extern.
20803
20804 * lread.c (syms_of_lread): Use empty_unibyte_string.
20805
208062007-06-07 Jason Rumney <jasonr@gnu.org>
20807
20808 * s/ms-w32.h: Don't define HAVE_TZNAME.
20809
20810 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20811
208122007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20813
20814 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20815
20816 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20817 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20818
20819 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20820 Don't call next handler.
20821 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20822 Remove argument. Install handler to application.
20823 (set_frame_menubar): Don't change deep_p.
20824 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20825 FRAME_OUTER_TO_INNER_DIFF_Y.
20826 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20827 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20828 [HAVE_DIALOGS]: New macros.
20829 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20830 Use them.
20831 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20832
20833 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20834 init_service_handler. All callers changed. Return OSStatus value.
20835
20836 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20837 All callers changed so as not to call SetPortWindowPort.
20838 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
20839 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
20840 mac_draw_string_common.
20841 (mac_draw_image_string_qd): Likewise.
20842 (mac_draw_string_common): Use them. Add INLINE.
20843 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
20844 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
20845 GetGlobalMouse.
20846 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
20847 and FRAME_OUTER_TO_INNER_DIFF_Y.
20848 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
20849 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
20850 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
20851 repositioning window to mac_handle_window_event.
20852 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
20853 saving window location to mac_handle_window_event
20854 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
20855 (install_menu_target_item_handler): Remove argument in extern.
20856 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
20857 Also accept command events.
20858 (do_keystroke): New function created from XTread_socket.
20859 (init_command_handler): Remove functions.
20860 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
20861 and save window location by kEventWindowShowing and kEventWindowHiding
20862 handlers here. Don't call next handler for window state change and
20863 focus events.
20864 (mac_handle_application_event, mac_handle_keyboard_event)
20865 [TARGET_API_MAC_CARBON]: New functions.
20866 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
20867 kEventWindowShowing and kEventWindowHiding events. Move installation
20868 of mouse, font, text input and menu target item handlers to
20869 install_application_handler.
20870 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
20871 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20872 New function.
20873 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20874 Register it.
20875 (XTread_socket) [TARGET_API_MAC_CARBON]:
20876 Consolidate SendEventToEventTarget calls.
20877 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
20878 Move application activation handler to mac_handle_application_event.
20879 Move keyboard handler to mac_handle_keyboard_event.
20880 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
20881 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
20882 init_command_handler. Call install_application_handler.
20883
20884 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
20885 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
20886
208872007-06-07 Glenn Morris <rgm@gnu.org>
20888
20889 * emacs.c (main): Use `emacs-copyright' in --version output.
20890
208912007-06-06 Chong Yidong <cyd@stupidchicken.com>
20892
20893 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
20894
208952007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20896
20897 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
20898
20899 * macgui.h: Replace WindowPtr with WindowRef.
20900
20901 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20902 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20903 Replace ControlHandle with ControlRef.
20904 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
20905
20906 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20907 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20908 Replace ControlHandle with ControlRef.
20909 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
20910 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
20911
20912 * macterm.h (struct scroll_bar): Rename member control_handle_low
20913 and control_handle_high to control_ref_low and control_ref_high.
20914 All uses changed.
20915 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
20916 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
20917 respectively. All uses changed.
20918 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
20919 (install_window_handler, remove_window_handler): Replace WindowPtr
20920 with WindowRef in externs.
20921
209222007-06-05 Juanma Barranquero <lekktu@gmail.com>
20923
20924 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
20925
209262007-06-03 Nick Roberts <nickrob@snap.net.nz>
20927
20928 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
20929
20930 * frame.c (Fmouse_position, Fmouse_pixel_position):
20931 Condition on HAVE_GPM too.
20932
20933 * term.c (term_mouse_highlight): Remove unused variables.
20934 (Fterm_open_connection): Set gpm_zerobased to 1.
20935 (term_mouse_movement, term_mouse_click, handle_one_term_event):
20936 Use zero based co-ordinates.
20937 (handle_one_term_event): Report a drag as mouse movement too.
20938
20939 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
20940
209412007-06-03 Chong Yidong <cyd@stupidchicken.com>
20942
20943 * image.c (search_image_cache): New function. Require background
20944 color match if background color is unspecified in the image spec.
20945 (uncache_image, lookup_image): Use it.
20946
209472007-06-01 Juanma Barranquero <lekktu@gmail.com>
20948
20949 * window.c (Fshrink_window): Reflow docstring.
20950
209512007-06-02 Chong Yidong <cyd@stupidchicken.com>
20952
20953 * Version 22.1 released.
20954
209552007-06-01 Richard Stallman <rms@gnu.org>
20956
20957 * xfns.c (x_encode_text): Add GCPRO.
20958
209592007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20960
20961 * xfns.c (x_set_name_internal): Save encoded name before
20962 x_encode_text in case string data is relocated.
20963
209642007-05-31 Richard Stallman <rms@gnu.org>
20965
20966 * buffer.c (syms_of_buffer): Doc fix.
20967
209682007-05-30 Nick Roberts <nickrob@snap.net.nz>
20969
20970 * sysdep.c (init_sys_modes): Add rather than replace with
20971 O_NONBLOCK.
20972
20973 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
20974 term_mouse_moveto.
20975
20976 * termhooks.h (term_mouse_moveto): New extern.
20977
20978 * term.c (mouse_face_window): Rename...
20979 (Qmouse_face_window): ...to this.
20980 (term_show_mouse_face, term_clear_mouse_face)
20981 (term_mouse_highlight): Use Qmouse_face_window.
20982 (term_mouse_moveto): New function.
20983 (term_mouse_position): Make it work.
20984 (syms_of_term): Uncomment assignment to mouse_position_hook.
20985 Staticpro Qmouse_face_window.
20986
209872007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20988
20989 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
20990 around current_column call.
20991
209922007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
20993
20994 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
20995 * xdisp.c (next_element_from_buffer):
20996 * window.c (delete_window):
20997 * term.c (term_mouse_highlight):
20998 * msdos.c (getdefdir):
20999 * macterm.c (mac_create_bitmap_from_bitmap_data)
21000 (init_font_name_table):
21001 * fns.c (Fsxhash):
21002 * data.c (Fmake_local_variable):
21003 * ccl.c (ccl_driver): Likewise.
21004
210052007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21006
21007 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
21008 Call mac_wakeup_from_rne on window size change.
21009
210102007-05-25 Chong Yidong <cyd@stupidchicken.com>
21011
21012 * image.c (uncache_image): Fix typo.
21013
210142007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
21015
21016 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
21017
210182007-05-22 Richard Stallman <rms@gnu.org>
21019
21020 * xterm.c (x_connection_closed): Remove NO_RETURN.
21021
210222007-05-22 Martin Rudalics <rudalics@gmx.at>
21023
21024 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
21025
210262007-05-21 Chong Yidong <cyd@stupidchicken.com>
21027
21028 * image.c (uncache_image): New function.
21029 (Fimage_refresh): New function.
21030
210312007-05-20 Jan Djärv <jan.h.d@swipnet.se>
21032
21033 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
21034
210352007-05-20 Nick Roberts <nickrob@snap.net.nz>
21036
21037 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
21038 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
21039
210402007-05-20 Nick Roberts <nickrob@snap.net.nz>
21041
21042 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
21043 conditional on [HAVE_GPM_H].
21044
210452007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
21046
21047 * syntax.c (skip_chars): Update syntax-table only after we checked that
21048 the new location is valid.
21049
210502007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21051
21052 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
21053 mac_get_window_bounds.
21054
210552007-05-20 Nick Roberts <nickrob@snap.net.nz>
21056
21057 * Makefile.in (LIBGPM): Allow it to be set from configure.
21058 If set then link Emacs with it.
21059
21060 * config.in: Regenerate.
21061
21062 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
21063 New externs.
21064
21065 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
21066 Include gpm.h.
21067 (handle_one_term_event, term_gpm): New externs.
21068
21069 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
21070 and allow it to be interrupted by SIGIO.
21071
21072 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
21073 (wait_reading_process_output): Wait on gpm_fd too.
21074 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
21075 (add_gpm_wait_descriptor_called_flag): New variable.
21076 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
21077
21078 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
21079 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
21080 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
21081 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
21082 (make_lispy_event): Add case GPM_CLICK_EVENT.
21083 (read_avail_input): Handle mouse input.
21084
21085 * term.c (write_glyphs_with_face): New function.
21086 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
21087 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
21088 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
21089 (mouse_face_face_id, term_gpm, pos_x, pos_y)
21090 (last_mouse_x, last_mouse_y): New variables.
21091 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
21092 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
21093 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
21094 (Fterm_close_connection): New functions.
21095 (term_init): Initialise mouse_face_window.
21096
210972007-05-19 Chong Yidong <cyd@stupidchicken.com>
21098
21099 * xdisp.c (redisplay_window): If first window line is a
21100 continuation line, recompute the new window start instead of
21101 recentering.
21102
211032007-05-18 Glenn Morris <rgm@gnu.org>
21104
21105 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
21106 Suggested by Alfred M. Szmidt <ams@gnu.org>.
21107
211082007-05-17 Glenn Morris <rgm@gnu.org>
21109
21110 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
21111
211122007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21113
21114 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
21115 dead key repeat and up events.
21116
211172007-05-14 Chong Yidong <cyd@stupidchicken.com>
21118
21119 * image.c (pbm_load): Check image size for monochrome pbm.
21120
211212007-05-13 Chong Yidong <cyd@stupidchicken.com>
21122
21123 * xterm.c (XTread_socket): Revert last change.
21124
211252007-05-12 Chong Yidong <cyd@stupidchicken.com>
21126
21127 * image.c (pbm_load): Correctly check image size for greyscale pbm.
21128
21129 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
21130
211312007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21132
21133 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
21134 mixup (YAILOM).
21135
211362007-05-07 Andreas Schwab <schwab@suse.de>
21137
21138 * keymap.c (Flookup_key): Fix typo in last change.
21139
211402007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21141
21142 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
21143 mapping for unibyte strings.
21144
211452007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21146
21147 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
21148 (Fx_popup_dialog) [MAC_OSX]: Likewise.
21149
211502007-04-29 Richard Stallman <rms@gnu.org>
21151
21152 * insdel.c (replace_range): For undo, record insertion first.
21153
211542007-04-29 Andreas Schwab <schwab@suse.de>
21155
21156 * lisp.h (VECSIZE): Use OFFSETOF.
21157
211582007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21159
21160 * xdisp.c (try_window_reusing_current_matrix): Fix number of
21161 disabled lines.
21162
211632007-04-28 Richard Stallman <rms@gnu.org>
21164
21165 * lread.c (read_escape): In a string, \s is always space.
21166
211672007-04-27 Jan Djärv <jan.h.d@swipnet.se>
21168
21169 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
21170
21171 * gtkutil.c (xg_update_menubar, create_menus): Create empty
21172 submenu for menu bar items.
21173
21174See ChangeLog.10 for earlier changes.
21175
21176;; Local Variables:
21177;; coding: utf-8
21178;; add-log-time-zone-rule: t
aac0c6e3
MR
21179;; End:
21180
76b6f707 21181 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
21182
21183 This file is part of GNU Emacs.
21184
21185 GNU Emacs is free software: you can redistribute it and/or modify
21186 it under the terms of the GNU General Public License as published by
21187 the Free Software Foundation, either version 3 of the License, or
21188 (at your option) any later version.
21189
21190 GNU Emacs is distributed in the hope that it will be useful,
21191 but WITHOUT ANY WARRANTY; without even the implied warranty of
21192 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21193 GNU General Public License for more details.
21194
21195 You should have received a copy of the GNU General Public License
21196 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21197
21198;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40