Fix slowdown and wrong font choosed by XSETTINGS changes. bug #5157.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
c0e6d47d
JD
12010-01-06 Jan Djärv <jan.h.d@swipnet.se>
2
d0cf45b7
JD
3 * font.c (font_open_entity): Enable chache and call cached_font_ok
4 for the driver if defined.
5 (QCuser_spec): New symbol.
6 (font_spec_from_name): Save name as user-spec.
7 (font_load_for_lface): Keep user-spec instead of name.
8 (font_open_by_name): Save name as user-spec.
9 (syms_of_font): Initialize QCuser_spec.
10
11 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
12 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
13 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
14
15 * font.h (struct font_driver): Add cached_font_ok.
16
c0e6d47d
JD
17 * xterm.c (x_clear_frame): Queue draw for scroll bars.
18
7c583cd8
JD
192010-01-05 Jan Djärv <jan.h.d@swipnet.se>
20
21 * xterm.c (x_new_font): Move code for setting rows/cols before
22 resizing ...
23 (x_set_window_size): ... to here. bug #2568.
24
25 * gtkutil.c (xg_clear_under_internal_border): New function.
26 (xg_frame_resized, xg_frame_set_char_size): Call
27 xg_clear_under_internal_border.
28 (xg_update_scrollbar_pos): Clear under old scroll bar position.
03f77f0a
CY
292010-01-05 Chong Yidong <cyd@stupidchicken.com>
30
31 * keyboard.c (read_key_sequence): Catch keyboard switch after
32 making a new tty frame (Bug#5095).
33
2a1ef5be
KH
342010-01-05 Kenichi Handa <handa@m17n.org>
35
36 * fontset.c (fontset_find_font): Fix getting the frame pointer.
37
e3eb1dae
SM
382010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
39
40 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
41 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
42 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
43
777013f2
MA
442010-01-03 Michael Albinus <michael.albinus@gmx.de>
45
46 * dbusbind.c (xd_add_watch): Improve debug message.
47 (xd_remove_watch): Improve debug message. If DATA is the session
48 bus, unset D-Bus session environment.
49 (Fdbus_init_bus): Pass the bus as argument to
50 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 51
8932b1c2
CY
522010-01-01 Chong Yidong <cyd@stupidchicken.com>
53
87231e2c
CY
54 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
55
4801c5fa
CY
56 * lread.c (syms_of_lread): Make it clearer that these are the
57 names of loaded files (Bug#5068).
58
8932b1c2
CY
59 * eval.c (run_hook_with_args): Handle the case where the global
60 value has the obsolete single-function form (Bug#5026).
61
11e3c684
CY
622009-12-27 Chong Yidong <cyd@stupidchicken.com>
63
64 * minibuf.c (Fall_completions): Minor optimization.
65
5b28ce35
EZ
662009-12-26 Eli Zaretskii <eliz@gnu.org>
67
5ce6e4f4
JB
68 * .gdbinit (pgx): Fix display of composite glyphs.
69 Display cmp.from and cmp.to as well.
70 (pitx): Fix last change.
5b28ce35 71
bcffff46
KH
722009-12-25 Kenichi Handa <handa@m17n.org>
73
74 * composite.h (composition_adjust_point): Update prototype.
75
76 * composite.c (composition_reseat_it): Don't make a composition
77 spanning over point.
78 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
79 composable characters.
80 (composition_adjust_point): New arg NEW_PT. Callers changed.
81
82 * keyboard.c (command_loop_1): Force redisplay if the last point
83 was within a composition.
84 (adjust_point_for_property): Don't adjust point for automatic
85 composition when called after buffer modification.
86
3f670e9a
EZ
872009-12-19 Eli Zaretskii <eliz@gnu.org>
88
5ce6e4f4
JB
89 * .gdbinit (pitx): Don't use enum names, use their values.
90 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
91 (pgx): Don't use enum names, use their values.
92 (pitmethod): New helper command.
93 (pitx): Use it to display iteration method.
94 (pgrowit): New command.
95
ad903955
EZ
96 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
97
3f670e9a
EZ
98 Update dependencies in Makefile.in.
99
100 * Makefile.in (alloc.o): Depend on termhooks.h.
101 (atimer.o): Depend on blockinput.h.
102 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
103 and frame.h.
104 (callint.o): Depend on systime.h, coding.h, and composite.h.
105 (callproc.o): Depend on buffer.h.
106 (casefiddle.o): Don't depend on charset.h.
107 (casetab.o): Depend on character.h.
108 (ccl.o): Depend on composite.h.
109 (chartab.o): Depend on ccl.h.
110 (cm.o): Depend on dispextern.h.
111 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
112 (coding.o): Don't depend on $(INTERVALS_H).
113 (composite.o): Don't depend on dispextern.h explicitly (it's in
114 $(INTERVALS_H)). Depend on ccl.h.
115 (data.o): Depend on systime.h, coding.h, composite.h,
116 dispextern.h, font.h, and ccl.h.
117 (dired.o): Depend on composite.h.
118 (dispnew.o): Depend on coding.h. Don't depend explicitly on
119 composite.h (it's in $(INTERVALS_H)).
120 (doc.o): Depend on systime.h, coding.h, and composite.h.
121 (editfns.o): Don't depend explicitly on dispextern.h.
122 (emacs.o): Depend on frame.h and coding.h.
123 (eval.o): Depend on coding.h, composite.h, and xterm.h.
124 (fileio.o): Depend on frame.h and commands.h. Don't depend
125 explicitly on dispextern.h.
126 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
127 composite.h.
128 (fns.o): Don't depend on termhooks.h.
129 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
130 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
131 coding.h, $(INTERVALS_H), window.h, xterm.h.
132 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
133 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
134 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
135 fontset.h, ccl.h, and ftfont.h.
136 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
137 (gtkutil.o): Depend on dispextern.h and composite.h.
138 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
139 termhooks.h, and ccl.h.
140 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
141 (intervals.o): Depend on systime.h and coding.h.
142 (keyboard.o): Depend on composite.h and coding.h.
143 (keymap.o): Depend on coding.h and frame.h.
144 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
145 (macros.o): Depend on systime.h, coding.h, and composite.h.
146 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
147 and atimer.h.
148 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
149 dispextern.h explicitly.
150 (print.o): Depend on termhooks.h, coding.h, and ccl.h. Don't
151 depend explicitly on dispextern.h and composite.h.
152 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
153 (regex.o): Don't depend on charset.h.
154 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
155 (search.o): Don't depend explicitly on composite.h.
156 (sound.o): Depend on atimer.h and systime.h.
157 (syntax.o): Don't depend explicitly on composite.h.
158 (sysdep.o): Depend on coding.h and composite.h.
159 (term.o): Depend on xterm.h and buffer.h.
160 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
161 (textprop.o): Don't depend on dispextern.h explicitly.
162 (undo.o): Depend on dispextern.h.
163 (window.o): Depend on coding.h and termhooks.h. Don't depend on
164 dispextern.h and composite.h explicitly.
165 (xdisp.o): Depend on ccl.h.
166 (xfaces.o): Depend on coding.h and ccl.h.
167 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
168 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
169 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
170 ftfont.h.
171 (xgselect.o): New dependency.
172 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
173 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
174 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
175 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
176 (xsmfns.o): Depend on frame.h and dispextern.h.
177 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
178 sysselect.h.
179
7a6f7fea
AS
1802009-12-19 Andreas Schwab <schwab@linux-m68k.org>
181
182 * font.c (Fclear_font_cache): Pass correct cache argument to
183 font_clear_cache.
184
f4c21026
AS
1852009-12-16 Andreas Schwab <schwab@linux-m68k.org>
186
187 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
188 twice.
189
f7ab0997
CY
1902009-12-15 Chong Yidong <cyd@stupidchicken.com>
191
192 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
193 calling file-remote-p. Reported by Jim Meyering.
194
fa8e045a
MA
1952009-12-15 Michael Albinus <michael.albinus@gmx.de>
196
197 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 198 avoid compiler warnings. (Bug #5217)
fa8e045a 199
a63dba42
KH
2002009-12-14 Kenichi Handa <handa@m17n.org>
201
202 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
203 in 8-bit encoding.
204
5ce6e4f4 2052009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
206
207 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
208 tooltip windows.
209
223e5fc6
JD
2102009-12-13 Jan Djärv <jan.h.d@swipnet.se>
211
36acb2a7
JD
212 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
213 Xatom_net_window_type.
214
215 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
216 Xatom_net_window_type.
217
b8f00677
JD
218 * xterm.c (my_log_handler): New function.
219 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 220 so we can filter out buggy messages. (Bug #5120).
b8f00677 221
e5f0bc9a
JD
222 * xterm.c (xg_scroll_callback): Parameter list changed,
223 use parameter GtkScrollType to determine scroll/line/page.
224 Only allow dragging if a button < 4 is grabbed (bug #5177).
225 (xg_end_scroll_callback): New function.
226 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
227 xg_create_scroll_bar.
228
229 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
230 (scroll_end_callback): Remove.
231 (xg_create_scroll_bar): Add parameter end_callback, bind it to
232 button-release-event. Replace value-changed event with change-value,
233 bug #5177,
234 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
235 bug #5177.
236
237 * gtkutil.h (XG_LAST_SB_DATA): Remove.
238 (xg_create_scroll_bar): Add GCallback end_callback.
239
223e5fc6
JD
240 * xftfont.c (QClcdfilter): New variable.
241 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
242 (syms_of_xftfont): Initialize QClcdfilter.
243
3c055b77
JD
2442009-12-12 Jan Djärv <jan.h.d@swipnet.se>
245
246 * xsettings.c (struct xsettings): Add member seen.
247 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 248 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
249 (apply_xft_settings): Only update Xft settings with what member seen
250 indicates as new.
251
05fe33ff
EZ
2522009-12-12 Eli Zaretskii <eliz@gnu.org>
253
254 * dispextern.h (struct text_pos): Use EMACS_INT;
255 (struct glyph): Use EMACS_INT for charpos.
256 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
257 region_beg_charpos, region_end_charpos,
258 redisplay_end_trigger_charpos, and also for
259 iterator_stack_entry.end_charpos and
260 iterator_stack_entry.stop_charpos.
261
e8d7886a
JD
2622009-12-12 Jan Djärv <jan.h.d@swipnet.se>
263
5ce6e4f4 264 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
265 (xg_create_scroll_bar): Call scroll_end_callback on button release
266 event (bug #5177).
267 (xg_event_is_for_scrollbar): != replaced with ==.
268
d0db2ec8
KH
2692009-12-12 Kenichi Handa <handa@m17n.org>
270
271 * ftfont.c (struct ftfont_info): New member matrix.
272 (ftfont_open): Setup xftfont_info->matrix.
273 (MFLTFontFT): New member matrix.
274 (FLOOR, CEIL, ROUND): New macros.
275 (ftfont_get_metrics): Handle matrix transformation.
276 (ftfont_shape_by_flt): New arg matrix. Callers changed.
277
278 * xftfont.c (struct xftfont_info): New member matrix.
279 (xftfont_open): Setup xftfont_info->matrix.
280
2812009-12-10 Kenichi Handa <handa@m17n.org>
282
283 * xdisp.c (append_space_for_newline): Consider face-remapping.
284
2cc7b62f
AS
2852009-12-09 Andreas Schwab <schwab@linux-m68k.org>
286
b87dd913
AS
287 * xsettings.c: Include "keyboard.h".
288
eba5eb94
AS
289 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
290
2cc7b62f
AS
291 Fix implicit function declarations.
292 * cmds.c: Include "frame.h".
293 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
294 * frame.h: Move declaration of delete_frame outside of
295 HAVE_WINDOW_SYSTEM.
296
a4ef73c8
CY
2972009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
298
299 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
300
301 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
302 GTK builds.
303
944a300c
AS
3042009-12-07 Andreas Schwab <schwab@linux-m68k.org>
305
306 * unexelf.c (unexec): Don't search for .data twice.
307
022eef62
CY
3082009-12-05 Chong Yidong <cyd@stupidchicken.com>
309
426ac949
CY
310 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
311 if push failed.
312 (handle_line_prefix): Set avoid_cursor_p here. Check return value
313 of push_display_prop (Bug#5000).
314
022eef62
CY
315 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
316 value of font_list_entities (Bug#5085).
317
be95bee9
JB
3182009-12-04 Juanma Barranquero <lekktu@gmail.com>
319
320 Fix `string-to-number' to deal consistently with integers and floats.
321 * lread.c (isfloat_string): New argument ignore_trailing to accept all
322 trailing characters, not just whitespace.
323 (read1): Pass new arg 0 to keep old behavior.
324 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
325 trailing chars, as it is already done for integers. Doc fixes.
326 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
327
24c2d7ce
EZ
3282009-12-04 Eli Zaretskii <eliz@gnu.org>
329
330 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>: Delete
331 unused enumeration value.
332
7e694795
EZ
3332009-12-03 Eli Zaretskii <eliz@gnu.org>
334
335 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
336
84b31826
SM
3372009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
338
339 * process.c (Fmake_network_process): Fix up the tests for
340 "connectionless socket", so they DTRT for seqpacket sockets as well.
341
f00c449b
SM
3422009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
343
344 * process.c (Qseqpacket): New symbol.
345 (HAVE_SEQPACKET): New macro.
346 (Fmake_network_process): Accept new :type `seqpacket'.
347 (init_process): Add `seqpacket' feature when applicable.
348 (syms_of_process): Initialize Qseqpacket.
349
8096a0ff
YM
3502009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
351
352 * font.c (font_load_for_lface, font_open_by_name): Don't store name
353 if entity is Qnil.
354
3e0de07f
SM
3552009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
356
357 * print.c (print_preprocess): Preprocess the key_and_value table of
358 hashtables, even tho they're "hidden" (bug#5082).
359
abeafb2a
JD
3602009-11-29 Jan Djärv <jan.h.d@swipnet.se>
361
362 * frame.c (frame_make_pointer_invisible)
363 (frame_make_pointer_visible): Declare f before statements.
364
4bf47195
EZ
3652009-11-28 Eli Zaretskii <eliz@gnu.org>
366
367 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
368 omitted dependencies on lisp.h.
369
c525b3f2
JD
3702009-11-27 Jan Djärv <jan.h.d@swipnet.se>
371
ece2d4ed
JD
372 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
373 is NULL.
374
375 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
376
377 * frame.c (frame_make_pointer_invisible)
3e0de07f 378 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
379 frame.
380
c525b3f2
JD
381 * search.c (simple_search): Remove warning by making *p const.
382
2f00e299
DN
3832009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
384
385 * xdisp.c (power_letter): Remove duplicate const.
386
084b049b
JD
3872009-11-25 Jan Djärv <jan.h.d@swipnet.se>
388
a1fadc6f
JD
389 * term.c (delete_tty): Remove check for last terminal (bug#4970).
390
5ce6e4f4 391 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
392 defaults (bug #5025).
393
28259cac
SM
3942009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
395
396 * insdel.c (adjust_markers_for_delete): Move it in the
397 right direction! (bug#4803)
398
e8e14166
YM
3992009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
400
401 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
402
403 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
404
86677b58
GM
4052009-11-24 Glenn Morris <rgm@gnu.org>
406
407 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
408
581e51e8
JD
4092009-11-23 Jan Djärv <jan.h.d@swipnet.se>
410
cfc86c7a
JD
411 * Makefile.in: Must create deps for ecrt0.o in its rule.
412
581e51e8
JD
413 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
414 because that is what Gtk+ font dialog understands.
415
416 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
417 of Fcopy_sequence.
418 (font_open_by_name): Put name given into QCname for font-object returned.
419
420 * frame.c (x_set_font): Save original font name as frame parameter
421 font-parameter.
422
423 * xsettings.c (set_default_xft_settings): New function.
424 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
425 is found.
426
8b264ecb
AS
4272009-11-22 Andreas Schwab <schwab@linux-m68k.org>
428
429 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
430 searching backwards through multibyte buffer.
431
872870b2
JD
4322009-11-21 Jan Djärv <jan.h.d@swipnet.se>
433
434 * xterm.c: #include xgselect.h.
435 (x_initialize): Call xgselect_initialize.
436
437 * xsettings.c (something_changedCB): C++ comments => C comments.
438 (init_gconf): Do not deal with any GLib file descriptors, xg_select
439 does that now.
440
441 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
442 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
443 (scroll_bar_button_cb): Remove.
5ce6e4f4 444 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
445 event.
446 (xg_create_scroll_bar): Don't bind button-press-event and
447 button-release-event.
448
449 * process.c: Include xgselect.h if defined (USE_GTK) ||
450 defined (HAVE_GCONF).
451 (wait_reading_process_output): Call xg_select for the same condition.
452
453 * xgselect.c (xg_select): New function to better integrate with
454 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
455
456 * xgselect.h: New file, declare xg_select, xgselect_initialize.
457
458 * Makefile.in (XOBJ): Add xgselect.o.
459
62a6e103
AS
4602009-11-21 Andreas Schwab <schwab@linux-m68k.org>
461
462 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Remove
463 ignored second argument. All callers changed.
464 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
465 (RE_STRING_CHAR_AND_LENGTH): Likewise.
466 * xdisp.c (string_char_and_length): Likewise.
467
b0ca0f33
DN
4682009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
469
470 * xterm.c (x_new_font):
471 * print.c (print_object):
472 * cmds.c (Fself_insert_command): Move declarations before statements.
473
dd5a6279
CY
4742009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
475
476 * s/cygwin.h: Remove unneeded linker flags.
477
4a8e097d
JD
4782009-11-20 Jan Djärv <jan.h.d@swipnet.se>
479
0d1d0d26
JD
480 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
481
482 * xsettings.h: Declare xsettings_get_system_font.
483
484 * xsettings.c (xsettings_get_system_font): New function.
485 (init_gconf): No use initiating gconf unless we have Xft also.
486 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
487 HAVE_GCONF.
488
4a8e097d
JD
489 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
490 add a blank entry so it doesn't collapse into nothing.
491
8ab1650e
SM
4922009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
493
494 * lread.c (Funintern): Comment out last change.
495
82c602f0
RS
4962009-11-19 Richard Stallman <rms@gnu.org>
497
498 * lread.c (Funintern): Error if symbol is t or nil.
499
87e32266
SM
5002009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
501
502 * insdel.c (make_gap_larger): Don't make as many assumptions about the
503 representation of Lisp integers.
504 Reported by MJ Chan <mjchan.inbox@gmail.com>.
505
1b9ac145
AS
5062009-11-17 Andreas Schwab <schwab@linux-m68k.org>
507
508 * lisp.h: Remove declaration of Ffont_get_system_font.
509 * xfns.c: Move include of "xsettings.h".
510 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
511
dfb3c4c6
JD
5122009-11-17 Jan Djärv <jan.h.d@swipnet.se>
513
87e32266
SM
514 * xsettings.c (something_changedCB, Ffont_get_system_font):
515 Check use_system_font.
dfb3c4c6
JD
516 (syms_of_xsettings): DEFVAR font-use-system-font.
517
9370c1d8
AS
5182009-11-17 Andreas Schwab <schwab@linux-m68k.org>
519
25fe851a
AS
520 * xfns.c (x_default_font_parameter): Remove dead assignment.
521
9370c1d8
AS
522 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
523
637fa988
JD
5242009-11-17 Jan Djärv <jan.h.d@swipnet.se>
525
87e32266 526 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 527 not have FC_LCD_*. #define them if not there.
a6eb20d8 528
87e32266 529 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 530
637fa988
JD
531 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
532
533 * xterm.c (handle_one_xevent): Call xft_settings_event for
534 ClientMessage, PropertyNotify and DestroyNotify.
535 (x_term_init): If we have XFT, get DPI from Xft.dpi.
536 Call xsettings_initialize.
537
538 * xftfont.c (xftfont_fix_match): New function.
539 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
540 Call xftfont_fix_match after XftFontMatch.
541
542 * xfont.c (xfont_driver): Initialize all members.
543
87e32266
SM
544 * xfns.c (x_default_font_parameter):
545 Try font from Ffont_get_system_font.
637fa988
JD
546 Do not get font from x_default_parameter if we got one from
547 Ffont_get_system_font.
87e32266 548 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
549
550 * w32font.c (w32font_driver): Initialize all members.
551
552 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
553
554 * lisp.h: Declare syms_of_xsettings.
555
87e32266
SM
556 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
557 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
558
559 * ftfont.c (ftfont_filter_properties): New function.
560
561 * frame.c (x_set_font): Remove unused variable lval.
562
87e32266 563 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
564
565 * font.c (font_put_extra): Don't return if val is nil, it means
566 boolean option is off.
567 (font_parse_fcname): Collect all extra properties in extra_props
568 and call filter_properties for all drivers with extra_props and
569 font as parameter.
87e32266
SM
570 (font_open_entity): Do not use cache, it does not pick up new
571 fontconfig settings like hinting.
637fa988
JD
572 (font_load_for_lface): If spec had a name in it, store it in entity.
573
574 * emacs.c (main): Call syms_of_xsettings
575
576 * config.in: HAVE_GCONF is new.
577
578 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
579 xsettings.o is new.
580
5a942932
KH
5812009-11-17 Kenichi Handa <handa@m17n.org>
582
583 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
584 back to the default font in case that no suitable font is found.
585
b7c7a4d1
SM
5862009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
587
588 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
589 Suggested by Chad Brown <yandros@mit.edu>.
590 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
591
072f1e39
JD
5922009-11-16 Jan Djärv <jan.h.d@swipnet.se>
593
594 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
595
5d1e70a2
AS
5962009-11-14 Andreas Schwab <schwab@linux-m68k.org>
597
87e32266 598 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 599
a53cfbe5
JD
6002009-11-14 Jan Djärv <jan.h.d@swipnet.se>
601
473a99b7
JD
602 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
603 has a parent.
604
a53cfbe5 605 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 606 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
607
608 * config.in: Generated (AUTO_DEPEND).
609
f04bb9b2
MA
6102009-11-13 Michael Albinus <michael.albinus@gmx.de>
611
b7c7a4d1 612 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
613 Vdbus_registered_functions_table, because it contains also
614 properties. Fix docstring.
b7c7a4d1 615 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 616
8f11f7ec
SM
6172009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
618
619 * alloc.c (mark_object): Don't reprocess marked strings.
620 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
621 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
622
8a605fe8
KH
6232009-11-13 Kenichi Handa <handa@m17n.org>
624
8f11f7ec 625 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
626 semantics of Vword_combining_categories.
627 (Vword_combining_categories): Describe the slight change of the
628 semantics.
629
241c4680
EZ
6302009-11-13 Eli Zaretskii <eliz@gnu.org>
631
632 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
633
634 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
635
5d58e44c
SM
6362009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
637
638 * xdisp.c (syms_of_xdisp): Fix typo in last change.
639
5e13f9d3
JB
6402009-11-12 Juanma Barranquero <lekktu@gmail.com>
641
642 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
643
cf54c754
DR
6442009-11-11 David Reitter <david.reitter@gmail.com>
645
646 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
647 variables to fix 2009-11-09 change.
648
a4ada374
DN
6492009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
650
91433552
DN
651 * process.c (ifflag_def): Make flag_sym constant.
652 (Fnetwork_interface_info): Use a constant pointer.
653 (ifflag_table):
654 * xfns.c (cursor_bits):
655 * xdisp.c (power_letter):
656 * termcap.c (speeds, esctab):
657 * sysdep.c (baud_convert):
658 * keyboard.c (lispy_accent_codes, modifier_names):
659 * image.c (xbm_format, xpm_format, pbm_format, png_format)
660 (jpeg_format, tiff_format, gif_format, svg_format)
661 (interlace_start, interlace_increment, gs_format):
662 * gtkutil.c (separator_names):
663 * fringe.c (swap_nibble):
664 * fns.c (base64_value_to_char, base64_char_to_value):
665 * fileio.c (make_temp_name_tbl):
666 * coding.c (suffixes): Make constant.
667
f4265f6c
DN
668 * frame.c (make_initial_frame):
669 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
670 build_string.
671 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
672
04420943
DN
673 * s/freebsd.h:
674 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
675
0a5d24ae
DN
676 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
677 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
678
a4ada374
DN
679 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
680 * xterm.c (syms_of_xterm):
681 * xfaces.c (syms_of_xfaces):
682 * xdisp.c (syms_of_xdisp):
683 * lread.c (syms_of_lread):
684 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
685 build_string.
91433552 686
a4ada374
DN
687 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
688
af98fc7f
SM
6892009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
690
8ab1650e 691 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 692
e90292a9
JD
6932009-11-10 Jan Djärv <jan.h.d@swipnet.se>
694
695 * keyboard.h: Declare timer_check.
696
697 * keyboard.c (timer_check_2): New function that does what the old
698 timer_check did.
699 (timer_check): Call timer_check_2 until -1 or a non-zero time is
700 returned, i.e. don't return -1 with timers pending.
701
702 * process.c: Remove extern declaration of timer_check.
703
704 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
705 even if timer_check returned -1.
706
af98fc7f
SM
707 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
708 xg_dialog_data.
e90292a9
JD
709 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
710 the event loop.
711 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
712 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
713 Destroy the dialog after xg_dialog_run.
714
045b83c0
SM
7152009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
716
717 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
718
1fb99a3a
JD
7192009-11-10 Jan Djärv <jan.h.d@swipnet.se>
720
721 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
722
04e452cb
JB
7232009-11-09 Juanma Barranquero <lekktu@gmail.com>
724
725 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
726
ef7417fd
SM
7272009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
728
729 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
730 w32menu.c, and nsmenu.m.
731 Simplify the obsolete case where position is nil.
732 (cleanup_popup_menu): New function, moved from nsmenu.m.
733 (struct skp): Remove slot `notreal'.
734 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
735 adjust callers.
736 (single_menu_item): Adjust call to parse_menu_item.
737 (syms_of_menu): Defsubr x-popup-menu.
738 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
739 (keymap_panes): Don't export any more.
740 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
741 (xmenu_show): Declare.
742 * keyboard.c (parse_menu_item): Remove arg `notreal'.
743 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
744 * keyboard.h (parse_menu_item): Update declaration.
745 * xmenu.c (Fx_popup_menu): Remove.
746 (syms_of_xmenu): Don't defsubr x-popup-menu.
747 * w32menu.c (Fx_popup_menu): Remove.
748 (syms_of_w32menu): Don't defsubr x-popup-menu.
749 * nsmenu.m (cleanup_popup_menu): Remove.
750 (ns_menu_show): Rename from ns_popup_menu and remove all the code
751 moved to menu.c's Fx_popup_menu.
752 (Fx_popup_menu): Remove.
753 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
754 menu_items (it's done in menu.c already).
755
424d6179
SM
7562009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
757
758 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
759 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
760
c0df13a6 7612009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
762
763 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 764 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
765 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
766 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
767
2de9f71c
SM
7682009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
769
770 Let integers use up 2 tags to give them one extra bit and thus double
771 their range.
772 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
773 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
774 New macros.
775 (enum Lisp_Type): Use them. Give explicit values.
776 (Lisp_Type_Limit): Remove.
777 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
778 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
779 Pay attention to USE_2_TAGS_FOR_INTS.
780 (INTEGERP): Use LISP_INT_TAG_P.
781 * fns.c (internal_equal): Simplify the default case.
782 (sxhash): Use case_Lisp_Int.
783 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
784 any more.
785 (Ftype_of): Use case_Lisp_Int.
786 (store_symval_forwarding): Take into account the fact that Ints can
787 now have more than one tag.
788 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
789 buffer_slot_type_mismatch):
790 * xfaces.c (face_attr_equal_p):
791 * print.c (print_object):
792 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
793 Use case_Lisp_Int.
794
323637a2
EZ
7952009-11-06 Eli Zaretskii <eliz@gnu.org>
796
7ac65b38
EZ
797 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
798
323637a2
EZ
799 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
800 warning.
801
e511451f
JD
8022009-11-06 Jan Djärv <jan.h.d@swipnet.se>
803
804 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
805
806 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
807
808 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
809 ButtonPressRelease and MotionNotify (bug#4870).
810
5e2327cf
DN
8112009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
812
5adc433e
DN
813 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
814
d67b4f80
DN
815 * xterm.c (syms_of_xterm):
816 * xselect.c (syms_of_xselect):
817 * xmenu.c (syms_of_xmenu):
818 * xfns.c (syms_of_xfns):
819 * xfaces.c (syms_of_xfaces):
820 * xdisp.c (syms_of_xdisp):
821 * window.c (syms_of_window):
822 * w32fns.c (syms_of_w32fns):
823 * undo.c (syms_of_undo):
824 * textprop.c (syms_of_textprop):
825 * terminal.c (syms_of_terminal):
826 * syntax.c (syms_of_syntax):
827 * sound.c (syms_of_sound):
828 * search.c (syms_of_search):
829 * print.c (syms_of_print):
830 * minibuf.c (syms_of_minibuf):
831 * macros.c (syms_of_macros):
832 * keymap.c (syms_of_keymap, initial_define_key)
833 (initial_define_lispy_key):
834 * keyboard.c (syms_of_keyboard):
835 * insdel.c (syms_of_insdel):
836 * image.c (syms_of_image):
837 * fringe.c (syms_of_fringe):
838 * frame.c (syms_of_frame):
839 * fontset.c (syms_of_fontset):
840 * fns.c (syms_of_fns):
841 * fns.c (syms_of_fns):
842 * fileio.c (syms_of_fileio):
843 * fileio.c (syms_of_fileio):
844 * eval.c (syms_of_eval):
845 * doc.c (syms_of_doc):
846 * dispnew.c (syms_of_display):
847 * dired.c (syms_of_dired):
848 * dbusbind.c (syms_of_dbusbind):
849 * data.c (syms_of_data):
850 * composite.c (syms_of_composite):
851 * coding.c (syms_of_coding):
852 * cmds.c (syms_of_cmds):
853 * charset.c (define_charset_internal, syms_of_character):
854 * ccl.c (syms_of_ccl):
855 * category.c (syms_of_category, init_category_once):
856 * casetab.c (syms_of_casetab):
857 * casefiddle.c (syms_of_casefiddle):
858 * callint.c (syms_of_callint):
859 * bytecode.c (syms_of_bytecode):
860 * buffer.c (keys_of_buffer, syms_of_buffer):
861 * alloc.c (syms_of_alloc):
862 * process.c (syms_of_process, init_process):
863 * lread.c (syms_of_lread, init_obarray):
864 * font.c (build_style_table):
865 * emacs.c (syms_of_emacs, main): Replace calls to intern with
866 intern_c_string, calls to make_pure_string with
867 make_pure_c_string. Use pure_cons instead of Fcons.
868
5e2327cf
DN
869 * process.c (socket_options): Make it const.
870 (set_socket_option, init_process): Use a const pointer.
871
872 * lread.c (intern_c_string): New function.
873 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
874 (defvar_int): Uset it. Make the name const char*.
875
876 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
877 (defvar_int): Update prototypes.
878 (DEFUN, EXFUN): Support for prototypes is now required.
879 (intern_c_string): New prototype.
880 (struct Lisp_Subr): Make symbol_name constant.
881
882 * font.c (struct table_entry): Remove unused member. Make NAMES
883 constant.
884 (weight_table, slant_table, width_table): Make constant.
885
886 * emacs.c (struct standard_args): Make name and longname constant.
887
888 * character.h (DEFSYM): Use intern_c_string.
889
a56eaaef
DN
8902009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
891
892 * alloc.c (make_pure_c_string): New function.
893
894 * eval.c (Fautoload): Purecopy all arguments.
895
f6a07420
KH
8962009-11-05 Kenichi Handa <handa@m17n.org>
897
898 * fileio.c (Finsert_file_contents): Be sure set coding-system of
899 the buffer in case of replace.
900
5d28d4b1
DN
9012009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
902
903 * puresize.h (BASE_PURESIZE): Increase to 1620000.
904
b349d111
SM
9052009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
906
d528b1ce
SM
907 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
908 when applicable (bug#4851).
909
b349d111
SM
910 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
911 (P_): Support for prototypes is now required.
912
c38eb027
CY
9132009-10-31 Chong Yidong <cyd@stupidchicken.com>
914
915 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
916 (Bug#4827).
917
0405f8d9
EZ
9182009-10-30 Eli Zaretskii <eliz@gnu.org>
919
d528b1ce 920 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 921
ca0a881a
DN
9222009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
923
924 * puresize.h (BASE_PURESIZE): Increase to 1470000.
925
d528b1ce
SM
926 * lread.c (Fload): Purecopy the file name when building
927 Vpreloaded_file_list.
ca0a881a 928
47e0e0e4
JR
9292009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
930
931 * w32fns.c (syms_of_w32fns): Change default value of
932 w32-scroll-lock-modifier to nil. (Bug#2827)
933
057bce6f
JB
9342009-10-26 Juanma Barranquero <lekktu@gmail.com>
935
782a943e 936 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 937
242bc74c
AS
9382009-10-26 Andreas Schwab <schwab@redhat.com>
939
940 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
941
522d013a
JB
9422009-10-26 Juanma Barranquero <lekktu@gmail.com>
943
944 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
945 For delta < 0, skip check that only makes sense when the mini-window
946 is going to be enlarged. (Bug#4534)
947
18060980
CY
9482009-10-25 Chong Yidong <cyd@stupidchicken.com>
949
950 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
951 string in menu maps (Bug#4471).
952
fec8f0fe
CY
9532009-10-24 Chong Yidong <cyd@stupidchicken.com>
954
955 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
956 FRAME_NS_VIEW on terminal frames (Bug#4765).
957
10d66ec0
AS
9582009-10-24 Andreas Schwab <schwab@linux-m68k.org>
959
1cae01f7
AS
960 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
961 DBUS_TYPE_UINTnn separately to get proper sign extension.
962
58a12889
AS
963 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
964 can properly handle unsigned types.
d528b1ce 965 (make_uid, make_gid): Remove.
58a12889 966
987c9327
AS
967 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
968 types again.
969
522d013a 970 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
971 (system_process_attributes): Likewise.
972
905a9ed3
DN
9732009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
974
975 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
976
977 * eval.c (Fautoload): Purecopy the filename. Simplify.
978
979 * category.c (Fdefine_category): Purecopy docstring.
980
a599b3e8
AS
9812009-10-23 Andreas Schwab <schwab@linux-m68k.org>
982
7b792fc9
AS
983 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
984
a599b3e8
AS
985 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
986
b35ac83e
CY
9872009-10-23 Chong Yidong <cyd@stupidchicken.com>
988
989 * window.c (Fwindow_edges, Fwindow_pixel_edges)
990 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
991 (Bug#4775).
992
e8903e00
SM
9932009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
994
995 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
996 (init_fileio_once):
997 * lisp.h (init_fileio_once): Remove.
998 * emacs.c (main): Don't call init_fileio_once.
999
8f43cbf3
DN
10002009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
1001
1002 * puresize.h (BASE_PURESIZE): Increase to 1430000.
1003
26898943
AS
10042009-10-21 Andreas Schwab <schwab@linux-m68k.org>
1005
1006 * doprnt.c (doprnt): Fix overflow check.
1007
5c646d5a
JD
10082009-10-21 Jan Djärv <jan.h.d@swipnet.se>
1009
3132a7ea
JD
1010 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
1011
5c646d5a
JD
1012 * xterm.h (x_wait_for_event): Declare it.
1013
1014 * xterm.c (pending_event_wait): New variable.
1015 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
1016 see pending_event_wait.eventtype.
1017 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
1018 (x_new_font): Call change_frame_size with new rows/columns before we
1019 try to resize the frame.
5c646d5a 1020 (x_wait_for_event): New function.
d528b1ce
SM
1021 (x_set_window_size_1): Don't change gravity unless change_gravity
1022 is set.
5c646d5a
JD
1023 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
1024 don't change frame size, instead wait for the ConfigureNotify.
1025 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
1026 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
1027 (x_initialize): Initialize pending_event_wait.
1028
1029 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
1030 size.
1031
1032 * widget.c (EmacsFrameSetValues): Add comment.
1033 (EmacsFrameSetCharSize): Just call x_set_window_size.
1034
1035 * gtkutil.c (xg_frame_set_char_size): Flush events and call
1036 x_wait_for_event.
d528b1ce 1037 (flush_and_sync): Remove again.
5c646d5a
JD
1038 (xg_get_font_name): Suggest monospace if no previous font is known.
1039
e9c1637d
SM
10402009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
1041
1042 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 1043 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 1044
5a72cccb
YM
10452009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1046
1047 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
1048 processing pending events when event is filtered for input method.
ab04798f 1049 (Bug#3681)
5a72cccb 1050
2629aa37
JB
10512009-10-20 Juanma Barranquero <lekktu@gmail.com>
1052
1053 * fns.c: Add #endif accidentally removed in previous change.
1054
c3417a74
DN
10552009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1056
1057 * fns.c: Remove code for unsupported system: MAC_OS.
1058 * image.c: Likewise. Include setjmp.h.
1059
9685cef2
JD
10602009-10-19 Jan Djärv <jan.h.d@swipnet.se>
1061
1062 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
1063 pixel -1 (bug #4742).
1064
d7306fe6
DN
10652009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1066
019d2c4c
DN
1067 * process.c (create_pty): Remove conditionals for no longer
1068 supported systems: UNIPLUS and RTU.
1069
ee6bacd4
DN
1070 * xterm.c:
1071 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
1072
d7306fe6
DN
1073 * alloc.c: Do not define struct catchtag.
1074 * eval.c: Move struct catchtag definition ...
1075 * lisp.h: ... here.
1076
1077 * image.c: Move png.h #include earlier to avoid warnings.
1078
1079 * xterm.c:
1080 * xsmfns.c:
1081 * xselect.c:
1082 * xrdb.c:
1083 * xmenu.c:
1084 * xftfont.c:
1085 * xfont.c:
1086 * xfns.c:
1087 * xfaces.c:
1088 * xdisp.c:
1089 * window.c:
1090 * widget.c:
1091 * w32xfns.c:
1092 * w32uniscribe.c:
1093 * w32term.c:
1094 * w32select.c:
1095 * w32reg.c:
1096 * w32proc.c:
1097 * w32menu.c:
1098 * w32inevt.c:
1099 * w32heap.c:
1100 * w32font.c:
1101 * w32fns.c:
1102 * w32console.c:
1103 * w32.c:
1104 * w16select.c:
1105 * vm-limit.c:
1106 * unexsol.c:
1107 * unexec.c:
1108 * unexcw.c:
1109 * unexaix.c:
1110 * undo.c:
1111 * tparam.c:
1112 * textprop.c:
1113 * terminfo.c:
1114 * terminal.c:
1115 * termcap.c:
1116 * term.c:
1117 * syntax.c:
1118 * sound.c:
1119 * sheap.c:
1120 * search.c:
1121 * scroll.c:
1122 * region-cache.c:
1123 * regex.c:
1124 * ralloc.c:
1125 * process.c:
1126 * print.c:
b024548b
DN
1127 * nsterm.m:
1128 * nsselect.m:
1129 * nsmenu.m:
1130 * nsimage.m:
1131 * nsfont.m:
1132 * nsfns.m:
d7306fe6
DN
1133 * msdos.c:
1134 * minibuf.c:
1135 * menu.c:
1136 * marker.c:
1137 * macros.c:
1138 * keymap.c:
1139 * keyboard.c:
1140 * intervals.c:
1141 * insdel.c:
1142 * indent.c:
1143 * gtkutil.c:
1144 * ftxfont.c:
1145 * ftfont.c:
1146 * fringe.c:
1147 * frame.c:
1148 * fontset.c:
1149 * font.c:
1150 * fns.c:
1151 * floatfns.c:
1152 * filelock.c:
1153 * fileio.c:
1154 * emacs.c:
1155 * editfns.c:
1156 * dosfns.c:
1157 * doprnt.c:
1158 * doc.c:
1159 * dispnew.c:
1160 * dired.c:
1161 * dbusbind.c:
1162 * data.c:
1163 * composite.c:
1164 * coding.c:
1165 * cmds.c:
1166 * cm.c:
1167 * chartab.c:
1168 * charset.c:
1169 * character.c:
1170 * ccl.c:
1171 * category.c:
1172 * casetab.c:
1173 * casefiddle.c:
1174 * callproc.c:
1175 * callint.c:
1176 * bytecode.c:
1177 * buffer.c:
1178 * atimer.c: Include setjmp.h. (Bug#4643)
1179
fd5f21e6
SM
11802009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
1181
4c0354d7
SM
1182 Remove leftover table unibyte_to_multibyte_table.
1183 * character.c (unibyte_to_multibyte_table): Remove.
1184 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
1185 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
1186 * character.h (UNIBYTE_TO_CHAR): New macro.
1187 (MAKE_CHAR_MULTIBYTE): Use it.
1188 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
1189 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
1190 (message_dolog, set_message_1):
1191 * search.c (Freplace_match):
1192 * editfns.c (Fcompare_buffer_substrings):
1193 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
1194 (concat):
1195 * insdel.c (copy_text, count_size_as_multibyte):
1196 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
1197 * term.c (produce_glyphs):
1198 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
1199 * regex.c (RE_CHAR_TO_MULTIBYTE):
1200 * cmds.c (internal_self_insert):
1201 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
1202
fd5f21e6
SM
1203 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
1204
4418646e
DN
12052009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
1206
1207 * puresize.h (BASE_PURESIZE): Increase to 1310000.
1208
35f5c1d2
JB
12092009-10-16 Juanma Barranquero <lekktu@gmail.com>
1210
1211 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
1212
a0cd8f6b
AR
12132009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
1214
1215 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
1216 still needed under Tiger.
1217
1218 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
1219
1220 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
1221 __Apple__.
1222
1223 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
1224
01a8d3fa
KH
12252009-10-15 Kenichi Handa <handa@m17n.org>
1226
1227 * print.c (print_object): Escape a symbol like "2E10" too.
1228
bf6c75c9 12292009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
1230
1231 Cleanups and changes for 64-bit compile under Snow Leopard.
1232 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
1233
1234 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
1235
c5959062 1236 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
1237 (ns_findfonts, nsfont_list_family): Use long format in printf, and
1238 cast argument.
1239 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 1240 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
1241
1242 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
1243
1244 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
1245 where appropriate.
1246
1247 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
1248 where appropriate.
6e4780c5
JB
1249 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
1250 Use stringWithUTF8String.
bf6c75c9
AR
1251 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
1252
6e4780c5
JB
1253 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
1254 Add formal protocol mention to inheritance.
bf6c75c9
AR
1255 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
1256
6e4780c5
JB
1257 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
1258 Fix printf format.
bf6c75c9
AR
1259 (ns_query_color): Use CGFloat where appropriate.
1260 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
1261 (EmacsScroller-mouseDown:) Use long format in printf, and cast
1262 argument.
1263
3d87f118
AR
1264 * config.in (NS_HAVE_NSINTEGER): Drop.
1265
a95c8102
AR
1266 * dbusbind.c (dbus-method-return-internal)
1267 (dbus-method-error-internal): Use long format in printf, and cast
1268 argument.
1269
1270 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
1271 in printf, and cast argument.
1272
6873acca 1273 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
1274 cast argument.
1275
9ec6f100
GM
12762009-10-11 Glenn Morris <rgm@gnu.org>
1277
1278 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
1279
5be883cd
JD
12802009-10-08 Jan Djärv <jan.h.d@swipnet.se>
1281
1282 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
1283 menu bar with a small width so it doesn't enlarge the frame.
1284
d7a39b51
JB
12852009-10-08 Juanma Barranquero <lekktu@gmail.com>
1286
1287 * fontset.c (Fset_fontset_font): Fix typos in error messages.
1288
0c2b6f8e
GM
12892009-10-06 Glenn Morris <rgm@gnu.org>
1290
1291 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
1292 SOME_MACHINE_LISP (this enters indirectly via DOC).
1293
e02131a2
EZ
12942009-10-05 Eli Zaretskii <eliz@gnu.org>
1295
1296 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
1297
b4744254
EZ
12982009-10-04 Eli Zaretskii <eliz@gnu.org>
1299
1300 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
1301 Doc fix.
1302
dbf64827
JB
13032009-10-03 Martin Rudalics <rudalics@gmx.at>
1304
1305 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
1306
e9a0aef8
MA
13072009-10-02 Michael Albinus <michael.albinus@gmx.de>
1308
d528b1ce 1309 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
1310 used anymore outside fileio.c.
1311
1312 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
1313
64eb2b56
JB
13142009-10-01 Juanma Barranquero <lekktu@gmail.com>
1315
1316 * lisp.h (Qdelete_directory_internal):
1317 Declare, instead of Qdelete_directory.
1318
1319 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1320
9d28c33e
SM
13212009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1322
1323 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1324
9d8f3bd9
MA
13252009-10-01 Michael Albinus <michael.albinus@gmx.de>
1326
9d28c33e 1327 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
1328 Fdelete_directory. It is not a command anymore. It has no file
1329 name handler.
1330
9694740b
SM
13312009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1332
1333 * xdisp.c (get_next_display_element): Use an enum in last change.
1334
748e162f
KH
13352009-09-28 Kenichi Handa <handa@m17n.org>
1336
9694740b 1337 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
1338 unibyte_display_via_language_environment in handling
1339 Vnobreak_char_display.
1340
17efd58d
AR
13412009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1342
1343 * nsterm.h (ns_app_name): New extern variable.
1344
1345 * nsterm.m (ns_app_name): New variable.
1346 (ns_term_init): Set and use it.
1347 (ns_term_shutdown): Use it.
1348
1349 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1350 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1351
1352 * nsfns.m (ns_set_name_iconic, ns_set_name)
1353 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1354 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1355
9694740b
SM
1356 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1357 Remove double-casting in client_data comparison.
31c2d412 1358
3208cb35
YM
13592009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1360
1361 * keyboard.c (make_lispy_event): Remember last wheel direction.
1362 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1363
b7d552d6
GM
13642009-09-26 Glenn Morris <rgm@gnu.org>
1365
1366 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1367 internal.elc. Add term/pc-win.elc.
1368 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1369 term/x-win.elc.
1370 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1371 term/w32-win.elc.
1372 (NS_SUPPORT): New.
1373 (lisp): Add NS_SUPPORT.
1374 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1375
4ff670a8
DR
13762009-09-25 David Reitter <david.reitter@gmail.com>
1377
1378 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1379 on Mac OS X 10.6+ (bug#4513).
1380
feabfb6c
JB
13812009-09-24 Juanma Barranquero <lekktu@gmail.com>
1382
1383 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
1384 some parts of Emacs code (like font selection) don't grok them.
1385 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 1386
de59072a
AS
13872009-09-24 Andreas Schwab <schwab@redhat.com>
1388
1389 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1390
a489517b
JB
13912009-09-24 Juanma Barranquero <lekktu@gmail.com>
1392
1393 * dired.c (Fdirectory_files): Fix typo in docstring.
1394
0592970c
AR
13952009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1396
1397 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1398 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1399 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1400 under GNUstep.
1401 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1402
1403 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1404 glyph advancement.
1405
48e8a88b
AR
14062009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1407
1408 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 1409 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
1410
1411 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1412 deleted (bug #4492).
1413
e14f0a78
AR
1414 * nsfont.m (Vns_reg_to_script): New lisp variable.
1415 (syms_of_nsfont): Declare it.
1416 (ns_registry_to_script): New function.
1417 (ns_get_req_script): Call it.
1418 (ns_findfonts): Don't give up on non-unicode registry.
1419
1420 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1421
5b650faa
SM
14222009-09-20 Tom Tromey <tromey@redhat.com>
1423
1424 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1425 batch mode (bug#4228).
1426
a489517b 14272009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
1428
1429 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 1430 carefully. (Bug #4339)
0bae4e09 1431
fcfe06f3
CY
14322009-09-18 Chong Yidong <cyd@stupidchicken.com>
1433
d798ba87 1434 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 1435
31642728
AR
14362009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1437
1438 * emacs.c (inhibit_x_resources): Update doc string for NS.
1439 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 1440 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
1441
1442 * nsterm.h (ns_no_defaults): Remove.
1443
1444 * nsterm.m (ns_no_defaults): Remove.
1445 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1446 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
1447 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1448 don't update the NSWindow itself.
1449 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 1450 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
1451
1452 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1453 ns_use_qd_smoothing.
1454
1455 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1456 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 1457 (x-close-connection): Drop PSFlush() under OS X.
a489517b 1458 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 1459
8686ac71
JB
14602009-09-17 Juanma Barranquero <lekktu@gmail.com>
1461
1462 * emacs.c (inhibit_x_resources): New variable.
1463 (main) [HAVE_NS]: Don't process --quick command line option.
1464 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1465
1466 * lisp.h (inhibit_x_resources): Declare it extern.
1467
1468 * w32reg.c (x_get_string_resource):
1469 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1470
e227ba05
EZ
14712009-09-17 Eli Zaretskii <eliz@gnu.org>
1472
362654a6
JB
1473 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1474 Add lisp/term/internal.elc.
e227ba05 1475
742d40e8
SM
14762009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1477
1478 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1479 (bug#4461).
1480
005bd5a2
DN
14812009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1482
1483 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1484
1485 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1486 (OBJECTS_MACHINE): Remove, unused.
1487
f9af9719
SM
14882009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1489
1490 * frame.c (x_get_resource_string): Remove unused.
1491
0307c7d2
JD
14922009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1493
1494 * xterm.c (x_new_font): Call change_frame_size before calling
1495 x_set_window_size, in case frame size won't change.
1496
1497 * frame.c (x_set_font): Remove dead code.
1498
428b13d6
SM
14992009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1500
1501 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1502
5766c380
SM
15032009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1504
1505 * lread.c (Fload): Don't output a message after loading an obsolete
1506 package any more (done in Lisp now).
1507
2fd0161b
CY
15082009-09-12 Chong Yidong <cyd@stupidchicken.com>
1509
1510 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1511
bc5e75b6
SM
15122009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1513
1514 * keymap.c (Fwhere_is_internal): Use nconc2.
1515
c31c985e
AM
15162009-09-11 Alan Mackenzie <acm@muc.de>
1517
1518 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1519 batch mode.
1520
78012bd2
AS
15212009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1522
1523 * xdisp.c (display_mode_element): Detect cycles.
1524
9d889332
SM
15252009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1526
1527 * keymap.c (where_is_internal): Don't erroneously return nil right after
1528 filling the cache.
1529 (where_is_internal_1): Fix up typo.
1530
7ab5d780
GM
15312009-09-11 Glenn Morris <rgm@gnu.org>
1532
1533 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1534 share a common doc-string.
1535
5238a749
SM
15362009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1537
66d77eda
SM
1538 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1539 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1540
5238a749
SM
1541 * keymap.c (QCadvertised_binding): New constant.
1542 (syms_of_keymap): Initialize it.
1543 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1544 if applicable.
1545
19f48442
SM
15462009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1547
50d4ba39
SM
1548 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1549 (parse_menu_item): Streamline since bindings are recomputed all the
1550 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1551 more and don't support lmenu's menu-alias any more either.
1552
a88a5372
SM
1553 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1554 (where_is_internal): Strip it down to only traverse the keymaps.
1555 Move the cache handling from Fwhere_is_internal to here.
1556 (Fwhere_is_internal): Move the handling of remapping and the choice of
1557 the best binding from where_is_internal to here.
1558 Unify the cached/noncached paths, so remapping is also handled
1559 correctly when the cache is used, and so the cache can be used to
1560 speed up remap-handling when applicable.
1561 Give preference to non-remapped bindings.
1562 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1563 non-remapped bindings.
1564 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1565 command remapping.
1566
19f48442
SM
1567 * xdisp.c (display_mode_element): Move list length limit from 50 to
1568 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1569
599498c3 15702009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1571
1572 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1573
f9b7b5ac
SM
15742009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1575
a53af587
JB
1576 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1577 (Bug#4334)
1578
f9b7b5ac
SM
1579 * keymap.c (where_is_internal): Filter out shadowed remappings.
1580 Assume that where_is_internal returns unshadowed bindings to simplify
1581 the code and get rid of the gotos. Use ASIZE.
1582
04f4b72d
JD
15832009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1584
4da146f2
JD
1585 * xterm.c (x_focus_changed): If we get a focusout and pointer
1586 is invisible, make it visible.
1587
04f4b72d
JD
1588 * xterm.h: Remove condition for declaration of
1589 x_*_window_to_frame.
1590
7cef7ce3
SM
15912009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1592
1593 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1594 initial terminal as well.
1595
a54fa5b7
JD
15962009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1597
1598 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1599 x_menubar_window_to_frame.
a54fa5b7
JD
1600
1601 * xterm.c: Remove declarations also in xterm.h
1602 (XTmouse_position): Do not return valid positions
1603 for clicks in the menubar and the toolbar for Gtk+.
1604
1605 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1606 if the widget for the event has the same top level as a frame,
1607 return the frame.
1608 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1609 internal windows, bug #4122.
1610 (x_non_menubar_window_to_frame): Remove.
1611
5a021dd0
GM
16122009-09-02 Glenn Morris <rgm@gnu.org>
1613
1614 * buffer.c (default-major-mode): Move most of the doc from here...
1615 (major-mode): ... to here.
1616
548fe2f3
NR
16172009-08-30 Nick Roberts <nickrob@snap.net.nz>
1618
1619 * process.c (wait_reading_process_output): Keep the descriptor
1620 when pty is used by a non-child process, e.g., in I/O buffer of
1621 GDB this allows inferior to be restarted.
1622
e0840eef
EZ
16232009-08-29 Eli Zaretskii <eliz@gnu.org>
1624
1625 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1626 both branches into one.
1627
82e98df4
SM
16282009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1629
1630 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1631 (main): Use enable-multibyte-characters rather than
1632 default-enable-multibyte-characters. Output a warning message when
1633 running a unibyte session.
1634
890617cb
YM
16352009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1636
1637 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1638 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1639 (copy_data_segment): Also copy __program_vars section.
1640 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1641 (dump_it) [LC_DYLD_INFO]: Use it.
1642
1643 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1644
e7adeadc
EZ
16452009-08-28 Eli Zaretskii <eliz@gnu.org>
1646
1647 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1648 $(SRC)/buildobj.h.
1649 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1650 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1651 $(SRC)/buildobj.h.
1652 (clean): Add buildobj.h.
1653
3ed8bbdc
TZ
16542009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1655
1656 * print.c (print_object): Set escapeflag to 1 when printing
1657 hashtable keys and values.
1658
155a6764
SM
16592009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1660
1661 * lread.c (read_integer): Use doubles (and potentially return a float
1662 number) as we do in string-to-number.
1663 (read1): Use strtol to read integers, signal errors on strtol's
1664 overflow and use floats if strtol's output is too large for
1665 Elisp integers.
1666
877610de
EZ
16672009-08-27 Eli Zaretskii <eliz@gnu.org>
1668
1669 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1670 (make-buildobj-SH): Fix last change.
1671 (SRC): Move to before where it's first used.
1672
ef73e7be
KH
16732009-08-27 Kenichi Handa <handa@m17n.org>
1674
550c8289
KH
1675 * process.c (send_process): Use encode_coding_object instead of
1676 encode_coding_string to perform eol-conversion even if the string
1677 is unibyte.
1678
60afa08d
KH
1679 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1680 character.
1681
ef73e7be 1682 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1683 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1684
7b3a82d7
DN
16852009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1686
5654bf63
DN
1687 * callproc.c (Fcall_process): Remove always true #if.
1688
7b3a82d7
DN
1689 * lisp.h: Replace #if 0 code for checking with text pointing to
1690 the --enable-checking configure flag.
1691
1692 * emacs.c (main): Mention the --enable-profiling configure flag
1693 instead of using CFLAGS.
1694
878bde49
KR
16952009-08-26 Ken Raeburn <raeburn@raeburn.org>
1696
1697 * Makefile.in (buildobj.h): New target.
1698 (doc.o): Depend on it.
1699 (temacs${EXEEXT}): Don't generate buildobj.lst.
1700 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1701 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1702 ($(BLD)/doc.$(O)): Depend on it.
1703 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1704 provided by Eli Zaretskii.)
1705 ($(TEMACS)): Don't generate buildobj.lst.
1706 * doc.c: Include buildobj.h.
1707 (buildobj): New static variable.
1708 (Fsnarf_documentation): Use it, instead of opening and reading
1709 buildobj.lst.
1710
1574224c
MA
17112009-08-25 Michael Albinus <michael.albinus@gmx.de>
1712
1713 * dbusbind.c (Fdbus_call_method)
1714 (Fdbus_call_method_asynchronously): Use English numeric format for
1715 timeout values in doc string.
1716
d9da2f45
KH
17172009-08-25 Kenichi Handa <handa@m17n.org>
1718
ef73e7be
KH
1719 * alloc.c (mark_char_table): New function.
1720 (mark_object): Use mark_char_table for a char-table.
1721
d9da2f45
KH
1722 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1723 (CHAR_TABLE_REF): Use it.
1724
c8edcc01
KR
17252009-08-23 Ken Raeburn <raeburn@raeburn.org>
1726
1727 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1728 before invoking the newly build emacs to check for load-path
1729 shadowing.
1730
7763401b
GM
17312009-08-22 Glenn Morris <rgm@gnu.org>
1732
1733 * Makefile.in (bootstrap_exe): New variable.
1734 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1735 Use ${bootstrap_exe}.
1736
729eadda
EZ
17372009-08-22 Eli Zaretskii <eliz@gnu.org>
1738
1739 * coding.h (encode_coding_string): Don't encode unibyte strings.
1740 (Bug#4047)
1741
eb4c6ace
MA
17422009-08-22 Michael Albinus <michael.albinus@gmx.de>
1743
1744 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1745
1746 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1747 intended as hotfix only.
1748 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1749
36e34d1b
AR
17502009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1751
1752 * nsterm.m (ns_get_color): Update documentation properly for last
1753 change, and clean up loose ends in the code left by it. Fix
1754 longstanding bug with 16-bit hex parsing, and add support for
1755 yet another X11 format (rgb:r/g/b) for compatibility.
1756 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1757 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1758
f983eb8a
SM
17592009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1760
1761 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1762
3f56d3c6
MA
17632009-08-20 Michael Albinus <michael.albinus@gmx.de>
1764
1765 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1766 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1767 (xd_initialize, xd_pending_messages): Check, whether
1768 $DBUS_SESSION_BUS_ADDRESS is set.
1769
fb641d68
YM
17702009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1771
1772 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1773
1774 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1775
cf59a374
GM
17762009-08-20 Glenn Morris <rgm@gnu.org>
1777
1778 * emacs.c (system-type): Doc fix.
1779
1373f3be
SM
17802009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1781
1782 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1783 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1784
058ed861
MA
17852009-08-18 Michael Albinus <michael.albinus@gmx.de>
1786
1373f3be
SM
1787 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1788 New functions.
058ed861
MA
1789 (xd_initialize): Revert change from 2009-08-16.
1790
563a866e 17912009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1792
1793 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1794 font-group vector, return nil.
5fc05db0 1795
e42bdf01
CY
17962009-08-17 Chong Yidong <cyd@stupidchicken.com>
1797
1798 * process.c (status_notify): Don't perform redisplay.
1799 (Fdelete_process, list_processes_1, process_send_signal):
1800 Expliticly perform redisplay.
1801 (wait_reading_process_output): Always check process status, but
1802 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1803
4230ab74
KR
18042009-08-17 Ken Raeburn <raeburn@raeburn.org>
1805
1373f3be 1806 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1807 (XFLOAT_INIT): New macro for storing a float value.
1808 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1809 * fns.c (sxhash): Copy out the value of a float in order to
1810 examine its bytes.
1811 * dbusbind.c (xd_append_arg): Likewise.
1812
4230ab74
KR
1813 * emacs.c (main): Don't call syms_of_data twice.
1814
a0645cdd
MA
18152009-08-16 Michael Albinus <michael.albinus@gmx.de>
1816
1817 * dbusbind.c (xd_initialize): Add connection file descriptor to
1818 input_wait_mask, in order to let select() detect, whether a new
1819 message has been arrived.
ca4f31ea 1820 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1821
485db0ba
MA
18222009-08-15 Michael Albinus <michael.albinus@gmx.de>
1823
1373f3be
SM
1824 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1825 New functions.
485db0ba
MA
1826
1827 * lisp.h (xd_pending_messages): Declare.
1828
1829 * keyboard.c (readable_events): Call xd_pending_messages.
1830
b5b98ff4
CY
18312009-08-15 Chong Yidong <cyd@stupidchicken.com>
1832
1373f3be 1833 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 1834
f8354c6e
CY
1835 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1836
b5b98ff4
CY
1837 * buffer.c (set_buffer_internal_1)
1838 (swap_out_buffer_local_variables): Check for unbound local
1839 variables (Bug#4138).
1840
8b9fc636
EZ
18412009-08-14 Eli Zaretskii <eliz@gnu.org>
1842
1843 * process.c (create_pty): Fix last change.
1844
ce959360
CY
18452009-08-13 Chong Yidong <cyd@stupidchicken.com>
1846
1847 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1848 (xbm_load_image): Caller changed.
64b807c9 1849 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 1850
c7baf7e9
NR
18512009-08-13 Nick Roberts <nickrob@snap.net.nz>
1852
1853 * process.c (create_pty): New function.
1854 (Fstart_process): Use it to allow Emacs to just associate a pty
1855 with the buffer. See associated change in gdb-mi.el.
1856 (list_processes_1): Deal with no program name.
1857 (start_process_unwind): Use pid == -2 to mean no process.
1858
1ac9108a
SM
18592009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1860
1861 * cmds.c (nonundocount): New global variable.
1862 (keys_of_cmds): Initialize it.
1863 (Fself_insert_command): Use it to combine upto 20 sequential chars
1864 into a single undo entry, just like the Qself_insert_command code in
1865 keyboard.c does.
1866 Call frame_make_pointer_invisible, also like the Qself_insert_command
1867 code in keyboard.c does.
1868 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1869 than its own local replacement for it.
1870
e267324c
KR
18712009-08-10 Ken Raeburn <raeburn@raeburn.org>
1872
1ac9108a 1873 * fns.c (concat): Don't re-set string length to its current value.
77437343 1874
1ac9108a
SM
1875 * coding.h (decode_coding_string, encode_coding_string):
1876 Use SBYTES macro.
f0bed503 1877
1ac9108a 1878 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
1879 (doprnt): Merge with doprnt1, discarding lispstrings code.
1880 * lisp.h (doprnt_lisp): Don't declare.
1881
416e006d
JL
18822009-08-07 Juri Linkov <juri@jurta.org>
1883
1884 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1885
6f7d5780
DN
18862009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1887
1888 * print.c (syms_of_print): Undo previous change.
1889
f19a0f5b
TZ
18902009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1891
1892 * lread.c (read1, syms_of_lread): Read hashtables back from the
1893 readable format.
1894
1895 * print.c (print_preprocess, print_object): Print hashtables fully
1896 and readably.
1897 (syms_of_print): Provide 'hashtable-print-readable.
1898
b9173dc2
AR
18992009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1900
1901 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1902 no family set.
1903 (nsfont_open): Handle case when entity has no family.
1904
1586503c
AR
19052009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1906
1907 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1908 element, not a list, for match case.
1909
087048cd
KH
19102009-07-28 Kenichi Handa <handa@m17n.org>
1911
1912 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1913 rigidly.
1914
1915 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1916 font_parse_xlfd. Check font properties more rigidly.
1917
780c2506
DN
19182009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1919
31fd7c5c
JB
1920 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1921 bsd-common.h.
780c2506 1922
a8c0cc18
KH
19232009-07-27 Kenichi Handa <handa@m17n.org>
1924
1925 * xfaces.c (face_with_height): Call font_clear_prop.
1926
4fbe2306
CY
19272009-07-26 Chong Yidong <cyd@stupidchicken.com>
1928
111d9af3
CY
1929 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
1930
1931 * xterm.c (x_term_init): Use Qx.
1932
4fbe2306
CY
1933 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
1934
1ac9108a 1935 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
1936 (ns_get_color): Revert 2009-07-16 change.
1937
beb0b7f9
EZ
19382009-07-25 Eli Zaretskii <eliz@gnu.org>
1939
1940 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 1941 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 1942
2baf5e76
KR
19432009-07-25 Ken Raeburn <raeburn@raeburn.org>
1944
1ac9108a
SM
1945 * coding.h (decode_coding_string, encode_coding_string):
1946 Use SCHARS macro.
8890e5f5 1947
2baf5e76 1948 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 1949 (load_depth): Delete.
2baf5e76
KR
1950 (Qload_in_progress): New variable.
1951 (load_unwind): Don't reference load_depth or load_in_progress.
1952 (Fload): Likewise; specbind Qload_in_progress instead.
1953 (init_lread): Don't initialize load_depth.
1954 (syms_of_lread): Initialize and protect Qload_in_progress.
1955
1395c6f5
AR
19562009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1957
1958 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
1959
4e2f36cf
AR
19602009-07-23 Yavor Doganov <yavor@gnu.org>
1961
1962 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
1963
5dd9a6f7
AR
19642009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1965
1966 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
1967 Bugs 3792, 3720, 2402.
1968 (ns_lookup_indexed_color): Check for bad index.
1969 (ns_index_color): Init unused slot to 0.
1970 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
1971 Bug 3714, possibly 3082.
5dd9a6f7 1972
c902b920
JR
19732009-07-22 Jason Rumney <jasonr@gnu.org>
1974
1ac9108a
SM
1975 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
1976 Position IME window at cursor (Bug#2570).
c902b920
JR
1977 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
1978 (globals_of_w32fns): Dynamically load functions required above.
1979
1980 * w32term.c (w32_draw_window_cursor): Send message to reposition
1981 any IME window.
1982
090101cf
CY
19832009-07-21 Chong Yidong <cyd@stupidchicken.com>
1984
1985 * fileio.c: Revert 2009-07-16 changes.
1986 (Vauto_save_include_big_deletions): New variable.
1987 (Fdo_auto_save): Disable auto-save only if
1988 auto-save-include-big-deletions is nil.
1989
e6583e3d
CY
19902009-07-21 Chong Yidong <cyd@stupidchicken.com>
1991
1992 * xdisp.c (move_it_to): For continued lines ending in a tab, take
1993 the overflowed pixels into account (Bug#3879).
1994
ece435a5
KR
19952009-07-21 Ken Raeburn <raeburn@raeburn.org>
1996
1997 * lread.c (load_depth): New variable.
1998 (Fload, load_unwind, init_lread): Set it to the load recursion
1999 depth; set load_in_progress as a simple boolean based on the
2000 current load_depth. (Bug#3892)
2001
40b2d973
AR
20022009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2003
2004 * nsfont.m (ns_has_attribute): Remove.
2005 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
2006
10be7e0d
JL
20072009-07-18 Juri Linkov <juri@jurta.org>
2008
2009 * process.c (Fset_process_query_on_exit_flag): Mention killing
2010 a buffer in docstring.
2011
fa055055
KH
20122009-07-17 Kenichi Handa <handa@m17n.org>
2013
2014 * casetab.c (shuffle): Fix the logic of setting up the cycle.
2015
042f7b69
YM
20162009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2017
2018 * nsfns.m (Fns_set_alpha): Remove function.
2019 (syms_of_nsfns): Don't defsubr it.
2020
2021 * nsterm.m (ns_get_color): Remove incompatible color formats.
2022 (ns_color_to_lisp): Generate #rrggbb color format string.
2023
4be941e3
RS
20242009-07-16 Richard Stallman <rms@gnu.org>
2025
2026 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
2027 (Fset_buffer_auto_saved): Handle save_length = -2.
2028
4e6b227d
CY
20292009-07-16 Chong Yidong <cyd@stupidchicken.com>
2030
2031 * xterm.c (Qx_gtk_map_stock): New var.
2032
2033 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
2034 of calling intern each time.
2035
a1856973
YM
20362009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2037
2038 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
2039 does tiling.
2040
2041 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
2042
497e54d8
KH
20432009-07-14 Kenichi Handa <handa@m17n.org>
2044
72d36834
KH
2045 * font.c (font_vconcat_entity_vectors): New function.
2046 (struct font_sort_data): New member font_driver_preference.
2047 (font_compare): Check font_driver_preference.
2048 (font_sort_entities): The format of the first argument changed.
2049 (font_delete_unmatched): Likewise.
2050 (font_list_entities): The return type changed.
2051 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
2052 (font_find_for_lface): Adjuste for the above changes.
2053 Don't suppress the checking of C even if the repertory supports it.
2054 (Flist_fonts): Adjust for the above changes.
72d36834 2055
1ac9108a
SM
2056 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
2057 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
2058 Reject a font who has adstyle property that is different from a
2059 langname derived from registry property.
1ac9108a 2060 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 2061
b6046155
EZ
20622009-07-13 Eli Zaretskii <eliz@gnu.org>
2063
2064 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
2065 local copy of dirfilename.
2066
fb6b6049
KH
20672009-07-13 Kenichi Handa <handa@m17n.org>
2068
e2402a5e
KH
2069 * chartab.c (sub_char_table_ref_and_range): Fix the range check
2070 against max_char.
2071
fb6b6049
KH
2072 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
2073 calling XSYMBOL (sym).
2074
65156807
EZ
20752009-07-11 Eli Zaretskii <eliz@gnu.org>
2076
1ac9108a
SM
2077 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
2078 New function.
2079 (directory_files_internal) [WINDOWSNT]:
2080 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
2081 the filesystem of the directory is fast or slow.
2082
2083 * w32.c (logon_network_drive): Don't assume PATH is an absolute
2084 file name.
2085 (is_slow_fs): New function.
2086 (stat): Use it to determine whether to issue more system calls to
2087 get accurate file attributes, when w32-get-true-file-attributes is
2088 `local'.
2089
e0ab5fcf
JD
20902009-07-10 Jan Djärv <jan.h.d@swipnet.se>
2091
2092 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 2093 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
2094 parameter font-parameter as default to the font dialog.
2095
784ceded
KH
20962009-07-10 Kenichi Handa <handa@m17n.org>
2097
2098 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
2099
fb8edc0b
EZ
21002009-07-09 Eli Zaretskii <eliz@gnu.org>
2101
1ac9108a 2102 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 2103
fb8edc0b
EZ
2104 * w32.c (stat): Treat UNC file names as residing on remote
2105 drives. (Bug#3542)
2106
635c75b1
KH
21072009-07-09 Kenichi Handa <handa@m17n.org>
2108
2109 * fontset.c (fontset_find_font): Fix previous change.
2110
c1d5ce94
MA
21112009-07-08 Michael Albinus <michael.albinus@gmx.de>
2112
2113 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
2114 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
2115 error flag.
2116
edb61b39
KH
21172009-07-08 Kenichi Handa <handa@m17n.org>
2118
374bf7e4
KH
2119 * fontset.c (fontset_find_font): Fix the logic of handling
2120 charset_matched.
2121 (font_for_char): Delete unused var.
2122 (generate_ascii_font_name): Delete it.
2123
edb61b39
KH
2124 * coding.h (JIS_TO_SJIS2): Fix the code range check.
2125
2126 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
2127 (encode_coding_sjis): Fix the code range check.
2128
0f3f018c
CY
21292009-07-07 Chong Yidong <cyd@stupidchicken.com>
2130
2131 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
2132 (Fexpand_file_name): Copy string data properly (Bug#3772).
2133
fcaf6f3a
JD
21342009-07-07 Jan Djärv <jan.h.d@swipnet.se>
2135
2136 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
2137 first MapNotify.
2138
6809ca75
KH
21392009-07-07 Kenichi Handa <handa@m17n.org>
2140
2141 * character.h (unibyte_has_multibyte_table): Delete extern.
2142 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
2143
2144 * charset.c (Fset_charset_priority): Update charset_unibyte.
2145 (syms_of_charset): Initialize charset_unibyte.
2146
2147 * character.c (unibyte_has_multibyte_table): Delete it.
2148 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
2149 charset_unibyte.
2150 (multibyte_char_to_unibyte_safe): Likewise.
2151 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
2152
1ac9108a 2153 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
2154 (x_produce_glyphs): Likewise.
2155
2156 * .gdbinit (xcharset): Fix the treating $arg0.
2157
ad9e2d54
EZ
21582009-07-04 Eli Zaretskii <eliz@gnu.org>
2159
2160 Emulation of `getloadavg' on MS-Windows.
2161 * w32.c: Include float.h
2162 (g_b_init_get_native_system_info, g_b_init_get_system_times)
2163 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
2164 (get_native_system_info, get_system_times): New functions.
2165 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
2166 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
2167 (globals_of_w32): Initialize g_b_init_get_native_system_info,
2168 g_b_init_get_system_times, and num_of_processors.
2169
0a3472c7
JR
21702009-07-03 Jason Rumney <jasonr@gnu.org>
2171
2172 * w32term.c (w32_initialize): Use standard types.
2173
80904120
EZ
21742009-07-03 Eli Zaretskii <eliz@gnu.org>
2175
2176 * dired.c (Ffile_attributes): Decode user and group names by the
2177 locale's encoding. (Bug#3443)
2178
6978862d
DN
21792009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
2180
f8d23104
DN
2181 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
2182 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
2183
2184 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
2185
2186 * term.c (init_tty): Remove spurious #ifdef.
2187
6978862d
DN
2188 * m/mips.h: Mention this file is also used for netbsd.
2189 * m/pmax.h: Remove file.
2190
e044e4fc
JD
21912009-07-03 Jan Djärv <jan.h.d@swipnet.se>
2192
2193 * xterm.h (struct x_display_info): Add invisible_cursor.
2194 (struct x_output): Add current_cursor.
2195
2196 * xterm.c (XTtoggle_invisible_pointer): New function.
2197 (x_define_frame_cursor): Don't define cursor if invisible or the
2198 same as before. Set current_cursor.
2199 (x_create_terminal): Set toggle_invisible_pointer_hook.
2200
2201 * xfns.c (make_invisible_cursor): New function.
2202 (x_set_mouse_color): Call make_invisible_cursor.
2203 Set current_cursor.
2204 (x_window): Set current_cursor.
2205
2206 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
2207
2208 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
2209 inserting a character.
2210 (read_avail_input): Call frame_make_pointer_visible.
2211
2212 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
2213 (frame_make_pointer_invisible, frame_make_pointer_visible):
2214 New functions.
e044e4fc
JD
2215 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
2216
2217 * frame.h: Declare frame_make_pointer_invisible and
2218 frame_make_pointer_visible.
2219 (struct frame): Add pointer_invisible.
2220
574c8efa
JD
22212009-07-02 Jan Djärv <jan.h.d@swipnet.se>
2222
7b507248
JD
2223 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
2224 frame isn't visible.
2225 (xg_frame_resized): If width/height is -1, get size of window
2226 from X server.
2227
2228 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
2229 for MapNotify.
2230
835bdaa7 2231 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 2232 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 2233 (flush_and_sync): Reintroduce.
574c8efa 2234
3f1c6666 22352009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 2236
31fd7c5c 2237 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
2238
2239 * xterm.c (x_handle_net_wm_state): Also look for sticky.
2240 (x_term_init): Initialize Xatom_net_wm_state_sticky.
2241
2242 * frame.h: Declare Qsticky.
2243
cad9ef74
JD
2244 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
2245
2246 * nsfns.m (ns_frame_parm_handlers): Ditto.
2247
2248 * frame.c: Declare Qsticky.
2249 (frame_parms): Add sticky.
2250
2251 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
2252
2253 * xterm.h: Declare x_set_sticky.
2254
2255 * xterm.c (x_set_sticky): New function.
2256
69b16610
JD
2257 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
2258 (xg_tool_bar_menu_proxy): Attach enter/leave events to
2259 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
2260
2261 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
2262
2263 * frame.c: Qmaximized is new.
2264 (x_set_frame_parameters): Do not handle fullscreen specially.
2265 Only set width and height if explicitly set.
2266 (x_set_fullscreen): Handle Qmaximized.
2267 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
2268 (syms_of_frame): Initialize Qmaximized.
2269
1ac9108a
SM
2270 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
2271 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
2272
2273 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
2274 for Expose event. Add call to x_check_fullscreen for MapNotify event.
2275 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
2276 set gravity to NorthWestGravity when USE_GTK.
2277 (set_wm_state): New function.
31fd7c5c 2278 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
2279 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
2280 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 2281 or the case when no window manager is running. That means remove calls
3f1c6666
JD
2282 to x_real_positions and x_fullscreen_adjust.
2283
2284 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
2285 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
2286 flush_and_sync.
2287 (xg_height_changed): New function.
2288 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
2289 and gtk_window_set_policy. Set frame gravity after parsing the
2290 geometry string.
3f1c6666
JD
2291 (xg_update_frame_menubar, free_frame_menubar)
2292 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
2293 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
2294 Remove calls to xg_frame_set_char_size.
2295
fd503d99
KH
22962009-07-01 Kenichi Handa <handa@m17n.org>
2297
2298 * keyboard.c (decode_keyboard_code): New function.
2299 (tty_read_avail_input): Decode the input bytes if necessary.
2300
1ac9108a
SM
2301 * coding.c (setup_coding_system):
2302 Initialize coding->carryover_bytes to 0.
fd503d99
KH
2303 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
2304 use Qno_conversion.
2305
24ed93fb
YM
23062009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2307
2308 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
2309
99061dfc
CY
23102009-06-30 Chong Yidong <cyd@stupidchicken.com>
2311
1ac9108a 2312 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 2313
ff90fbde
JR
23142009-06-30 Jason Rumney <jasonr@gnu.org>
2315
2316 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2317 is already loaded.
2318 Set user model ID if supported (bug#1849).
2319
5f445726
JM
23202009-06-29 Jim Meyering <meyering@redhat.com>
2321
2322 Remove useless if-before-xfree test.
2323 * nsfont.m (nsfont_close): Remove useless test.
2324 * term.c (delete_tty): Likewise.
2325 * w32.c (system_process_attributes): Likewise.
2326 * w32font.c (w32font_close): Likewise.
2327 * xfaces.c (x_free_gc): Likewise.
2328 * xselect.c (buffer): Likewise.
2329
b9607587
AS
23302009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2331
2332 * process.c (send_process): Keep decoded string in a local
2333 variable and protect it from GC. (Bug#3521)
2334
89ba96f4
EZ
23352009-06-28 Eli Zaretskii <eliz@gnu.org>
2336
2337 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2338 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2339
098a1589
CY
23402009-06-28 Chong Yidong <cyd@stupidchicken.com>
2341
485422be
CY
2342 * xdisp.c (start_display, handle_face_prop)
2343 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
2344 (redisplay_window, try_window_id, produce_image_glyph):
2345 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 2346
098a1589
CY
2347 * xterm.c (x_update_window_begin, x_new_focus_frame)
2348 (x_scroll_bar_handle_click, handle_one_xevent)
2349 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2350 (x_make_frame_visible, x_make_frame_invisible)
2351 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2352 code chunks that are now obsolete.
2353
78c38319
MA
23542009-06-28 Michael Albinus <michael.albinus@gmx.de>
2355
2356 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2357 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2358 for hours, when optimzation is enabled.
2359 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2360 (xd_read_message): Make them static.
2361
4189ed40
CY
23622009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2363
2364 * term.c (turn_on_face): Allow simultaneously bold and dim
2365 terminal faces (Bug#3530).
2366
cd9b5e16
CY
23672009-06-27 Chong Yidong <cyd@stupidchicken.com>
2368
4e23bedb
CY
2369 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2370
cd9b5e16
CY
2371 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2372 truncation glyphs (Bug#3686).
2373
07cc3c35
GM
23742009-06-27 Glenn Morris <rgm@gnu.org>
2375
2376 * m/pmax.h: Restore file, with only netbsd portions.
2377
31fd7c5c 23782009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 2379
cd9b5e16 2380 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 2381
42d4a64f
KH
23822009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2383
2384 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2385 the arg FORCE_SYMBOL.
2386
930fe55b 23872009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
2388
2389 * fontset.c (fontset_find_font): When a usable rfont_def is found
2390 in a fallback font-group, make it the first element of the group.
2391
57ebc3fd
CY
23922009-06-24 Chong Yidong <cyd@stupidchicken.com>
2393
2394 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2395
f084f942
KH
23962009-06-24 Kenichi Handa <handa@m17n.org>
2397
2398 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2399 set for C.
2400 (fontset_font): Record the availability of a font for C both in
2401 the realized fontsets of the current one and the default one.
2402
2f686c87
DN
24032009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2404
2405 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2406 conditional, it is always defined on AIX.
2407
666e158e
MB
24082009-06-23 Miles Bader <miles@gnu.org>
2409
2410 * window.c (Vrecenter_redisplay): New variable.
2411 (syms_of_window): Initialize it.
2412 (Qtty): New extern declaration.
2413 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2414
c6da7cd2
JM
24152009-06-23 Jim Meyering <meyering@redhat.com>
2416
1ac9108a
SM
2417 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2418 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 2419 pointer dereferences are guaranteed to be valid.
c6da7cd2 2420
678dca3d
KH
24212009-06-23 Kenichi Handa <handa@m17n.org>
2422
74d75424
KH
2423 * emacs.c (main): Call init_font ().
2424
2425 * font.h (Vfont_log): Extern it.
2426 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2427
2428 * font.c (font_sort_entities, font_list_entities)
2429 (font_matching_entity, font_open_entity)
2430 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2431 (Vfont_log): Delete static.
2432 (font_log_env_checked): Delete this variable.
2433 (font_add_log): Don't check font_log_env_checked.
2434 (font_deferred_log): Check Vfont_log.
2435 (init_font): New function.
2436
678dca3d
KH
2437 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2438
2439 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2440
2441 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2442
2443 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2444
2445 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2446 (face_for_char): Don't call font_deferred_log here.
2447 (font_for_char): Likewise.
2448
8a668709
CY
24492009-06-22 Chong Yidong <cyd@stupidchicken.com>
2450
9a01ee33
CY
2451 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2452 rather than its background_width for drawing the overline and
2453 underline (Bug#489).
2454
2455 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2456 rather than its background_width for drawing the overline and
2457 underline (Bug#489).
ec7c9926
CY
2458 (xg_default_icon_file): New variable.
2459 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2460 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 2461
8a668709
CY
2462 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2463 (load_overlay_strings): Remove externs.
2464 (fast_find_position): Function deleted.
2465 (mouse_face_from_buffer_pos): New function, based on
2466 fast_find_position. Correctly handle before-strings,
2467 display-strings, and after-strings (Bug#1220).
2468 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2469
4d4c02d8
CY
24702009-06-21 Chong Yidong <cyd@stupidchicken.com>
2471
1ac9108a 2472 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
2473 (move_it_in_display_line_to, move_it_in_display_line_to)
2474 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2475
70243478
CY
24762009-06-21 Chong Yidong <cyd@stupidchicken.com>
2477
2478 * Branch for 23.1.
2479
13087e59
JR
24802009-06-21 Jason Rumney <jasonr@gnu.org>
2481
2482 * w32term.c (keyboard_codepage): New static variable.
2483 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2484 (w32_read_socket) [WM_CHAR]: Use it to decode character
2485 input (bug#3237).
2486 (w32_initialize): Initialize it.
2487 (codepage_for_locale): New function.
2488
4735b74e
KR
24892009-06-20 Ken Raeburn <raeburn@raeburn.org>
2490
2491 * process.c (status_message): Pass Faset index argument as a lisp
2492 object, so as to work with USE_LISP_UNION_TYPE.
2493
0e727afa
YM
24942009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2495
2496 * coding.c (Ffind_coding_systems_region_internal):
2497 Cache checked characters.
2498
cf299835
KH
24992009-06-18 Kenichi Handa <handa@m17n.org>
2500
1ac9108a 2501 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2502
90f20d94
AS
25032009-06-18 Andreas Schwab <aschwab@redhat.com>
2504
2505 * xdisp.c (redisplay_internal): Check that the frame is still
2506 live after redisplay of its windows.
2507 (redisplay_windows): Check that the window is still live.
2508
7f1faf1c
KH
25092009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2510
2511 * coding.c (detect_coding_utf_16): Fix previous change.
2512
cc13543e
KH
25132009-06-16 Kenichi Handa <handa@m17n.org>
2514
2515 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2516 UTF-16 by checking the dispersion of Eth and Oth bytes.
2517
977b85f4
AS
25182009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2519
2520 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2521
66bd43d1
KH
25222009-06-15 Kenichi Handa <handa@m17n.org>
2523
2524 * process.c (status_message): Fix previous change. Be sure to
2525 decode a localized string.
2526
cb5ca9c5
YM
25272009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2528
2529 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2530 add comment explaining why.
2531
ec7709ba 25322009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2533
ec7709ba 2534 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2535
4b7f335c
AR
25362009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2537
2538 * nsfont.m (ns_attribute_value): Remove.
2539 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2540 (ns_has_attribute): Shrink the normal range.
2541 (ns_findfonts): Don't worry about requested spec in determining
2542 need for synthItal.
e41820ee 2543 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2544
73b26103
SZ
25452009-06-14 Seiji Zenitani <zenitani@mac.com>
2546
2547 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2548
5753e4da
KH
25492009-06-11 Kenichi Handa <handa@m17n.org>
2550
2551 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2552 overhang for the static composition case.
2553
3561b671
KH
25542009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2555
5753e4da
KH
2556 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2557 overhang for the automatic composition case.
2558
3561b671
KH
2559 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2560 composition case.
2561
852bbd41
CY
25622009-06-10 Chong Yidong <cyd@stupidchicken.com>
2563
2564 * xdisp.c (get_next_display_element): When handling wrap-prefix
2565 and line-prefix, treat \n as a control character (bug#3502).
2566
9903d1e6
KH
25672009-06-10 Kenichi Handa <handa@m17n.org>
2568
2569 * font.c (font_parse_family_registry): Fix for one-char foundry.
2570 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2571
0bcbaaaa
CY
25722009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2573
2574 * process.c (status_message): Fix handling of multibyte signal
2575 string (Bug#3499).
2576
40aa3f13
JM
25772009-06-09 Jim Meyering <meyering@redhat.com>
2578
1f80c7e2
CY
2579 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2580 color name is missing.
40aa3f13 2581
72d51285
KH
25822009-06-09 Kenichi Handa <handa@m17n.org>
2583
2584 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2585 FROM-CODE and TO-CODE are codepoints of CHARSET.
2586
c1d04d84
AR
25872009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2588
2589 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2590
25912009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2592
2593 Changes to support :script/:lang/:otf in NS font driver.
2594 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2595 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2596 indicate not part of font driver interface, and change callers.
2597 (ns_get_family): Remove pointless null check.
2598 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2599 ns_spec_to_descriptor, ns_descriptor_to_entity.
2600 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2601 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2602 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2603 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2604 (ns_get_req_script, ns_accumulate_script_ranges)
2605 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2606 New functions.
2607 (nsfont_list, nsfont_match): Use ns_findfonts.
2608 (nsfont_open): Use font descriptor instead of traits.
2609 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2610 (dump_glyphstring): Rename to ns_dump_glyphstring.
2611
c7eb9816
AR
2612 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2613
c1d04d84
AR
2614 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2615
2616 * fontset.c (fontset_from_font): Remove NS-specific code.
2617
ec7709ba 26182009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2619
2620 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2621 nonactive windows.
2622
31fd7c5c 26232009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2624
1ac9108a 2625 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2626
68852c13 26272009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2628
2629 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2630
6756cd1d
CY
26312009-06-07 Chong Yidong <cyd@stupidchicken.com>
2632
2633 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2634 account for the overflowing of newlines into the last glyph on the
2635 display line (Bug#3482).
2636
28bf482a
DR
26372009-06-05 David Reitter <david.reitter@gmail.com>
2638
ec7709ba
JB
2639 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2640 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2641 Fns_selection_exists_p, Fns_selection_owner_p.
2642
fdb55376
JR
26432009-06-03 Jason Rumney <jasonr@gnu.org>
2644
2645 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2646 available. (Bug#3379)
2647
05129fbe
KH
26482009-05-29 Kenichi Handa <handa@m17n.org>
2649
1ac9108a
SM
2650 * coding.c (get_translation_table):
2651 Check Venable_character_translation.
05129fbe 2652
ec7709ba 26532009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2654
ec7709ba
JB
2655 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2656 (x_make_frame_visible): Move frame to front rather than calling
15891144 2657 ns_raise_frame().
ec7709ba 2658 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2659 isn't key window.
ec7709ba 2660 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2661 drawRect may be called by NSView even if the frame is hidden.
2662
ec7709ba
JB
2663 * nsfns.m (Fx_create_frame): Follow other ports in
2664 determining visibility; default to t. Ensure async_visible is set.
15891144 2665
21f73755
EZ
26662009-05-23 Eli Zaretskii <eliz@gnu.org>
2667
2668 * dired.c (Ffile_attributes): Doc fix.
2669
34001e41
CY
26702009-05-22 Chong Yidong <cyd@stupidchicken.com>
2671
2672 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2673
46306a17
SM
26742009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2675
2676 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2677 and xfont_scratch_props.
2678 (syms_of_xfont): Do it here instead.
2679 (xfont_find_ccl_program): Delete, unused.
2680 (xfont_open): Delete unused var `i'.
2681
ef6e0694
KH
26822009-05-21 Kenichi Handa <handa@m17n.org>
2683
2684 * fontset.c (Qlatin): Don't make it static.
2685
46306a17
SM
2686 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2687 New functions.
ef6e0694
KH
2688 (xfont_scripts_cache, xfont_scratch_props): New variables.
2689 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2690 (xfont_list_pattern): Argument changed. Callers changed.
2691 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2692 (xfont_list): Don't reject a font spec with :script property.
2693 (xfont_has_char): Fix setting of encoding.
2694 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2695 xfont_scratch_props.
2696
26972009-05-19 Kenichi Handa <handa@m17n.org>
2698
46306a17 2699 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2700 Callers changed.
2701
27022009-05-18 Kenichi Handa <handa@m17n.org>
2703
2704 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2705
ac71ced7
SM
27062009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2707
2708 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2709 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2710
1c6d1051
YM
27112009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2712
2713 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2714 (x_delete_terminal): Dissociate resource database from display and
2715 then call XrmDestroyDatabase before closing display.
2716
9b9b779c
AR
27172009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2718
2719 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2720 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2721 whether selected frame is viable before raising it (based on patch
2722 by David Reitter), and improve commentary.
2723 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2724
cccd42d5
KH
27252009-05-15 Kenichi Handa <handa@m17n.org>
2726
2727 * font.c (Ffont_spec): Check arguments.
2728
337fbd17
CY
27292009-05-14 Chong Yidong <cyd@stupidchicken.com>
2730
2731 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2732 weight when testing attributes (Bug#3282).
2733
47a6002f
JD
27342009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2735
2736 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2737 what we expect to get in the next ConfigureNotify event.
2738
9cb363db
YM
2739 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2740 before Xft one (Bug#1696).
2741
b9126609
CY
27422009-05-07 David Reitter <david.reitter@gmail.com>
2743
2744 * nsfns.m (Fx_display_planes): Compute bitplanes using
2745 NSBitsPerPixelFromDepth (Bug#3207).
2746
27a69fd9
CY
27472009-05-10 Chong Yidong <cyd@stupidchicken.com>
2748
2749 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2750
00f37552
TTN
27512009-05-10 Ulrich Mueller <ulm@gentoo.org>
2752
2753 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2754
2d82a920
DR
27552009-05-07 David Reitter <david.reitter@gmail.com>
2756
ec7709ba
JB
2757 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2758 Respect mouse face background.
2d82a920 2759
46b0d52d
DR
27602009-05-07 David Reitter <david.reitter@gmail.com>
2761
ec7709ba
JB
2762 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2763 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2764 in ns_update_begin and ns_update_end.
2765
ce1b23bb
SM
27662009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2767
5996e1b7
SM
2768 * nsfns.m (ns_get_screen): Rewrite.
2769 Don't presume selected-frame is of type `ns'.
2770
ba98e3a0
SM
2771 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2772 all drivers.
2773
ce1b23bb
SM
2774 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2775
bcda200f
YM
27762009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2777
2778 * keyboard.h (add_user_signal): Fix typo in extern.
2779
2780 * lisp.h (add_user_signal): Remove extern.
2781
2782 * unexelf.c (unexec): Consider a section to precede the .bss section
2783 if its addresses overlap that of .bss.
2784 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2785 instead of dumping process.
2786
864660a2
SM
27872009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2788
2789 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2790
50da4e56
SM
27912009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2792
2793 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2794
51520a1a
DN
27952009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2796
2797 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2798 any statements.
2799
409ea3a1
AS
28002009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2801
59c4c60f
AS
2802 * process.c (read_process_output): Make sure the current buffer is
2803 always restored.
2804
409ea3a1
AS
2805 * coding.c (record_conversion_result): Don't modify
2806 Vlast_code_conversion_error for successful result.
2807 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2808
56f00ed2
KH
28092009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2810
2811 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2812 (load_charset_map): Remove unnecessary code.
56f00ed2 2813
4491c9d2
DR
28142009-04-30 David Reitter <david.reitter@gmail.com>
2815
35f5b128 2816 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2817 through f24.
2818
6970f632
CY
28192009-04-30 Chong Yidong <cyd@stupidchicken.com>
2820
2821 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2822
2823 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2824 face_at_buffer_position.
2825 (face_before_or_after_it_pos, get_next_display_element)
2826 (note_mouse_highlight): Update face_at_buffer_position call.
2827
2828 * term.c (term_mouse_highlight):
2829 * msdos.c (IT_note_mouse_highlight):
2830 * fontset.c (Finternal_char_font):
35f5b128 2831 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
2832
2833 * dispextern.h (face_at_buffer_position): Update prototype.
2834
0c616f63
KH
28352009-04-30 Kenichi Handa <handa@m17n.org>
2836
35f5b128 2837 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 2838
ad3aaf33
AS
28392009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2840
2841 * callproc.c (Fcall_process): Fix GC protection. Make sure
2842 current buffer is always restored.
2843
c3c963a0
YM
28442009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2845
2846 * atimer.c (init_atimer): Also clear stopped_atimers.
2847
2848 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2849
7e3386cb
YM
2850 * process.c (create_process): Clean up merger residues of
2851 2008-07-17 change.
2852
91f68422
CY
28532009-04-29 Ulrich Mueller <ulm@gentoo.org>
2854
2855 * lread.c (Vread_circle): New variable.
2856 (read1): Disable recursive read if Vread_circle is nil.
2857
24b34550
KH
28582009-04-29 Kenichi Handa <handa@m17n.org>
2859
2860 * fontset.h (set_default_ascii_font): Delete extern.
2861
2862 * fontset.c (set_default_ascii_font): Delete this unused function.
2863
2864 * frame.c (x_set_font): When ARG is a font-object, check if the
2865 font-object matches with the ASCII font-spec of the frame's
9c358bda 2866 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 2867
77bf07e1
AS
28682009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2869
2870 * fns.c (Flocale_info): Protect vector from GC during decoding.
2871
2872 * process.c (Fstart_process): Protect argv strings from GC during
2873 encoding.
2874
2c55aacf
AS
28752009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2876
2877 * sysdep.c: Include <ctype.h>.
2878
b892d3c9
DR
28792009-04-27 David Reitter <david.reitter@gmail.com>
2880
35f5b128 2881 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
2882 Remove commented-out code.
2883
9d0644c4
JB
28842009-04-26 Johan Bockgård <bojohan@gnu.org>
2885
2886 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2887
b7053016
JR
28882009-04-25 Jason Rumney <jasonr@gnu.org>
2889
2890 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2891
4e8231f3
YM
28922009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2893
2894 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2895 Swap bytes in short integer if fringe bitmap width > 8.
2896
493dcf2c
KH
28972009-04-23 Kenichi Handa <handa@m17n.org>
2898
2899 * xfaces.c (Fx_list_fonts): If a font size is specified in
2900 PATTERN, set it in returned scalable fonts.
2901
401e9e57
CY
29022009-04-22 Chong Yidong <cyd@stupidchicken.com>
2903
708e05dc
CY
2904 * keyboard.c (Fset_input_meta_mode): Doc fix.
2905
2906 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2907
1ac9108a 2908 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
2909
2910 * coding.c (Fterminal_coding_system): Doc fix.
2911
2912 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2913 (Fx_display_pixel_height, Fx_display_planes)
2914 (Fx_display_color_cells, Fx_server_max_request_size)
2915 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2916 (Fx_display_mm_height, Fx_display_mm_width)
2917 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
2918 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2919 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
2920 (check_x_display_info): Handle terminal objects instead of
2921 terminal ids.
2922
401e9e57
CY
2923 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
2924 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
2925 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
2926 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 2927
df80c7f0
KH
29282009-04-21 Kenichi Handa <handa@m17n.org>
2929
5a8f12af 2930 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 2931 (font_score): Check AVGWIDTH too.
908567ef 2932
df80c7f0
KH
2933 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
2934 worst case.
1ac9108a
SM
2935 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
2936 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 2937
705af33f
JR
29382009-04-19 Jason Rumney <jasonr@gnu.org>
2939
2940 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 2941 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
2942
2943 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
2944 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
2945 get_phys_cursor_geometry.
2946
b71ac3dd 2947 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
2948 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
2949 using get_phys_cursor_geometry.
2950
2951 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
2952 correctly calculated.
2953
dc2933eb
JD
29542009-04-19 Jan Djärv <jan.h.d@swipnet.se>
2955
1ac9108a
SM
2956 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
2957 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
2958 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
2959 is deprecated.
2960
973e7849
AS
29612009-04-18 Andreas Schwab <schwab@linux-m68k.org>
2962
2963 * font.c (font_put_frame_data): Use xfree instead of free.
2964
314d66f4
JB
29652009-04-17 Juanma Barranquero <lekktu@gmail.com>
2966
2967 * w32font.c (Qja, Qko): Remove declarations.
2968 (syms_of_w32font): Don't DEFSYM them.
2969
cf702558
CY
29702009-04-17 Chong Yidong <cyd@stupidchicken.com>
2971
2972 * font.c (Qja, Qko): Move definitions here from ftfont.c.
2973
2974 * font.h (Qja, Qko): Extern them.
2975
2976 * ftfont.c (Qja, Qko): Remove declarations.
2977
2978 * xfont.c (Qja, Qko): Remove declarations.
2979
b50504f5
KH
29802009-04-17 Kenichi Handa <handa@m17n.org>
2981
bde25748
KH
2982 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
2983 string from a vector to handle Latin-1 characters correctly.
2984
b50504f5
KH
2985 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
2986 entity even if the cache hits.
2987
f4646fff
AS
29882009-04-16 Andreas Schwab <schwab@linux-m68k.org>
2989
2990 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 2991 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 2992
e7deaab0
AS
2993 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
2994 * lisp.h: Adjust prototypes.
2995
0a0e7d49
CY
29962009-04-16 Chong Yidong <cyd@stupidchicken.com>
2997
2998 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
2999 change (Bug#3003).
3000
3c908a57
KH
30012009-04-16 Kenichi Handa <handa@m17n.org>
3002
1ac9108a 3003 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
3004
3005 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
3006 adstyle.
3007
3008 * ftfont.c (Qja, Qko): Don't make them static.
3009 (enum ftfont_cache_for): New enum.
3010 (fc_charset_table): Undo the previous change.
3011 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
3012 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
3013 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
3014 non-scarable font, try to get AVERAGE_WIDTH.
3015 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
3016 Change ft_face_cache from a list of a hash-table. Don't check
3017 `ja' and `ko' adstyle here.
3018 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
3019 FTFONT_CACHE_FOR_CHARET.
3020 (ftfont_get_charset): Undo the previous change.
1ac9108a 3021 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
3022 (ftfont_close): Likewise.
3023 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
3024
3025 * font.c (font_sort_entites): Change the meaning of the arg
3026 BEST-ONLY. Don't optimize for VEC of lenght 1.
3027 (font_select_entity): Just return the value of font_sort_entites.
3028
3029 * xfaces.c (merge_face_vectors): Reflect font properties in
3030 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
3031 font_clear_prop if a face attribute doesn't change.
3032
3c908a57
KH
3033 * charset.h (charset_ksc5601): Extern it.
3034
3035 * charset.c (charset_ksc5601): New variable.
3036 (Fdefine_charset_internal): Set charset_ksc5601.
3037 (init_charset_once): Initialize charset_ksc5601 to -1.
3038
d65859c3
DN
30392009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
3040
3041 * fileio.c (history_delete_duplicates): Remove unused declaration.
3042
3043 * callint.c (history_delete_duplicates): New declaration.
3044 (Fcall_interactively): Remove command history duplicates when
3045 history_delete_duplicates is true.
3046
3ba010e5
EZ
30472009-04-14 Eli Zaretskii <eliz@gnu.org>
3048
3049 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
3050
06f19b91
KH
30512009-04-14 Kenichi Handa <handa@m17n.org>
3052
3053 * font.c (Ffont_info): Fix docstring. Fix the second element of
3054 the returned value (bug#2949).
3055
2cce8bfc
CY
30562009-04-14 Chong Yidong <cyd@stupidchicken.com>
3057
3058 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
3059
d156542d
KH
30602009-04-14 Kenichi Handa <handa@m17n.org>
3061
3062 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
3063 encoding charset is ascii_compatible.
3064
3065 * charset.c (Fdefine_charset_internal): Make charset
3066 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
3067 code_offset is 0, and covers all ASCII characters.
3068
86fa089e
SM
30692009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
3070
3071 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
3072 (ns_string_to_pasteboard_internal):
3073 * nsmenu.m (process_dialog):
3074 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
3075 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
3076 * lisp.h (Fx_load_color_file): Declare.
3077
a8a3728b
KH
30782009-04-13 Kenichi Handa <handa@m17n.org>
3079
1ac9108a 3080 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
3081 (font_select_entity): Suppress the code to optimize for the same
3082 kind of fonts.
3083 (font_load_for_lface): Get a font that supports at least ASCII
3084 characters.
3085
3086 * ftfont.c (Qja, Qko): New variables.
3087 (fc_charset_table): Delete uniquifier data for iso8859-1.
3088 (ftfont_get_latin1_charset): New function.
3089 (get_adstyle_property): New function.
3090 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
3091 bitmap fonts.
3092 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
3093 Delete iso-8859-1 range from the charset of fonts whose adstyle is
3094 `ko' or `ja'.
3095 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 3096 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
3097 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
3098 property.
3099 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
3100 (syms_of_ftfont): DEFSYM Qja and Qko.
3101
483670b5
KH
31022009-04-09 Kenichi Handa <handa@m17n.org>
3103
12b55765
KH
3104 * charset.c (map_charset_chars): For a charset of `superset'
3105 method, fix calculation of code range.
3106
483670b5
KH
3107 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
3108 from the list of extra properties.
3109 (font_clear_prop): Be sure to delete `:name' font property.
3110
57d3b93b
KH
31112009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3112
b4b2c2ca
YM
3113 * dispnew.c (redraw_overlapping_rows): Fix detection of
3114 overlapping for topmost and bottommost rows.
3115
1ac9108a 3116 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 3117
472c3609
JR
31182009-04-06 Jason Rumney <jasonr@gnu.org>
3119
3120 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
3121
ab193662
KH
31222009-04-06 Kenichi Handa <handa@m17n.org>
3123
3124 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
3125
3126 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
3127
0c26f026
KH
31282009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3129
3130 * ftfont.c (ftfont_open): Fix checking of the return value of
3131 FT_Load_Char. Fix setting font->underline_thickness.
3132
e173bbce
CY
31332009-04-04 Chong Yidong <cyd@stupidchicken.com>
3134
3135 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
3136 (Fterminal_parameters, Fterminal_parameter)
3137 (Fset_terminal_parameter): In doc string, refer to terminal
3138 objects rather than terminal ids.
3139
693a2698
EZ
31402009-04-04 Eli Zaretskii <eliz@gnu.org>
3141
3142 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
3143 ret_lim_data. (Bug#2867)
3144
d5221487
CY
31452009-04-03 Chong Yidong <cyd@stupidchicken.com>
3146
3147 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
3148 so they don't get wider than the window, matching 2006-01-23
3149 change to the partner function in xdisp.c (Bug#2800).
3150
223509a3
KH
31512009-04-03 Kenichi Handa <handa@m17n.org>
3152
3153 * print.c (print_object): Make each lowest sub_char_table start a
3154 new line (Bug#2866).
3155
74fcd0b1
KH
31562009-04-02 Kenichi Handa <handa@m17n.org>
3157
3158 * fontset.c (fontset_font): Record no-font when a fontset
3159 explicitly tells not to try another font-specs.
3160
c542407d
SM
31612009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
3162
3163 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
3164
e3869731
KH
31652009-03-30 Kenichi Handa <handa@m17n.org>
3166
d8d2f142
KH
3167 * fontset.c (fontset_from_font): Specify only registry in a
3168 font-spec for all characters supported by that registry.
3169
e3869731
KH
3170 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
3171 even if HAVE_M17N_FLT is not defined.
3172
5da5f805
CY
31732009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
3174
3175 * ftfont.c: Conditionalize prototyping and use of
3176 ftfont_variation_glyphs.
3177
ab226c50
SM
31782009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3179
9628fed7
SM
3180 * frame.c (delete_frame): Work around compiler bug.
3181
3182 * editfns.c (general_insert_function): Adjust to insdel.c changes.
3183 * insdel.c (prepare_to_modify_buffer, signal_before_change):
3184 Some more EMACS_INT.
3185 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
3186
3187 * xdisp.c (dump_glyph): Fix typo.
3188
ae19ba7c
SM
3189 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
3190 (adjust_markers_gap_motion, adjust_markers_for_delete)
3191 (adjust_markers_for_insert, adjust_point)
3192 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
3193 (make_gap, copy_text, count_size_as_multibyte, insert)
3194 (insert_and_inherit, insert_before_markers)
3195 (insert_before_markers_and_inherit, insert_1)
3196 (count_combining_before, count_combining_after, insert_1_both)
3197 (insert_from_string, insert_from_string_before_markers)
3198 (insert_from_string_1, insert_from_gap, insert_from_buffer)
3199 (insert_from_buffer_1, adjust_after_replace)
3200 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
3201 (replace_range_2, del_range, del_range_1, del_range_byte)
3202 (del_range_both, del_range_2, modify_region)
3203 (prepare_to_modify_buffer, signal_before_change)
3204 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
3205 for buffer positions and sizes.
3206 * lisp.h: Adjust prototypes accordingly.
3207
3208 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
3209 (non_regular_inserted, non_regular_nbytes, read_non_regular)
3210 (Finsert_file_contents): Use EMACS_INT for buffer positions.
3211
ab226c50
SM
3212 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
3213
46dfb8fb
JD
32142009-03-27 Jan Djärv <jan.h.d@swipnet.se>
3215
3216 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
3217 lines and columns so we keep the same pixel height and width.
3218
3219 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
3220 the property _NET_WM_STATE has changed.
46dfb8fb
JD
3221 (x_handle_net_wm_state): New function to update frame parameter
3222 fullscreen.
3223 (x_term_init): Initialize atoms for _NET_WM_STATE.
3224
3225 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
3226
d347e494
SM
32272009-03-27 Kevin Ryde <user42@zip.com.au>
3228
3229 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
3230 Gpm_GetEvent as an error that justifies closing the filedescriptor.
3231 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
3232 (Fgpm_mouse_stop): Pass that new parameter.
3233 * termhooks.h (close_gpm): Adjust prototype.
3234
84db11d6
SM
32352009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
3236
c95a5008
SM
3237 * lisp.h (Fx_focus_frame): Declare.
3238
84db11d6
SM
3239 * callint.c (Fcall_interactively): For '^' just delegate the work to
3240 handle-shift-selection.
3241 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
3242
0a1958d6
CY
32432009-03-24 Chong Yidong <cyd@stupidchicken.com>
3244
0bfdff23
CY
3245 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
3246
0a1958d6
CY
3247 * data.c (Qinteractive_form): New variable.
3248 (Finteractive_form): Use it.
3249
3250 * eval.c (Fcommandp): Use Qinteractive_form.
3251
58aec0d6
JR
32522009-03-24 Jason Rumney <jasonr@gnu.org>
3253
3254 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
3255 Calculate total size precisely. Decode environment variables
3256 before substituting. (Bug#38)
3257
553dd618
KH
32582009-03-24 Kenichi Handa <handa@m17n.org>
3259
3260 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 3261 encoding (Bug#2722).
553dd618 3262
c39ea606
JD
32632009-03-23 Jan Djärv <jan.h.d@swipnet.se>
3264
3265 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
3266 that gdpy is set.
3267
bc9b2b5e
AM
32682009-03-22 Alan Mackenzie <acm@muc.de>
3269
3270 * callint.c (Finteractive): Clarify the doc string - even
3271 promptless elements need \n separators.
3272
9f995a76
JR
32732009-03-22 Jason Rumney <jasonr@gnu.org>
3274
3275 * w32term.c (syms_of_w32term): Doc fix for
3276 x-use-underline-position-properties.
3277
22749e9a
EZ
32782009-03-21 Eli Zaretskii <eliz@gnu.org>
3279
3280 * w32.c (getpwuid): Change argument type to unsigned.
3281 (struct w32_id): Change type of `rid' member to unsigned.
3282 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
3283 argument ID to unsigned. All callers changed.
3284 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
3285
e00553bf
EZ
32862009-03-20 Eli Zaretskii <eliz@gnu.org>
3287
3288 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
3289 negative, produce a float value.
3290
3291 * dired.c (make_uid, make_gid): New functions.
3292 (Ffile_attributes): Use them to avoid negative UID and GID.
3293
f761d6b6
JB
32942009-03-20 Juanma Barranquero <lekktu@gmail.com>
3295
3296 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
3297 (syms_of_keyboard) <command-hook-internal, input-method-function>:
3298 Fix typos in docstrings.
3299
d507f8d7
KH
33002009-03-19 Kenichi Handa <handa@m17n.org>
3301
3302 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
3303 changed, use font_load_for_lface to get a new font object.
3304 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
3305
3306 * frame.c (x_set_font): Handle the case that ARG is a cons.
3307
c68845e0
GM
33082009-03-19 Glenn Morris <rgm@gnu.org>
3309
3310 * fileio.c (Fsubstitute_in_file_name): Doc fix.
3311
bfa49dd1
CY
33122009-03-19 Chong Yidong <cyd@stupidchicken.com>
3313
3314 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
3315
8458d4c1
KH
33162009-03-19 Kenichi Handa <handa@m17n.org>
3317
3318 * charset.c (load_charset_map_from_file): When a mapfile can't be
3319 loaded, signal an error.
3320
78e7d1fe
EZ
33212009-03-18 Eli Zaretskii <eliz@gnu.org>
3322
3323 * dired.c (Ffile_attributes): Make sure UID and GID are always
3324 positive, even if the value is too large for a positive EMACS_INT.
3325 Doc fix.
3326
3327 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3328
5da9fdfa
YM
33292009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3330
3331 * xmenu.c (xdialog_show): Move Fredisplay call ...
3332 (Fx_popup_dialog): ... here.
3333
7519c40d
SM
33342009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3335
3336 * dired.c (file_name_completion): Disable the first optimization just
3337 installed, since it is not implemented correctly.
3338
2cd298e2
SM
33392009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3340
3341 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 3342 only if the entry can affect bestmatch.
2cd298e2
SM
3343 Stop the search early, as Ftry_completion already does.
3344
48d37adf
CY
33452009-03-17 Chong Yidong <cyd@stupidchicken.com>
3346
e10c9c93 3347 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 3348
9286b16a
CY
33492009-03-15 Chong Yidong <cyd@stupidchicken.com>
3350
3351 * keyboard.c (parse_menu_item): Don't display remappings as menu
3352 equivalent bindings (Bug#788).
3353
f7b146dc
JR
33542009-03-15 Jason Rumney <jasonr@gnu.org>
3355
3356 * w32term.h (WM_EMACS_PAINT): New message.
3357 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3358 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3359 before passing to lisp thread. (Bug#950)
3360
f761d6b6 33612009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 3362
d93f9575
CY
3363 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3364 variable as it was never reset.
3365 (ns_term_init): Remove initialization of Lisp-settable defaults
3366 and ns_expand_space.
3367 (-setPanelFromDefaultValues): Remove ns_expand_space.
3368 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3369 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
3370 i.e. no additional spacing, similar to Carbon port.
3371
d93f9575
CY
3372 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3373 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 3374
305018ec
JD
33752009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3376
3377 * sound.c (alsa_configure): Remove call to deprecated
3378 snd_pcm_sw_params_set_xfer_align.
3379
f761d6b6 33802009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
3381
3382 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3383 after clicking in a detached tool bar.
3384 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3385
46e722a9
SM
33862009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3387
348db3dd
SM
3388 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3389 int/Lisp_Object mixup).
46e722a9 3390
a3d16f39
KH
33912009-03-13 Kenichi Handa <handa@m17n.org>
3392
3393 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 3394 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
3395 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3396 (set_fontset_font): Change ARG to a vector. Handle range_list in
3397 ARG correctly.
3398 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 3399 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
3400 the above change.
3401 (fontset_from_font): Fix previous change.
fe24f56a 3402 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
3403 entry. If FONTSET is the default fontset, don't set the extra
3404 slot of the returning char-table.
3405
b066e6b6
JB
34062009-03-12 Juanma Barranquero <lekktu@gmail.com>
3407
3408 * nsfns.m (Fx_close_connection): Doc fix.
3409 (Fns_do_applescript): Reflow docstring.
3410 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3411 (Fx_display_pixel_width, Fx_display_pixel_height)
3412 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3413 Fix typos in docstrings.
3414 (Fns_set_alpha): Fix typos in error messages.
3415
d472514e 34162009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 3417
d472514e 3418 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
3419 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3420 were used for such events.
3421
d472514e
JB
3422 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3423 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 3424
d472514e 3425 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
3426 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3427
fb930676
KH
34282009-03-11 Kenichi Handa <handa@m17n.org>
3429
ff85581a
KH
3430 * font.h (font_open_by_spec): Extern it.
3431
c50b7e98
KH
3432 * font.c (font_open_by_spec): New function.
3433 (font_open_by_name): Use font_open_by_spec.
3434
fb930676
KH
3435 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3436 fontset of the frame.
3437
3438 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3439 modify the default font of frames that use this fontset.
3440 (num_auto_fontsets): New variable.
3441 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3442 name. Be sure to set FONTSET_ASCII to the correct font name.
3443 (update_auto_fontset_alist): New function.
3444
df4e8455
JB
34452009-03-11 Juanma Barranquero <lekktu@gmail.com>
3446
3447 * makefile.w32-in: Update dependencies.
3448
0a375797
AR
34492009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3450
3451 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3452
61313fa3
SM
34532009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3454
3455 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3456
b55103fb
CY
34572009-03-10 Chong Yidong <cyd@stupidchicken.com>
3458
3459 * lread.c (Feval_buffer): Doc fix.
3460
dde2559c
KH
34612009-03-09 Kenichi Handa <handa@m17n.org>
3462
3463 * charset.c (Qfile_name_handler_alist): Extern it.
3464 (load_charset_map_from_file): Temporarily bind
3465 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3466
df4e8455 34672009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 3468
47f588bb
GM
3469 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3470 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 3471
4ddf94bd
AR
34722009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3473
4c9bdfc2
AR
3474 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3475 (x_set_window_size): Change back to calculated method of setting
3476 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
3477 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3478 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3479
fe41ae9e
AR
3480 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3481
4c9bdfc2
AR
3482 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3483 accelerator in parens under GNUstep.
3484
825d0875
KH
34852009-03-06 Kenichi Handa <handa@m17n.org>
3486
3487 These changes are to detect incorrect composition sequence without
f3b3be74 3488 looking ahead the source. (Bug#2370)
825d0875
KH
3489
3490 * coding.h: Include "composite.h".
3491 (enum compisition_state): New enum.
3492 (struct compisition_status): New struct.
3493 (struct iso_2022_spec): New member cmp_status.
3494 (struct emacs_mule_spec): New struct.
3495 (struct coding_system): New members ctext_extended_segment_len and
3496 embedded_utf_8. Change the union member
3497 spec.emacs_mule_full_support to spec.emacs_mule.
3498
3499 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3500 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3501 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3502 (ADD_COMPOSITION_DATA): New arg nbytes.
3503 (emacs_mule_char): New arg cmp_status.
3504 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3505 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3506 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3507 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3508 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3509 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3510 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3511 (EMACS_MULE_COMPOSITION_END): New macro.
3512 (emacs_mule_finish_composition): New function.
3513 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3514 (decode_coding_emacs_mule): Avoid long looking ahead while
3515 handling composition.
3516 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3517 (ENCODE_COMPOSITION_RULE): New macro.
3518 (finish_composition): New function.
3519 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3520 (DECODE_COMPOSITION_START): New implementation.
3521 (DECODE_COMPOSITION_END): Likewise.
3522 (STORE_COMPOSITION_RULE): New macro.
3523 (decode_coding_iso_2022): Avoid long looking ahead while handling
3524 composition, CTEXT extended segment, and embedded UTF-8.
3525 (setup_coding_system): For a coding of type iso-2022, reset
3526 CODING_ISO_EXTSEGMENT_LEN (coding) and
3527 CODING_ISO_EMBEDDED_UTF_8 (coding).
3528 (get_translation): Delete arguments last_block, from_nchars,
3529 to_nchars. Callers changed.
3530 (produce_chars): Don't modify charbuf. Adjusted for the change of
3531 get_translation.
98a326f7 3532 (produce_composition): Adjust for the new annotation sequence.
825d0875 3533 (handle_composition_annotation): Likewise.
98a326f7 3534 (consume_chars): Adjust for the change of get_translation.
825d0875 3535
ccbc4452
AR
35362009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3537
4ddf94bd 3538 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3539
988a7ddb
KH
35402009-03-05 Kenichi Handa <handa@m17n.org>
3541
3542 * font.c (font_select_entity): New function.
3543 (font_find_for_lface): Use font_select_entity to select a font.
3544
3545 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3546 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3547 font with C restriction.
3548
98a326f7 35492009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3550
be1bce46 3551 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3552
10ea2b82
JR
35532009-03-04 Jason Rumney <jasonr@gnu.org>
3554
2c93b248 3555 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3556 characters that have already been read. (Bug#2569)
2c93b248 3557
10ea2b82
JR
3558 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3559 Log an error message if check_image_size failed.
3560 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3561 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3562
71a0c011
EZ
35632009-03-02 Eli Zaretskii <eliz@gnu.org>
3564
3565 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3566 when decoding process output.
3567
2f63bba8
RS
35682009-03-01 Richard M Stallman <rms@gnu.org>
3569
3570 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3571
3572 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3573
0a9564cb
EZ
35742009-02-28 Eli Zaretskii <eliz@gnu.org>
3575
3576 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3577 (decode_coding_emacs_mule, decode_coding_iso_2022)
3578 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3579 (decode_coding_raw_text, decode_coding_charset)
3580 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3581 Honor inhibit-eol-conversion. (Bug #2186)
3582
449148b3
JR
35832009-02-28 Jason Rumney <jasonr@gnu.org>
3584
3585 * coding.c (detect_coding_charset): If not checking latin extra,
3586 fail on characters between 0x80 and 0xA0. (Bug#2354)
3587
a4aee864
EZ
35882009-02-28 Eli Zaretskii <eliz@gnu.org>
3589
3590 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3591 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3592
d88bee5a
GM
35932009-02-27 Glenn Morris <rgm@gnu.org>
3594
3595 * callint.c (Finteractive): Doc fix.
3596
a808f22d
KH
35972009-02-27 Kenichi Handa <handa@m17n.org>
3598
3599 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3600
caf8d60c
CY
36012009-02-27 Chong Yidong <cyd@stupidchicken.com>
3602
3603 * font.c (font_style_to_value): Set value for unknown symbols to
3604 100 instead of 255.
b61137ea
CY
3605 (weight_table, slant_table, width_table): Treat "unspecified" as
3606 the default value.
caf8d60c 3607
1a0de25c
JB
36082009-02-26 Juanma Barranquero <lekktu@gmail.com>
3609
3610 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3611
8fc45744
JB
36122009-02-25 Juanma Barranquero <lekktu@gmail.com>
3613
107bd7d1
JB
3614 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3615 error as soon as a recursive load is detected.
8fc45744 3616
f097e223
AR
36172009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3618
3619 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3620 before caching.
3621
8810a12f
KH
36222009-02-24 Kenichi Handa <handa@m17n.org>
3623
3624 * fontset.c (fontset_find_font): Fix the condition for checking
3625 unavailable font.
3626
2c7d1565
GM
36272009-02-24 Glenn Morris <rgm@gnu.org>
3628
3629 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3630 whitespace that confuses documentation.
3631
a20878b6
MB
36322009-02-23 Miles Bader <miles@gnu.org>
3633
3634 * process.c (Flist_system_processes, Fprocess_attributes)
3635 (syms_of_process): Rename `system-process-attributes' to
3636 `process-attributes'.
3637
b3b58c01
AS
36382009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3639
1b3b981b
AS
3640 * coding.h (struct coding_system): Make safe_charsets a pointer to
3641 unsigned char.
3642 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3643 being 255.
3644 (SAFE_CHARSET_P): Likewise.
3645 (setup_iso_safe_charsets): Properly setup safe_charsets.
3646 (Fdefine_coding_system_internal): Likewise.
3647 (setup_coding_system): Likewise. Remove unneeded casts.
3648 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3649 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3650 unneeded casts.
3651
b3b58c01
AS
3652 * insdel.c (del_range_2): Don't modify gap contents when called
3653 from decode_coding_object. (Bug#1809)
3654
0b6f228c
CY
36552009-02-21 Chong Yidong <cyd@stupidchicken.com>
3656
3657 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3658 Qfont_object.
3659 (Ftype_of): Recognize font objects.
3660
3661 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3662
3663 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3664 moved to data.c.
3665
52f8870b
AR
36662009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3667
3668 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3669 async_iconified. Based on a patch by Christian Lynbech
3670 <christian.lynbech@tieto.com>.
3671 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3672
7087d5e9
GM
36732009-02-20 Glenn Morris <rgm@gnu.org>
3674
3675 * syntax.c (Fskip_chars_forward): Fix doc typo.
3676
41d2ceef
CY
36772009-02-20 Chong Yidong <cyd@stupidchicken.com>
3678
3679 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3680
1a3b7ca6
CY
36812009-02-19 Chong Yidong <cyd@stupidchicken.com>
3682
3683 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3684
73cce38d
KH
36852009-02-19 Kenichi Handa <handa@m17n.org>
3686
3687 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3688 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3689
a51092ee
DN
36902009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3691
3692 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3693
c423ecca
KH
36942009-02-18 Kenichi Handa <handa@m17n.org>
3695
3696 * font.c (font_check_otf_features): Fix handling of `nil' element.
3697 (Ffont_spec): Describe :lang and :otf in the docstring.
3698
4c1958f4
AS
36992009-02-16 Andreas Schwab <schwab@suse.de>
3700
3701 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3702 string.
3703
5704f39a
KH
37042009-02-16 Kenichi Handa <handa@m17n.org>
3705
3706 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3707 (Bug#1723)
5704f39a 3708
8f0085aa
CY
37092009-02-14 Chong Yidong <cyd@stupidchicken.com>
3710
a057d86a 3711 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3712
3713 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3714 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3715
aff01dd9
EZ
37162009-02-14 Eli Zaretskii <eliz@gnu.org>
3717
3718 * msdos.c (MAX_SCREEN_BUF): New macro.
3719 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3720 Encode the entire run of glyphs sharing the same face, instead of
3721 doing that one glyph at a time (fixes a bug with displaying
3722 double-size characters).
3723
ba301db3
AR
37242009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3725
3726 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3727
3728 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3729 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3730 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3731
3732 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3733 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3734
51d861de
SM
37352009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3736
3737 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3738 invisible areas.
3739
7fed8996
JR
37402009-02-12 Jason Rumney <jasonr@gnu.org>
3741
631ea4fb
JR
3742 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3743 (add_font_entity_to_list): Call check_face_name even when family
3744 is unspecified.
3745
cb4a3e42
JR
3746 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3747 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3748 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3749
7fed8996 3750 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3751 raster fonts. (Bug#2219)
7fed8996 3752
895416e3
KH
37532009-02-12 Kenichi Handa <handa@m17n.org>
3754
3755 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3756 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3757 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3758 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3759 (find_automatic_composition): While looking forward and backward,
3760 check static composition. Fix where to stop looking forward.
3761 (composition_adjust_point): Fix checking of static composition.
3762 (Fcomposition_get_gstring): Pay attention to
1dacf998 3763 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3764
3765 * lisp.h (fast_looking_at): Extern it.
3766
3767 * search.c (fast_looking_at): New function.
3768
51d861de 3769 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3770 <struct glyph>.u.cmp.to.
3771 (append_composite_glyph): Likewise.
3772
51d861de 3773 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3774 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3775 composition.
51d861de 3776 (append_composite_glyph): Adjust for the change of
895416e3
KH
3777 <strcut glyph>.u.cmp.to.
3778
8510724d
JB
37792009-02-11 Juanma Barranquero <lekktu@gmail.com>
3780
3781 * casetab.c (init_casetab_once):
3782 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3783 * font.c (font_update_lface):
3784 * fontset.c (Fnew_fontset):
3785 * ftfont.c (ftfont_drive_otf):
3786 * xfont.c (xfont_open):
3787 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3788
294fa707
SM
37892009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3790
3791 * fileio.c (Fwrite_region): !NILP -> CONSP.
3792
b5bfebec
AS
37932009-02-10 Andreas Schwab <schwab@suse.de>
3794
3795 * process.c (send_process): Properly relocate pointer into data
adab88bd 3796 when using encoded data. (Bug#2272)
b5bfebec 3797
cb84a2be
KH
37982009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3799
3800 * coding.c (detect_coding_charset): Fix previous change.
3801
89e09428
JR
38022009-02-08 Jason Rumney <jasonr@gnu.org>
3803
3804 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3805 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3806
4470a277
AS
38072009-02-07 Andreas Schwab <schwab@suse.de>
3808
3809 * unexelf.c (unexec): Fix error message.
3810
3175b12a
AR
38112009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3812
3813 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3814 when modal window is active. (Bug #2152)
3175b12a
AR
3815 (applicationShouldTerminate:): Remove now-unneeded while loop
3816 around NSRunAlertPanel.
3817
3818 * nsmenu.m (popupSession): New file-global variable.
3819 (pop_down_menu): End the popupSession before closing dialog.
3820 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3821 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3822 don't query NSApp for events (just sleep instead).
3823
8434d0b8
EZ
38242009-02-07 Eli Zaretskii <eliz@gnu.org>
3825
51d861de
SM
3826 * coding.c (syms_of_coding) <translation-table-for-input>:
3827 Modify doc string to discourage use for character code unification.
8434d0b8 3828
aa82edfd
CY
38292009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3830
3831 * atimer.c (run_timers): Update pending_atimers.
3832
2d283c7c
CY
38332009-02-06 Chong Yidong <cyd@stupidchicken.com>
3834
eb306cab
CY
3835 * image.c (svg_load_image): Fix last change.
3836
2d283c7c
CY
3837 * xfns.c (Fx_create_frame): Signal an error if no font is
3838 found (Bug#2147).
3839
4d8e170e
JB
38402009-02-05 Juanma Barranquero <lekktu@gmail.com>
3841
3842 * character.c (syms_of_character) <script-representative-chars>:
3843 Fix typo in docstring.
3844
c96169a0
AR
38452009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3846
3847 * nsmenu.m (pop_down_menu): New function.
3848 (ns_popup_dialog): Call it on unwind.
3849 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3850 call timer_check() (Bug#2154).
3851 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3852 handling_signal is set.
3853 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3854
31fd7c5c 3855 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
3856
3857 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3858
3859 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3860
51d861de
SM
3861 * keyboard.c (poll_for_input_1, handle_async_input):
3862 Set handling_signal under HAVE_NS.
c96169a0 3863
aacd8ba1
GM
38642009-02-04 Glenn Morris <rgm@gnu.org>
3865
3866 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3867
4cb75c4b
KH
38682009-02-04 Kenichi Handa <handa@m17n.org>
3869
3870 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3871
3872 * charset.c (Fchar_charset): New optional arg restriction.
3873
3874 * coding.h (coding_system_charset_list): Extern it.
3875
3876 * coding.c (coding_system_charset_list): New function.
3877
3878 * composite.c: Include coding.h and termhooks.h.
3879 (composition_gstring_p): Fix for the terminal case.
3880 (composition_gstring_width): Likewise.
3881 (fill_gstring_body): Likewise.
3882 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3883 the frame.
3884 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3885 is within a composition.
867d4bb3 3886 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
3887
3888 * term.c (encode_terminal_code): Fix handling of composition.
3889 (produce_composite_glyph): For static composition, get pixel_width
3890 from struct composition.
3891
826ba17e
AS
38922009-02-02 Andreas Schwab <schwab@suse.de>
3893
3894 * unexelf.c (unexec): Handle unaligned bss offset.
3895
8ad093db
AR
38962009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3897
3898 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3899 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 3900
8ad093db
AR
3901 * keyboard.c (handle_interrupt): Don't call
3902 quit_throw_to_read_char() under NS.
d0a76a6e 3903
8ad093db
AR
3904 * blockinput.h: Remove NS-specific code.
3905
4d18a7a2
DN
39062009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3907
db878925
DN
3908 * dispnew.c (window_change_signal): Don't try to get the size of a
3909 suspended tty frame.
3910 * term.c (Fresume_tty): Resize if the size has changed while the
3911 tty was suspended.
3912
4d18a7a2
DN
3913 * alloc.c (mark_stack): Properly conditionalize previous change.
3914
8984df7c
JB
39152009-01-30 Juanma Barranquero <lekktu@gmail.com>
3916
3917 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3918 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3919 Remove; this code is not used on Windows.
3920
75f4f1ac
EZ
39212009-01-30 Eli Zaretskii <eliz@gnu.org>
3922
3923 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
3924 EOLs that also has stray ^M characters.
3925
07a1e794
JB
39262009-01-30 Juanma Barranquero <lekktu@gmail.com>
3927
3928 * atimer.c (run_timers, alarm_signal_handler):
3929 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
3930 * w32inevt.c (w32_console_read_socket):
3931 * w32term.c (w32_read_socket):
3932 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
3933
a8b11cc9
CY
39342009-01-30 Chong Yidong <cyd@stupidchicken.com>
3935
3936 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
3937 Initialize it as a relative filename pattern.
3938 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
3939 (Fcall_process_region): Simplify temp file creation using
3940 temporary-file-directory.
3941
c279587b
EZ
39422009-01-29 Eli Zaretskii <eliz@gnu.org>
3943
3944 * msdos.c: Rename pending_signals to msdos_pending_signals.
3945 (sig_suspender, sigprocmask): Adjust.
3946
a8fe3242
CY
39472009-01-29 Chong Yidong <cyd@stupidchicken.com>
3948
3949 * keyboard.c (pending_signals): New var.
3950 (poll_for_input, input_available_signal, init_keyboard): Set it.
3951 (process_pending_signals): New function.
3952
3953 * lisp.h (QUIT): Check pending_signals instead of
3954 interrupt_input_pending. Use process_pending_signals.
3955
51d861de 3956 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 3957
51d861de 3958 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
3959
3960 * sysdep.c (emacs_write): Use process_pending_signals.
3961
3962 * xterm.c (XTread_socket): Update pending_signals.
3963
3964 * w32term.c (w32_read_socket): Update pending_signals.
3965
3966 * w32inevt.c (w32_console_read_socket): Update pending_signals.
3967
6570a1c4
KH
39682009-01-29 Kenichi Handa <handa@m17n.org>
3969
3970 * xftfont.c (xftfont_has_char): New function.
3971 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
3972
d72a4afa
AR
39732009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3974
3975 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
3976 under GNUstep.
3977 (ns_query_color): New declaration.
3978
3979 * nsterm.m (ns_confirm_quit): New variable.
3980 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
3981 (EmacsApp-applicationShouldTerminate:): Use it.
3982 (EmacsPrefsController): Let user set it.
3983 (ns_query_color): New function.
3984 (ns_defined_color): Use it.
3985 (ns_initialize): Drop.
3986 (ns_term_init): Add two lines from ns_initialize(), and set
3987 input_interrupt_mode to nil.
3988
3989 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 3990 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 3991
9fe78804
KH
39922009-01-28 Kenichi Handa <handa@m17n.org>
3993
3994 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
3995 (fontset_get_font_group): Remember that no font-group is specified
3996 for C.
9fe78804 3997
fa57de36
CY
39982009-01-27 Chong Yidong <cyd@stupidchicken.com>
3999
930600e9
CY
4000 * fns.c (concat): Check for string overflow (bug#1787).
4001
fa57de36
CY
4002 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
4003 Quadruple undo limits (bug#1501).
4004
7179ce7b
KH
40052009-01-27 Kenichi Handa <handa@m17n.org>
4006
4007 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
4008 directly use GT_Get_Char_index.
4009
4010 * xftfont.c (struct xftfont_info): New member `index'.
4011
4012 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 4013 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 4014
5be8fcc0
CY
40152009-01-26 Kenichi Handa <handa@m17n.org>
4016
4017 * fontset.c (fontset_find_font): Fix handling of non-cons return
4018 value of fontset_get_font_group.
4019 (fontset_font): Revert last change.
4020
19ae3e61
JR
40212009-01-26 Jason Rumney <jasonr@gnu.org>
4022
4023 * w32font.c (w32font_list_internal): Return quickly if registry is
4024 unknown. Simplify final return.
4025 (add_font_entity_to_list): Break complex logic down into more
4026 manageable chunks. Move unknown registry check to
4027 w32font_list_internal.
4028
8612b71a
AR
40292009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
4030
4031 Changes to remove Feval calls from GUI under NS.
4032
d8038940
JB
4033 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
4034 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
4035 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
4036
4037 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
4038 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
4039 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
4040 instead of NON_ASCII_KEYSTROKE_EVENT.
4041 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
4042 (EmacsApp-applicationShouldTerminate:): Query user.
4043 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
4044 instead of Feval.
4045
4046 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
4047
4048 * keyboard.c (kbd_buffer_get_event): Check for it.
4049 (keys_of_keyboard): Define lispy keys for
4050 ns-put/unput-working-text.
4051
4052 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
4053 versions.
4054 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
4055
6288ae55
CY
40562009-01-25 Chong Yidong <cyd@stupidchicken.com>
4057
4058 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 4059 setting current_buffer directly. (Bug#2044)
6288ae55 4060
289e7f8f
CY
40612009-01-24 Chong Yidong <cyd@stupidchicken.com>
4062
5ce87308 4063 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 4064 any work. (Bug#1952, bug#1990).
5ce87308 4065
64cc3cf6 4066 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 4067
b3243e6f
AR
40682009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4069
4070 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
4071 (ns_no_defaults): New declaration.
4072 (main): Use it.
e0d2e69a 4073
d900b2af 4074 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 4075
d900b2af 4076 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 4077
d900b2af
AR
4078 * nsterm.m (ns_no_defaults): New variable.
4079 (ns_initialize): Don't read defaults when ns_no_defaults.
4080 (EmacsView-readSelectionFromPasteboard:)
4081 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 4082 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
4083 (ns_dumpglyphs_stretch): New function.
4084 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 4085 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 4086
e0d2e69a
AR
4087 * nsimage.m (setPixmapData:): Set to ignore image DPI.
4088
3ac71f5d
CY
40892009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
4090
4091 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
4092 call for Sparc64.
4093
3fe53a83
AR
40942009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4095
4096 * nsfns.m:
4097 * nsgui.h:
4098 * nsmenu.m:
4099 * nsselect.m:
4100 * nsterm.h:
4101 * nsterm.m: Remove '23' comments that indicated code added during
4102 update from emacs-20 -> emacs-23.
4103
10f87c6f 41042009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
4105
4106 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 4107 ns_alternate_modifier. (Bug#1217)
a3b53a85 4108
c7cef62d
AR
4109 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
4110 Display all shortcuts, including those w/o super modifier.
4111
575fb8bd
AR
4112 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
4113
918b848b
CY
41142009-01-22 Chong Yidong <cyd@stupidchicken.com>
4115
4116 * fileio.c (Vwrite_region_post_annotation_function)
4117 (Vwrite_region_annotation_buffers): New vars.
4118 (build_annotations_unwind): Just reset
4119 Vwrite_region_annotation_buffers.
4120 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
4121 Call write-region-post-annotation-function.
4122 (build_annotations): Add to Vwrite_region_annotation_buffers if
4123 buffer changes.
4124
a39e2539
AR
41252009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4126
4127 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
4128 Tiger.
51d861de
SM
4129 * nsfns.m (ns_do_applescript):
4130 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 4131
35ed44db
AR
41322009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4133
4134 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
4135
cbe0b5bf
AR
41362009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4137
4138 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 4139
6049d3a0
AR
4140 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
4141
4142 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
4143 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
4144 handle Ctrl-tab. (Bug#1841)
4145 (ns_get_color): Use unsigned long long for scanned hex string value.
4146 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 4147 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 4148 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 4149 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 4150 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 4151 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 4152 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 4153
d3810c21 4154 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 4155 DPI. (Bug#1316)
d3810c21
AR
4156 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
4157 values in onTiger section.
4c7077c3 4158
e301e634
CY
41592009-01-19 Chong Yidong <cyd@stupidchicken.com>
4160
7f82490b
CY
4161 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
4162 Check return value of font_spec_from_name.
64cc3cf6 4163 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
4164
4165 * font.c (font_spec_from_name): Return Qnil if font name could not
4166 be parsed.
4167 (font_parse_name): Treat a `?' character as part of an XLFD.
4168
e301e634
CY
4169 * fns.c (Fsubstring): Doc fix.
4170
1c0db158
KH
41712009-01-19 Kenichi Handa <handa@m17n.org>
4172
51d861de 4173 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
4174 (ftfont_list): Likewise.
4175
acf20901
JB
41762009-01-18 Juanma Barranquero <lekktu@gmail.com>
4177
fff4e459
JB
4178 * dbusbind.c (Fdbus_register_signal):
4179 * process.c (conv_sockaddr_to_lisp):
4180 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
4181
acf20901
JB
4182 * callproc.c (Fgetenv_internal): Doc fix.
4183
e7abcdfb
CY
41842009-01-16 Chong Yidong <cyd@stupidchicken.com>
4185
4186 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
4187 it is not even used.
4188
b60861e6
GM
41892009-01-16 Glenn Morris <rgm@gnu.org>
4190
4191 * font.c (Ffont_variation_glyphs): Silence compiler.
4192
8db52afe
JB
41932009-01-15 Juanma Barranquero <lekktu@gmail.com>
4194
4195 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
4196 Reported by David Robinow <drobinow@gmail.com>.
4197
4cddb209
KH
41982009-01-15 Kenichi Handa <handa@m17n.org>
4199
51d861de 4200 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 4201
f247f67b
JR
42022009-01-14 Jason Rumney <jasonr@gnu.org>
4203
4204 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 4205 never a fontset. (Bug#1562)
f247f67b 4206
f56a4450
KH
42072009-01-14 Kenichi Handa <handa@m17n.org>
4208
4209 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 4210 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 4211
4e99855e
CY
42122009-01-13 Chong Yidong <cyd@stupidchicken.com>
4213
4214 * font.c (font_clear_prop): If clearing the family, clear the font
4215 width index too.
4216
fff4e459 4217 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 4218
24f01470
JB
42192009-01-12 Juanma Barranquero <lekktu@gmail.com>
4220
4221 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
4222 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
4223 functions, use sizeof.
4224
a41240a3
MR
42252009-01-12 Martin Rudalics <rudalics@gmx.at>
4226
4227 * keyboard.c (read_char): Fix case where last_nonmenu_event
4228 returned a bad value with submenus. (Bug#447)
4229
944636b8
CY
42302009-01-12 Chong Yidong <cyd@stupidchicken.com>
4231
4232 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
4233 family, clear the font width index too.
4234
0dad7c6f
JR
42352009-01-11 Jason Rumney <jasonr@gnu.org>
4236
4237 * keyboard.c (cmd_error_internal): Exit when errors occur before
4238 frame creation and not in daemon mode. (Bug#1836)
4239
7c2363af
CY
42402009-01-10 Chong Yidong <cyd@stupidchicken.com>
4241
4242 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
4243 of a display vector, backtrack.
4244 (try_window_reusing_current_matrix): Check glyph type before
4245 referencing charpos member.
4246
97b1b294
EZ
42472009-01-10 Eli Zaretskii <eliz@gnu.org>
4248
4249 Fix Bug #876:
4250
4251 * coding.c (inhibit_null_byte_detection): New variable.
4252 (detect_coding, detect_coding_system): Don't pay attention to null
4253 bytes if inhibit_null_byte_detection is non-zero.
51d861de 4254 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
4255 <inhibit-iso-escape-detection>: Doc fix.
4256
4624b6e3
JR
42572009-01-09 Jason Rumney <jasonr@gnu.org>
4258
4259 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 4260 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
4261 Only report Unicode Plane 2 fonts as unicode-sip.
4262
323b840c
CY
42632009-01-09 Chong Yidong <cyd@stupidchicken.com>
4264
51d861de
SM
4265 * xfaces.c (Fx_font_family_list): Delete function.
4266 Move compatibility version to faces.el.
323b840c 4267
51d861de 4268 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 4269
eba7400d
MR
42702009-01-09 Martin Rudalics <rudalics@gmx.at>
4271
4272 * frame.c (x_set_frame_parameters): Remember requested value for
4273 fullscreen before it's reset by the parameter handler.
4274
4b09796d
GM
42752009-01-09 Glenn Morris <rgm@gnu.org>
4276
4277 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 4278 (last_command_event): ... and update all users.
4b09796d
GM
4279 (last_input_char): For clarity, rename to...
4280 (last_input_event): ... and update all users.
4281 (last-command-char, last-input-char): Move to subr.el as aliases.
4282 * cmds.c, commands.h: Update for last_command_char rename.
4283
14ccea62
CY
42842009-01-08 Chong Yidong <cyd@stupidchicken.com>
4285
51d861de 4286 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 4287
5f004711
JR
42882009-01-08 Jason Rumney <jasonr@gnu.org>
4289
4290 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
4291 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
4292 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
4293 Don't declare.
fff4e459 4294 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
4295 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
4296
b71f6f73
KH
42972009-01-07 Kenichi Handa <handa@m17n.org>
4298
50b06221 4299 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 4300 remember the coding system used for decoding in
50b06221
KH
4301 coding_system (Bug#1039).
4302
b71f6f73 4303 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 4304 breaking the loop. (Bug#870)
b71f6f73
KH
4305 (decode_coding_utf_16, decode_coding_emacs_mule)
4306 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4307 (decode_coding_charset): Likewise.
4308
56f668f7
MR
43092009-01-05 Martin Rudalics <rudalics@gmx.at>
4310
4311 * frame.c (x_set_frame_parameters): Make sure height (width) get
4312 applied when fullwidth (fullheight) is set. (Bug#1522)
4313
5da9424d
JB
43142009-01-04 Juanma Barranquero <lekktu@gmail.com>
4315
4316 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4317 (utc_base): Declare as ULONGLONG, not long double.
4318 (convert_time_raw): Delete.
4319 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4320 (initialize_utc_base): New function.
4321 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4322 (convert_from_time_t): Use initialize_utc_base; compute result with
4323 64-bit arithmetic.
4324 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4325
c4605e09
EZ
43262009-01-03 Eli Zaretskii <eliz@gnu.org>
4327
9acef61c 4328 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
4329 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4330 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4331 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4332 [!subprocesses]: Define.
4333 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4334 (Flist_system_processes, Fsystem_process_attributes)
4335 [!subprocesses]: Call list_system_processes and
4336 system_process_attributes instead of returning Qnil.
4337
9acef61c
JB
4338 * dosfns.c (system_process_attributes, list_system_processes):
4339 New functions.
c4605e09
EZ
4340
4341 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4342
4343 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4344 Don't use the default (no-op) implementation.
4345
8b7d0a16
JR
43462009-01-03 Jason Rumney <jasonr@gnu.org>
4347
a6d46bc1
JR
4348 * keyboard.c (parse_modifiers_uncached): Wheel events are
4349 clicks (bug#687).
4350
8b7d0a16
JR
4351 * w32term.c (x_query_colors, x_query_color): New functions.
4352
4353 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4354 (svg_load_image): Cast returned pointers from dynamically loaded
4355 functions. Eliminate W32 specific code.
4356
bfe11752
DN
43572009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4358
89e2438a
DN
4359 * nsfns.m (x_set_foreground_color, x_set_background_color)
4360 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4361 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4362 x_ prefix instead of ns_. Update references.
4363 (syms_of_nsfns): Add a FIXME comment.
4364
4365 * nsterm.m (x_set_cursor_type): New prototype.
4366 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4367
bfe11752
DN
4368 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4369 for Solaris instead of incorrectly providing Qutime and Qcutime.
4370
031da700
EZ
43712009-01-02 Eli Zaretskii <eliz@gnu.org>
4372
4373 * w32.c (process_times): Compute sum of utime and stime.
4374 (system_process_attributes): Add Qtime to the alist.
4375
4376 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4377 and add them to the alist.
4378
4379 * process.c (top level) <Qtime, Qctime>: New variables.
4380 (syms_of_process): staticpro them.
4381 (Fsystem_process_attributes): Add their documentation to the doc
4382 string.
4383
4384 * process.h: Declare Qtime and Qctime.
4385
df23bf08
JR
43862009-01-02 Jason Rumney <jasonr@gnu.org>
4387
9acef61c 4388 * image.c (Qgobject): New symbol.
df23bf08
JR
4389 (syms_of_image): Initialize it.
4390 (init_svg_functions): Load some functions from gobject library.
4391
5bbdf7aa
DN
43922009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4393
4394 * frame.c (make_terminal_frame): Remove redundant code and useless
4395 block.
4396
63136da6
AS
43972009-01-01 Andreas Schwab <schwab@suse.de>
4398
4399 * process.c (conv_sockaddr_to_lisp): Add workaround for
4400 getsockname bug on BSD.
4401
9ef69046
CY
44022009-01-01 Chong Yidong <cyd@stupidchicken.com>
4403
d6fafbe0
CY
4404 * xfns.c (x_create_tip_frame): Set border width of the X window.
4405
51d861de 4406 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 4407
f9c34147
JR
44082009-01-01 Jason Rumney <jasonr@gnu.org>
4409
9acef61c 4410 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
4411 Don't block input, as per earlier xterm.c changes.
4412
f5497e45
AR
44132008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4414
4415 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4416 (ns_appkit_version_int): New function.
4417 (x-server-version): Use ns_appkit_version_int and follow 21+
4418 convention of returning 3 integers.
4419
c19cab20
KH
44202008-12-30 Kenichi Handa <handa@m17n.org>
4421
4422 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4423 (CHAR_SURROGATE_PAIR_P): New macro.
4424
4425 * font.h (struct font_driver): New member get_variation_glyphs.
4426
9acef61c 4427 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
4428 (Ffont_variation_glyphs): New function.
4429 (syms_of_font): Defsubr it.
4430
4431 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4432 ftfont_variation_glyphs.
4433 (setup_otf_gstring): New function.
4434 (ftfont_drive_otf): Use it.
4435 (ftfont_shape_by_flt): Handle variation selector.
4436 (ftfont_variation_glyphs): New function.
4437
28cd591f
MR
44382008-12-30 Martin Rudalics <rudalics@gmx.at>
4439
4440 * frame.c (Vemacs_iconified): Remove.
4441
7f714baf
JR
44422008-12-30 Jason Rumney <jasonr@gnu.org>
4443
4444 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 4445 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 4446
9d2d22ab
CY
44472008-12-30 Chong Yidong <cyd@stupidchicken.com>
4448
4449 * indent.c (Fvertical_motion): Don't advance iterator if we have
4450 reseated to the desired position.
4451
4452 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4453 checking for pos match.
4454
545312c2
KH
44552008-12-30 Kenichi Handa <handa@m17n.org>
4456
1ede3eb6
KH
4457 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4458 just get the low 8-bit of the code.
4459
545312c2
KH
4460 * font.c (font_intern_prop): Validate str as multibyte.
4461
bd7bbf29
DN
44622008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4463
31e0750e
DN
4464 * dispextern.h (struct face): Move lface and hash from the middle
4465 of bitfields.
4466
bd7bbf29
DN
4467 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4468
b5672e7c
DN
44692008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4470
4471 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4472 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4473 instead of intervals.h.
4474
d704470f
AS
44752008-12-26 Andreas Schwab <schwab@suse.de>
4476
4477 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4478 cons.
4479
54b33868
MR
44802008-12-26 Martin Rudalics <rudalics@gmx.at>
4481
4482 * textprop.c (Qminibuffer_prompt): New variable.
4483 (syms_of_textprop): Initialize it.
4484 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4485 in minibuffer-prompt face. (Bug#1662)
4486
40b615d6
JR
44872008-12-25 Jason Rumney <jasonr@gnu.org>
4488
4489 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4490
baae5c2d
JR
44912008-12-24 Jason Rumney <jasonr@gnu.org>
4492
4493 * ralloc.c (r_alloc_reset_variable): New function.
4494
4495 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4496 record of what points where. (Bug#716)
baae5c2d 4497
a9051c88
DN
44982008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4499
4500 * minibuf.c (read_minibuf): Follow the non-interactive case when
4501 running as a daemon, before detaching.
4502
8b146312
AS
45032008-12-22 Andreas Schwab <schwab@suse.de>
4504
4505 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4506 * gtkutil.c (free_widget_value): Use xfree instead of free.
4507
56f2de10
MR
45082008-12-22 Martin Rudalics <rudalics@gmx.at>
4509
4510 * frame.c (delete_frame): New function derived from
4511 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4512 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4513 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4514 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4515 * frame.h: Extern delete_frame.
4516 * window.c (window_loop):
4517 * terminal.c (delete_terminal):
4518 * xterm.c (x_connection_closed):
4519 * xfns.c (Fx_hide_tip):
9acef61c 4520 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4521
1fc200d6
JR
45222008-12-21 Jason Rumney <jasonr@gnu.org>
4523
4524 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4525 when character maps to .notdef character.
4526
5e252df2
SM
45272008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4528
4529 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4530
99b72cc4
JR
45312008-12-20 Jason Rumney <jasonr@gnu.org>
4532
4533 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4534 a graphical frame on Windows. (Bug#1325)
99b72cc4 4535
acc49a52
JD
45362008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4537
4538 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4539
6ea15123
CY
45402008-12-20 Chong Yidong <cyd@stupidchicken.com>
4541
4542 * minibuf.c (Fread_buffer): Doc fix.
4543
b2dab6c8
JR
45442008-12-20 Jason Rumney <jasonr@gnu.org>
4545
54ea0c87 4546 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4547 server name in UNC paths. (Bug#719)
54ea0c87 4548
b2dab6c8 4549 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4550 charbuf. (Bug#1035)
b2dab6c8 4551
6d1921be
DN
45522008-12-19 Daniel Engeler <engeler@gmail.com>
4553
4554 * sysdep.c (serial_configure): Fix typo.
4555
53934c98
DN
45562008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4557
4558 * sysdep.c: Include alloca.h.
f4f634e8
DN
4559 (system_process_attributes): Add implementation for Solaris.
4560
4561 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4562
06e111a6
DN
45632008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4564
4565 Reorganize implementation of Flist_system_processes and
4566 Fsystem_process_attributes. No functional changes.
4567 * process.c: Don't #include pwd.h, grp.h and limits.h.
4568 (Flist_system_processes): Just call list_system_processes.
4569 (Fsystem_process_attributes): Just call system_process_attributes.
4570 (procfs_list_system_processes, time_from_jiffies)
4571 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4572 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4573
4574 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4575 (list_system_processes): Rename from
4576 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4577 Provide a do nothing implementation.
4578 (system_process_attributes): Rename from
4579 procfs_list_system_processes.
4580 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4581 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4582
4583 * w32.c (list_system_processes): Rename from
4584 w32_list_system_processes.
4585 (system_process_attributes): Rename from
4586 w32_system_process_attributes.
4587
4588 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4589
4590 * process.h (w32_list_system_processes)
4591 (w32_system_process_attributes): Remove.
362654a6
JB
4592 (list_system_processes, system_process_attributes):
4593 New prototypes.
06e111a6 4594
6a705b23
KH
45952008-12-19 Kenichi Handa <handa@m17n.org>
4596
4597 * xfont.c (xfont_decode_coding_xlfd): New function.
4598 (xfont_encode_coding_xlfd): New function.
4599 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4600 (xfont_list): Decode and encode XLFD by iso-8859-1.
4601 (xfont_match): Likewise.
4602 (xfont_list_family): Likewise.
4603 (xfont_open): Likewise.
4604
d66c0241 4605 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4606 names are utf-8.
4607
d66c0241 4608 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4609 names are utf-8.
4610
5a130941
JD
46112008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4612
4613 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4614 changed.
bfd20325
JD
4615 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4616 clicked on a detached tool bar button.
5a130941 4617
fd95644b
DN
46182008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4619
4620 * emacs.c (main): Print and error and exit when no data is read
4621 from the pipe.
4622
e6eee6ae
JR
46232008-12-17 Jason Rumney <jasonr@gnu.org>
4624
4625 * w32font.c (w32font_has_char): Always return -1.
4626
a35dd56b
KH
46272008-12-16 Kenichi Handa <handa@m17n.org>
4628
4629 * font.c (font_open_entity): Fix previous change.
4630
0e3635c2
DN
46312008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4632
4633 * process.c: Include <limits.h>.
4634
d4835507 46352008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4636
4637 * font.c (font_update_drivers): Fix mistake in reconstructing the
4638 driver list.
4639
46402008-12-16 Chong Yidong <cyd@stupidchicken.com>
4641
4642 * font.c (font_clear_cache): Fix format of font cache data.
4643
e2cbc401
CY
46442008-12-15 Chong Yidong <cyd@stupidchicken.com>
4645
4646 * xftfont.c (xftfont_open): Free Xft font pattern if
4647 XftFontOpenPattern fails.
4648
4649 * xterm.c (x_free_frame_resources): Remove extraneous call to
4650 free_frame_faces.
4651
b131d535
CY
46522008-12-13 Chong Yidong <cyd@stupidchicken.com>
4653
4654 * xterm.c (x_delete_display): Move xim_close_dpy call to
4655 x_delete_terminal.
4656 (x_delete_terminal): Call xim_close_dpy.
4657
e6df5336
JR
46582008-12-13 Jason Rumney <jasonr@gnu.org>
4659
4660 * w32font.c (intern_font_name): New function.
4661 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4662 (w32font_open_internal, Fx_select_font): Decode font name.
4663 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4664
4665 * w32font.h (intern_font_name): Declare new function.
4666
4667 * w32uniscribe.c (add_opentype_font_name_to_list):
4668 Use intern_font_name.
4669
20d68145
CY
46702008-12-13 Chong Yidong <cyd@stupidchicken.com>
4671
9f2554de
CY
4672 * frame.c (Fdelete_frame): Call free_font_driver_list.
4673
3d9bec9a
CY
4674 * font.c (free_font_driver_list): Implement missing function.
4675
20d68145
CY
4676 * w32term.c (w32_term_init): Don't initialize the image cache
4677 here; it will be done in init_frame_faces.
4678
4679 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4680 (struct x_display_info): Remove unused member null_pixel. New
4681 member xim_callback_data.
4682
4683 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4684 (xim_initialize): Save pointer to callback function data.
4685 (xim_close_dpy): Free callback function data. Call XCloseIM,
4686 reverting 2008-11-04 change by David Smith.
4687 (x_term_init): Don't initialize the image cache here; it will be
4688 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4689 (x_delete_display): Free x_dnd_atoms member.
4690
96f9306b
KH
46912008-12-13 Kenichi Handa <handa@m17n.org>
4692
6dec9044
JB
4693 * font.c (font_rescale_ratio): Moved from xfaces.c.
4694 Argument type changed. Handle a font-spec too.
96f9306b 4695 (font_score): Check Vface_font_rescale_alist.
6dec9044 4696 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4697
4698 * xfaces.c (font_rescale_ratio): Moved to font.c.
4699
8d5b4964
CY
47002008-12-13 Chong Yidong <cyd@stupidchicken.com>
4701
4702 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4703
e6df5336
JR
47042008-12-12 Jason Rumney <jasonr@gnu.org>
4705
4706 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4707 Vwindow_system_version to the real w32 major version.
4708
97c6058a
DN
47092008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4710
4711 * term.c (init_tty): Move setting the terminal name before the
4712 potential user: maybe_fatal.
4713
ec4e88d7
CY
47142008-12-11 Chong Yidong <cyd@stupidchicken.com>
4715
d4835507
JB
4716 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4717 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4718
b4233ec9
JR
47192008-12-11 Jason Rumney <jasonr@gnu.org>
4720
8ec71e23 4721 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4722 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4723
b4233ec9 4724 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4725 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4726
011a0143
JB
47272008-12-11 Juanma Barranquero <lekktu@gmail.com>
4728
4729 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4730
3c309f34
JB
47312008-12-11 Juanma Barranquero <lekktu@gmail.com>
4732
4733 * process.c (Fsystem_process_attributes, syms_of_process):
4734 Fix typo in name of Ssystem_process_attributes.
4735 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4736
fedc6ab5
JB
47372008-12-11 Juanma Barranquero <lekktu@gmail.com>
4738
4739 * syntax.c (Fmodify_syntax_entry): Doc fix.
4740
ba3de0e8
JB
47412008-12-10 Juanma Barranquero <lekktu@gmail.com>
4742
4743 * font.c (Ffont_spec): Move usage to end of docstring.
4744
174f1c74
JR
47452008-12-10 Jason Rumney <jasonr@gnu.org>
4746
4747 * w32font.c (Qcham): New symbol.
4748 (font_supported_scripts): Add cham, and comments for other new
4749 scripts in bitfield from OpenType spec.
9d32f818
JR
4750 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4751 contain characters beyond the bmp.
174f1c74 4752
7b649478
KH
47532008-12-10 Kenichi Handa <handa@m17n.org>
4754
4755 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4756 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4757 Qunicode_sip.
4758
2133e2d1
JB
47592008-12-10 Juanma Barranquero <lekktu@gmail.com>
4760
4761 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4762 (Fcoding_system_put): Use QCdefault_char.
4763 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4764
9af886ee
CY
47652008-12-09 Chong Yidong <cyd@stupidchicken.com>
4766
74d819eb
CY
4767 * xftfont.c (syms_of_xftfont): Fix typo.
4768
4ccfa1c0 4769 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4770
7c19d3ae
DN
47712008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4772
4773 * emacs.c (main): Close daemon_pipe on exec.
4774
567826bb
CY
47752008-12-08 Chong Yidong <cyd@stupidchicken.com>
4776
4777 * termchar.h (struct tty): New members termcap_term_buffer and
4778 termcap_strings_buffer.
4779
4780 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4781 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4782 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4783 All callers changed.
4784 (init_tty): Store termcap data and string buffers in new struct
4785 tty members termcap_term_buffer and termcap_strings_buffer.
4786 (delete_tty): Free them.
4ccfa1c0 4787 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4788
aa96c42b
SZ
47892008-12-07 Seiji Zenitani <zenitani@mac.com>
4790
4791 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4792 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4793
b7e1d896
CY
47942008-12-06 Chong Yidong <cyd@stupidchicken.com>
4795
4796 * coding.c (make_conversion_work_buffer): Disable buffer
4797 modification hooks in the work buffer.
4798
b5ec91a5
EZ
47992008-12-05 Eli Zaretskii <eliz@gnu.org>
4800
4801 * process.c (procfs_system_process_attributes): If `nread' has a
4802 negative value, assign zero to it.
4803
a5d2a52b
CY
48042008-12-05 Chong Yidong <cyd@stupidchicken.com>
4805
68c5540b 4806 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4807
7bf1bb21
KH
48082008-12-05 Kenichi Handa <handa@m17n.org>
4809
4810 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4811 second character is a combining character.
4812
2fdc7d00
EZ
48132008-12-05 Eli Zaretskii <eliz@gnu.org>
4814
4815 * process.c (procfs_system_process_attributes): Don't use cmd,
4816 cmdsize, and q without initializing them first.
4817
bf6bfba8
JR
48182008-12-04 Jason Rumney <jasonr@gnu.org>
4819
4820 * w32font.c (w32font_draw): Initialize orig_clip before getting
4821 it, and delete it when finished.
4822
a3b1a468
DN
48232008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4824
4825 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4826 case when running as a daemon before detaching.
4827
8b8be8eb
JB
48282008-12-03 Juanma Barranquero <lekktu@gmail.com>
4829
805f2638 4830 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 4831
b1bde622
KH
48322008-12-03 Kenichi Handa <handa@m17n.org>
4833
e500c47d
KH
4834 * font.c (font_at): Set `multibyte' at first.
4835
ca516334
KH
4836 * coding.c (decode_coding_charset): Check type of an element of
4837 vector VALIDS.
7bf1bb21 4838 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 4839
4ccfa1c0 4840 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
4841 (font_for_char): Likewise.
4842
1e5ecd37
CY
48432008-12-03 Chong Yidong <cyd@stupidchicken.com>
4844
d5b01609 4845 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
4846 (font_update_lface): Handle fonts with corrupted size specs,
4847 i.e. non-int and non-float.
d5b01609 4848
11e3a6e4 4849 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 4850 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 4851 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 4852
ab06788b
CY
4853 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4854
1e5ecd37 4855 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 4856 underline_minimum_offset for underline position.
1e5ecd37 4857
63c125ab
DN
48582008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4859
4860 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4861
4862 * character.c (c_string_width): Specify the type for LEN.
4863
3a8406e1
KH
48642008-12-03 Kenichi Handa <handa@m17n.org>
4865
4ccfa1c0 4866 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 4867 (decode_coding_utf_8): Likewise.
4ccfa1c0 4868 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 4869 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 4870
651df7d9
CY
48712008-12-02 Chong Yidong <cyd@stupidchicken.com>
4872
4873 * keyboard.c (make_lispy_position): Only use PT if the selected
4874 window is current.
4875
1f625c6c
AS
48762008-12-02 Andreas Schwab <schwab@suse.de>
4877
f7741ce9
AS
4878 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4879
1f625c6c
AS
4880 * doprnt.c (doprnt1): Fix size of charbuf.
4881
92bc2678
CY
48822008-12-02 Chong Yidong <cyd@stupidchicken.com>
4883
4884 * keyboard.c (timer_check): Revert last change.
4885
93b9e8cc
JB
48862008-12-02 Juanma Barranquero <lekktu@gmail.com>
4887
4888 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4889
fd7a37d5
JB
48902008-12-01 Juanma Barranquero <lekktu@gmail.com>
4891
4892 * makefile.w32-in: Update dependencies.
4893 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4894
c115043b
AS
48952008-12-01 Andreas Schwab <schwab@suse.de>
4896
4897 * font.c (register_font_driver): Use xmalloc.
4898 (font_put_frame_data): Likewise.
4899
f5668d2a
CY
49002008-12-01 Chong Yidong <cyd@stupidchicken.com>
4901
860d96be
CY
4902 * xfaces.c (realize_x_face): Make abort condition clearer.
4903
f5668d2a
CY
4904 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4905
379c17e7
CY
49062008-11-30 Chong Yidong <cyd@stupidchicken.com>
4907
4908 * keyboard.c (timer_check): After a timer runs, ensure that the
4909 selected window's buffer is current.
4910
35f36d65
JB
49112008-11-30 Juanma Barranquero <lekktu@gmail.com>
4912
f952c61c
JB
4913 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4914 It was accidentally restored by the Unicode merge.
4915
35f36d65
JB
4916 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4917
b23077df
JB
49182008-11-29 Juanma Barranquero <lekktu@gmail.com>
4919
4920 * w32proc.c: Include "coding.h".
4921 (Fw32_short_file_name): Encode filename passed to Windows API.
4922 (Fw32_long_file_name): Encode filename passed to Windows API and
4923 decode back the result. (Bug#1433)
4924
b8ebe9dd
KH
49252008-11-29 Kenichi Handa <handa@m17n.org>
4926
8cc53f96
KH
4927 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
4928 not before accessing it.
4929
b8ebe9dd
KH
4930 * charset.c (Fdefine_charset_internal): After calculating
4931 min_char, max_char, and fastmap, copy the charset structure again.
4932 (encode_char): Fix the previous change.
4933
59bc82c0
SZ
49342008-11-28 Seiji Zenitani <zenitani@mac.com>
4935
4936 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
4937
4938 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
4939
4940 * nsterm.m (x_set_frame_alpha): New function.
4941
32247e3d
EZ
49422008-11-27 Eli Zaretskii <eliz@gnu.org>
4943
4944 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
4945
b003e5ff
JB
49462008-11-27 Juanma Barranquero <lekktu@gmail.com>
4947
4948 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
4949 pointer to check_face_name.
4950
708550f5
KH
49512008-11-27 Kenichi Handa <handa@m17n.org>
4952
4953 * category.h (SET_CATEGORY_SET): Call set_category_set.
4954 (set_category_set): Extern it.
4955
4956 * category.c (hash_get_category_set): New function.
4957 (Fmodify_category_entry): Adjusted for the change of
4958 char_table_ref_and_range. Call hash_get_category_set to get a
4959 category set to store in the table.
4960
4961 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
4962 Funify_charset.
4963
2ae37cf0 4964 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
4965 (DECODE_CHAR): Check if the decoder vector is ready.
4966 (ENCODE_CHAR): Check if the encoder char-table is ready.
4967 (maybe_unify_char): Extern it.
4968
4969 * charset.c (Vchar_unified_charset_table): Delete it.
4970 (inhibit_load_charset_map): New variable.
4971 (temp_charset_work): New variable.
4972 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
4973 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
4974 New macros.
4975 (load_charset_map): Meaning of control_flag changed. If
4976 inhibit_load_charset_map is nonzero, setup a table in
4977 temp_charset_work.
4978 (load_charset): New argument control_flag.
4979 (map_charset_for_dump): New function.
4980 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
4981 map_charset_for_dump.
4982 (Fdefine_charset_internal): If the charset method is MAP, load
4983 mapping tables by calling load_charset.
4984 (Funify_charset): Don't load a mapping table but directly set
4985 Vchar_unify_table.
4986 (maybe_unify_char): New function.
4987 (decode_char): Don't handle the deleted method MAP_DEFERRED.
4988 Handle the case of inhibit_load_charset_map being nonzero.
4989 (encode_char): Don't handle the deleted method MAP_DEFERRED.
4990 Handle the case of inhibit_load_charset_map being nonzero.
4991 (Fclear_charset_maps): Just free temp_charset_work.
4992 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
4993 variable.
4994
4995 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
4996 change of char_table_ref_and_range.
4997 (char_table_ref_and_range): Change the meaning of argument FROM
4998 and TO. Now the caller must provide initial values for *FROM
4999 and *TO.
5000
5001 * fontset.c (fontset_add): Adjusted for the change of
5002 char_table_ref_and_range.
5003 (fontset_get_font_group): Likewise.
5004 (Ffontset_info): Likewise.
5005
5006 * keymap.c (describe_vector): Adjusted for the change of
5007 char_table_ref_and_range. For char-table, put boundary between
5008 non-ASCII and 8-bit characters.
5009
5010 * print.c (print_object): For bool-vector, delete unnecessary
5011 check of ASCII_BYTE_P.
5012
9196133b
JR
50132008-11-26 Jason Rumney <jasonr@gnu.org>
5014
5015 * w32font.c (w32font_open_internal): Don't include external
9acef61c 5016 leading in font height. (Bug#879)
9196133b 5017
9f688acf
GM
50182008-11-26 Glenn Morris <rgm@gnu.org>
5019
5020 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
5021 redefinition with ifdef. (Bug#1383)
5022
90d19aff
AR
50232008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5024
5025 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
5026
4ccfa1c0 50272008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
5028
5029 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
5030 New EmacsView methods.
5031 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
5032 Fixes bug #1048,1357,1414.
5033
50342008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5035
5036 Fix bug #1362.
5037 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
5038 is not an indexed color.
5039 * nsterm.m (free_indexed_color): Add argument checking.
5040 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
5041
e7d5ecb3
CY
50422008-11-24 Chong Yidong <cyd@stupidchicken.com>
5043
5044 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
5045 Document confirm-after-completion value for
5046 minibuffer-completion-confirm.
5047
c285743c
JR
50482008-11-24 Jason Rumney <jasonr@gnu.org>
5049
5050 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
5051 warning.
5052
b0857706
JR
50532008-11-23 Jason Rumney <jasonr@gnu.org>
5054
5055 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
5056 restored before returning.
5057
5058 * w32font.c (check_face_name): New function.
5059 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 5060 fonts. (Bug#642)
b0857706 5061
ee50ff07
MR
50622008-11-22 Martin Rudalics <rudalics@gmx.at>
5063
5064 * buffer.c (Fswitch_to_buffer): Reword and mention new option
5065 confirm-nonexistent-file-or-buffer in doc-string.
5066
b8ff72fa
SM
50672008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
5068
5069 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
5070 Fix copy/paste typo. Add checks.
5071
cee53ed4
KH
50722008-11-21 Kenichi Handa <handa@m17n.org>
5073
5074 * coding.c (detect_coding_iso_2022): Reject invalid composition
5075 sequence.
5076 (DECODE_COMPOSITION_START): If the current source is the last
5077 block, and the current composition doesn't end, regard this
5078 sequence as invalid.
5079 (decode_coding_iso_2022): Handle invalid composition sequence.
5080
f6ef1e65
MR
50812008-11-20 Martin Rudalics <rudalics@gmx.at>
5082
5083 * window.c (coordinates_in_window): Don't return
5084 ON_VERTICAL_BORDER for the rightmost position of a mode/header
5085 line when the window is not the rightmost one. (Bug#1372)
5086
e08b1705
MR
50872008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
5088
5089 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
5090
ad98e89f
EZ
50912008-11-15 Eli Zaretskii <eliz@gnu.org>
5092
5093 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
5094 and bright_bg if noninteractive is non-zero.
5095
fb098a4b
CY
50962008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5097
5098 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
5099 x_draw_glyph_string_background.
5100
5101 * w32term.c (x_draw_glyph_string): Likewise.
5102
ce952b6e
CY
51032008-11-15 Chong Yidong <cyd@stupidchicken.com>
5104
5105 * xterm.c (x_draw_glyph_string): Stop drawing the background of
5106 the next glyph string once past the overhang width.
5107
5108 * nsterm.m (ns_draw_glyph_string): Likewise.
5109
5110 * w32term.c (x_draw_glyph_string): Likewise.
5111
26ea7079
CY
51122008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
5113
5114 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
5115 double file close.
5116
1c33c906
MR
51172008-11-14 Martin Rudalics <rudalics@gmx.at>
5118
5119 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
5120 dedicated status of window before attempting to display another
5121 buffer in it.
5122
8fc29035
JB
51232008-11-14 Juanma Barranquero <lekktu@gmail.com>
5124
5125 * msdos.c (Fmsdos_long_file_names):
5126 (syms_of_msdos) <dos-unsupported-char-glyph>:
5127 * dosfns.c (Fint86): Fix typos in docstrings.
5128
55fb4286
EZ
51292008-11-14 Eli Zaretskii <eliz@gnu.org>
5130
5131 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
5132
3fda0315
KY
51332008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
5134
5135 * puresize.h (BASE_PURESIZE): Increase to 1260000.
5136
7e849c17
CY
51372008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
5138
5139 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
5140
5141 * frame.h: Negative alpha means "don't touch".
5142
5143 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
5144
5145 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
5146
b9fd67bd
DN
51472008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
5148
5149 * hftctl.c:
5150 * chpdef.h:
5151 * acldef.h: Remove files used only for systems no longer supported.
5152
5153 * Makefile.in: Fix .o alphabetical ordering.
5154 (hftctl.o): Remove dependency, file removed.
5155 (keymap.o, print.o): Depend on charset.h.
5156
d5998e03
KH
51572008-11-10 Kenichi Handa <handa@m17n.org>
5158
2ae37cf0 5159 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 5160
be70e183
CY
51612008-11-08 Chong Yidong <cyd@stupidchicken.com>
5162
5163 * dired.c (file_name_completion): If completion_ignore_case is
5164 enabled, ignore case when checking completion-regexp-list.
5165
7cf94eac
EZ
51662008-11-08 Eli Zaretskii <eliz@gnu.org>
5167
5168 * vm-limit.c (get_lim_data): Fix last change.
5169
ee107a89
KH
51702008-11-08 Kenichi Handa <handa@m17n.org>
5171
5172 * character.c (Fget_byte): New function.
5173 (syms_of_character): Defsubr Fget_byte.
5174
5fd15622
CY
51752008-11-07 Chong Yidong <cyd@stupidchicken.com>
5176
5177 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
5178 cursor position is valid after scrolling.
5179
13d62fad
JB
51802008-11-06 Juanma Barranquero <lekktu@gmail.com>
5181
5182 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
5183
a1dd2936
GM
51842008-11-06 Glenn Morris <rgm@gnu.org>
5185
5186 * xterm.c (handle_one_xevent): Don't let popup menus cause
5187 mouse-autoselect-window related window switching. (Bug#1261)
5188
860cd236
CY
51892008-11-04 David Smith <davidsmith@acm.org> (tiny change)
5190
5191 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
5192
653a3150
AS
51932008-11-04 Andreas Schwab <schwab@suse.de>
5194
5195 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
5196
870f5cac
CY
51972008-11-03 Chong Yidong <cyd@stupidchicken.com>
5198
5199 * xfns.c (Fx_wm_set_size_hint): New function.
5200
1e02f3cb
MR
52012008-11-03 Martin Rudalics <rudalics@gmx.at>
5202
5203 * textprop.c (Fprevious_single_char_property_change): Return 0
5204 when there's no change in a string. (Bug#1301)
5205
e630dfc6
MR
52062008-11-02 Martin Rudalics <rudalics@gmx.at>
5207
5208 * frame.c (do_switch_frame): New argument NORECORD passed to
5209 Fselect_window.
5210 (Fselect_frame): New argument NORECORD passed to
5211 do_switch_frame.
5212 (Fset_frame_selected_window): New argument NORECORD passed to
5213 Fselect_frame.
5214 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
5215 in call of do_switch_frame.
5216 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
5217 Handle NORECORD argument in call of Fselect_frame.
5218 * lisp.h (do_switch_frame, Fselect_frame)
5219 (Fset_frame_selected_window): Adjust declarations.
5220 * window.c (select_frame_norecord): New function.
5221 (run_window_configuration_change_hook): Use it and call
5222 Fselect_frame with NORECORD set.
5223 (Fselect_window): Pass NORECORD to Fselect_frame.
5224 (Fset_window_configuration): Handle NORECORD argument in call of
5225 do_switch_frame.
5226 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
5227 Fset_frame_selected_window.
5228 * keyboard.c (command_loop_1): Handle NORECORD in call of
5229 Fselect_frame (currently ifdefd).
5230
9020b223
GM
52312008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
5232
5233 * emacs.c (USAGE2): Untabify.
5234
793ffee8
SM
52352008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
5236
5237 * composite.c (fill_gstring_header): Fix copy/paste typo.
5238
ab6d1131
MR
52392008-10-31 Martin Rudalics <rudalics@gmx.at>
5240
5241 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
5242 (Fother_window): Rename argument and rewrite doc-string.
5243 (select_window_norecord): Fix return value. (Bug#1276)
5244
601a9cf1
JB
52452008-10-30 Juanma Barranquero <lekktu@gmail.com>
5246
5247 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
5248 new frames overriding foreground for tooltips. Based on similar patch
5249 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
5250
813b0652
CY
52512008-10-29 Chong Yidong <cyd@stupidchicken.com>
5252
5253 * emacs.c (Fdaemon_initialized): Initialize nfd.
5254
4414f58f
MR
52552008-10-29 Martin Rudalics <rudalics@gmx.at>
5256
5257 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
5258 (Fwindow_text_height): Clarify doc-strings.
5259 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
5260 doc-string of window-scroll-functions.
5261
ecdcaa09
RS
52622008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
5263
5264 * category.c (syms_of_category): Fix typo in docstring.
5265
23fe745a
JB
52662008-10-28 Juanma Barranquero <lekktu@gmail.com>
5267
5268 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
5269 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
5270 Fix typos in docstrings.
5271
ff808935
DN
52722008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
5273
5274 * emacs.c (daemon_pipe): Make non-static.
5275 (IS_DAEMON): Move definition ...
5276 * lisp.h (IS_DAEMON): ... here.
5277 (daemon_pipe): Declare.
5278 (is_daemon): Remove.
5279 * dispnew.c (init_display): Use IS_DAEMON.
5280
fc012771
SM
52812008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5282
5283 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
5284 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
5285
5286 * emacs.c (is_daemon): Remove.
5287 (main): Don't set is_daemon.
5288 (IS_DAEMON): New macro.
5289 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 5290 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
5291 parent exits.
5292 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
5293
d8bdbe6f
CY
52942008-10-27 Chong Yidong <cyd@stupidchicken.com>
5295
d1a072bf
CY
5296 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
5297 over-sized glyph, draw it with the default glyph width.
5298
e2e325aa
CY
5299 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5300 glyph, draw it with the default glyph width.
5301
5302 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5303 glyph, draw it with the default glyph width.
5304
d8bdbe6f
CY
5305 * xdisp.c (try_scrolling): When computing the distance from the
5306 scroll margin to PT, try moving some distance past the window
5307 bottom before giving up.
5308
7bfac547
MR
53092008-10-27 Martin Rudalics <rudalics@gmx.at>
5310
5311 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
5312 (Fset_window_buffer): Explain in doc-string that a window can be
5313 "strongly" dedicated to its buffer.
5314
4ff029f6
DN
53152008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
5316
5317 * emacs.c (daemon_name): New variable.
5318 (main): Deal with --daemon=SERVER_NAME.
5319 (Fdaemonp): Return a name if one was passed to --daemon.
5320
5790ef40
DN
53212008-10-26 Romain Francoise <romain@orebokech.com>
5322
f9bd0df9 5323 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
5324 (main): Create a pipe before forking, make the parent exit only after
5325 the child has closed its end of the pipe. Move closing the
5326 descriptors ...
5327 (Fdaemon_initialized): ... here. New function.
5328
f5385255
SM
53292008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5330
4d632321
SM
5331 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5332 the previous unoptimized table.
5333
f5385255
SM
5334 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5335 the distinction between non-nil and non-t value of `dedicated'.
5336
6c56a0f3
CY
53372008-10-25 Chong Yidong <cyd@stupidchicken.com>
5338
5339 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 5340 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 5341
fec89261
MR
53422008-10-25 Martin Rudalics <rudalics@gmx.at>
5343
5344 * window.c (Fget_buffer_window, Fdelete_windows_on)
5345 (Freplace_buffer_in_windows): Make buffer argument optional and
5346 rename to buffer_or_name.
5347
34fcddd0
CY
53482008-10-24 Chong Yidong <cyd@stupidchicken.com>
5349
f5385255
SM
5350 * xdisp.c (handle_single_display_spec, handle_display_prop):
5351 Undo 2005-05-16 change.
34fcddd0
CY
5352 (handle_stop): Pop iterator if it's loaded with an empty string.
5353 (get_overlay_strings_1): Don't save iterator if it's loaded with
5354 an empty string (bug#1201).
5355
064766f2
KH
53562008-10-24 Kenichi Handa <handa@m17n.org>
5357
5358 * ftfont.c (ftfont_otf_features): Fix previous change.
5359 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5360 calling ftfont_otf_features.
5361
f9bd0df9 53622008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
5363
5364 * font.c (font_match_p): Fix for the case that a vector of
5365 characters is in script-representative-chars.
5366
1dae9197
MA
53672008-10-24 Michael Albinus <michael.albinus@gmx.de>
5368
5369 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 5370 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
5371 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5372 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 5373 macro. (Bug#1186)
1dae9197 5374
f9bd0df9 53752008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
5376
5377 * s/sol2-10.h: New file.
5378
878a4584
JB
53792008-10-23 Juanma Barranquero <lekktu@gmail.com>
5380
5381 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5382 poor beast has survived 9+ years and the jump from xterm.c!).
5383
cd265ca6
MR
53842008-10-23 Martin Rudalics <rudalics@gmx.at>
5385
5386 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5387 Reword doc-string.
f5385255 5388 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 5389
472a4dc9
JB
53902008-10-23 Juanma Barranquero <lekktu@gmail.com>
5391
5392 * character.c (syms_of_character) <script-representative-chars>:
5393 <unicode-category-table>: Doc fixes.
5394
159bd5a2
NF
53952008-10-23 Noah Friedman <friedman@splode.com>
5396
5397 * coding.c (make_conversion_work_buffer): Check that
5398 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5399 Fget_buffer_create.
5400
49f9c344
KH
54012008-10-23 Kenichi Handa <handa@m17n.org>
5402
5403 * font.c (font_add_log): Check the values of extra properties.
5404
12bb3111
MR
54052008-10-22 Martin Rudalics <rudalics@gmx.at>
5406
5407 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5408 Reword doc-string.
5409 (Fset_window_parameter): Use NILP.
5410 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 5411 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 5412
bbeb4e99
JB
54132008-10-22 Juanma Barranquero <lekktu@gmail.com>
5414
5415 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5416
54172008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
5418
5419 * nsfns.m (ns_appkit_version): New function.
5420 (x-server-version): Use it.
5421 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5422 (x-server-vendor): Don't check_ns().
5423
5424 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5425
a9b555d3
JB
54262008-10-22 Juanma Barranquero <lekktu@gmail.com>
5427
5428 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5429 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5430
4626499f
KH
54312008-10-22 Kenichi Handa <handa@m17n.org>
5432
e3681952
KH
5433 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5434 scripts.
5435
4626499f
KH
5436 * category.c (word_boundary_p): Check scripts instead of charset.
5437 Handle nil value in word-separating-categories and
5438 word-combining-categories.
5439 (syms_of_category): Fix docstrings of word-separating-categories
5440 and word-combining-categories.
5441
1560f91a
EZ
54422008-10-21 Eli Zaretskii <eliz@gnu.org>
5443
5444 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5445 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5446
f4668441
MR
54472008-10-21 Martin Rudalics <rudalics@gmx.at>
5448
5449 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5450 Rename arg "buffer" to "buffer_or_name".
5451 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5452 it optional.
5453 (no_switch_window): Remove since the return value is not used.
a9b555d3 5454 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
5455 Consider window as dedicated when Fwindow_dedicated_p returns a
5456 non-nil value.
5457 * lisp.h: Remove prototype for no_switch_window.
5458
fd75ddb2
JD
54592008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5460
5461 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 5462 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 5463
07295713
KH
54642008-10-21 Kenichi Handa <handa@m17n.org>
5465
5466 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5467 check Vlatin_extra_code_table.
5468
712adc82
EZ
54692008-10-20 Eli Zaretskii <eliz@gnu.org>
5470
5471 * fileio.c (Fset_file_modes): Doc fix.
5472
f549eb0b
MA
54732008-10-19 Michael Albinus <michael.albinus@gmx.de>
5474
5475 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5476 in arrays.
5477
aac0c6e3
MR
54782008-10-19 Martin Rudalics <rudalics@gmx.at>
5479
5480 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5481 Mention kill-buffer in doc-string.
5482 (Fset_window_buffer): Reinsert tem check removed in last commit.
5483 (Fenlarge_window, Fshrink_window): Have argument names and
5484 doc-string follow Elisp manual more closely.
5485
54862008-10-18 Eli Zaretskii <eliz@gnu.org>
5487
5488 * fileio.c (Fset_file_modes): Doc fix.
5489
54902008-10-18 Martin Rudalics <rudalics@gmx.at>
5491
5492 * window.c (Fwindow_width, Fset_window_start)
5493 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5494 (Fdelete_windows_on, Freplace_buffer_in_windows):
5495 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5496 (Fwindow_dedicated_p): Make window argument optional.
5497 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5498 (Fset_window_buffer): Respect any non-nil dedicated value for
5499 window. Rename "buffer" argument to "buffer_or_name".
5500
55012008-10-18 Ulrich Mueller <ulm@gentoo.org>
5502
5503 * m/sh3.h: New file, machine description for SuperH.
5504
55052008-10-17 Martin Rudalics <rudalics@gmx.at>
5506
5507 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5508
55092008-10-17 Kenichi Handa <handa@m17n.org>
5510
5511 * ftfont.c (ftfont_otf_features): Fix indexing
5512 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5513
55142008-10-16 Magnus Henoch <mange@freemail.hu>
5515
5516 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5517 (Fdbus_call_method_asynchronously): Ditto.
5518 This change makes C-h f display the argument list.
5519
55202008-10-16 Chong Yidong <cyd@stupidchicken.com>
5521
5522 * fileio.c (Fexpand_file_name): Doc fix.
5523
5524 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5525 of :foreground and :background equivalent to unspecified (20.x
5526 compatibility).
5527
55282008-10-15 Eli Zaretskii <eliz@gnu.org>
5529
5530 * buffer.c (syms_of_buffer): Doc fix.
5531
55322008-10-14 Kenichi Handa <handa@m17n.org>
5533
5534 * font.c (font_clear_prop): When clearing font width, clear the
5535 average width field too.
5536
55372008-10-12 Andreas Schwab <schwab@suse.de>
5538
5539 * ftfont.c (ftfont_shape_by_flt): Make static.
5540 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5541
5542 * font.c: Don't include <m17n-flt.h>.
5543
55442008-10-10 Eli Zaretskii <eliz@gnu.org>
5545
5546 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5547
55482008-10-09 Eli Zaretskii <eliz@gnu.org>
5549
5550 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5551 away code.
5552
55532008-10-09 Chong Yidong <cyd@stupidchicken.com>
5554
5555 * dispnew.c (update_text_area): Avoid looping due to large glyph
5556 overhangs (bug#1070).
5557
55582008-10-09 Kenichi Handa <handa@m17n.org>
5559
5560 * fontset.c (face_for_char): If face->fontset is negative, just
5561 return ascii_face.
5562
f5385255
SM
5563 * font.c (font_delete_unmatched): Fix previous change.
5564 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5565
55662008-10-09 Martin Rudalics <rudalics@gmx.at>
5567
5568 * frame.c (Fraise_frame): On text-only terminals select frame in
5569 order to make it visible. (Bug#1061)
5570
55712008-10-08 Chong Yidong <cyd@stupidchicken.com>
5572
5573 * fontset.c (fontset_find_font): Check frame validity.
5574
55752008-10-07 Chong Yidong <cyd@stupidchicken.com>
5576
a9b555d3 5577 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5578 (xg_display_close): Allow Emacs to close all displays (bug#985).
5579
55802008-10-06 Andreas Schwab <schwab@suse.de>
5581
f5385255 5582 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5583
55842008-10-06 Chong Yidong <cyd@stupidchicken.com>
5585
f5385255 5586 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5587
a9b555d3 5588 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5589
5590 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5591 during initialization.
5592
55932008-10-04 Eli Zaretskii <eliz@gnu.org>
5594
5595 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5596 whole thing on MSDOS frames as well as on a TTY.
5597
5598 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5599 well as for TTY.
5600 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5601 well as on a TTY.
5602
5603 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5604 as well as for TTY.
5605
5606 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5607
5608 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5609 MSDOS frames as well.
5610
56112008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5612
5613 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5614 correct arguments.
b71ac3dd 5615 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5616
56172008-10-03 Glenn Morris <rgm@gnu.org>
5618
5619 * emacs.c (USAGE1): Add --daemon.
5620
56212008-10-02 Eli Zaretskii <eliz@gnu.org>
5622
5623 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5624 100, so it's in percents as advertised.
5625
56262008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5627
5628 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5629 (ns_output.current_cursor, ns_output.desired_cursor)
5630 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5631 (FRAME_NEW_CURSOR_COLOR): Remove.
5632
5633 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5634 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5635 enumeration (HOLLOW_BOX_CURSOR, etc.).
5636
5637 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5638 (draw_window_cursor): Simplify code.
f5385255
SM
5639 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5640 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5641 updates manually.
a9b555d3
JB
5642 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5643 Use core Emacs cursor types.
aac0c6e3 5644
b8ff72fa 5645 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5646
56472008-10-02 Martin Rudalics <rudalics@gmx.at>
5648
5649 * process.c (Faccept_process_output): Fix doc-string.
5650
56512008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5652
5653 * gmalloc.c (__sbrk): Also define for uClibc.
5654
5655 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5656 for uClibc.
5657
56582008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5659
5660 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5661 styles.
5662 (nsfont_open): Reenable the cache.
5663
56642008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5665
5666 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5667 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5668
56692008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5670
5671 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5672 a suspended terminal.
5673
56742008-09-30 Michael Albinus <michael.albinus@gmx.de>
5675
5676 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5677
56782008-09-30 Eli Zaretskii <eliz@gnu.org>
5679
5680 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5681
56822008-09-30 Chong Yidong <cyd@stupidchicken.com>
5683
5684 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5685 in a continued line coincides with a line beginning.
5686
56872008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5688
5689 * nsfont.m (nsfont_trait_distance): Fix bug.
5690 (nsfont_list): Return a list rather than a vector (syncs with Handa
5691 changes of 2008-05-14).
5692 (nsfont_open): Improve logging.
5693
56942008-09-29 Andreas Schwab <schwab@suse.de>
5695
5696 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5697
56982008-09-28 Martin Rudalics <rudalics@gmx.at>
5699
5700 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5701 name as char-resolve-modifiers.
5702 Reported by: Markus Triska <markus.triska@gmx.at>
5703
57042008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5705
5706 * dispnew.c (init_display): Return earlier when running as a daemon.
5707
57082008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5709
5710 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5711
57122008-09-27 Eli Zaretskii <eliz@gnu.org>
5713
5714 * composite.c (Fcomposition_get_gstring)
5715 (Fcompose_region_internal, Fcompose_string_internal)
5716 (Ffind_composition_internal): Doc fix.
5717 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5718 (syms_of_composite) <auto-composition-function>: Doc fix.
5719 (syms_of_composite) <composition-function-table>: Doc fix.
5720
57212008-09-25 Chong Yidong <cyd@stupidchicken.com>
5722
5723 * search.c (wordify): New argument for lax word-ends.
5724 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5725
57262008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5727
5728 * lisp.h (is_daemon): Declare.
5729 * dispnew.c (init_display): Do not try to initialize the terminal
5730 when running as a daemon.
5731
57322008-09-22 Chong Yidong <cyd@stupidchicken.com>
5733
5734 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5735 x_display_pixel_height.
5736
57372008-09-22 Martin Rudalics <rudalics@gmx.at>
5738
5739 * undo.c (record_point): Don't call Fundo_boundary for first
5740 change. (Bug#731)
5741
57422008-09-22 Juanma Barranquero <lekktu@gmail.com>
5743
5744 * emacs.c (Fdaemonp): Doc fix.
5745
57462008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5747
5748 * emacs.c (main): Place #ifdef in the proper place.
5749
57502008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5751
5752 * emacs.c (standard_args): Add --daemon.
5753 (main): Disconnect from the terminal when --daemon is passed.
5754 (is_daemon): New variable.
5755 (Fdaemonp): New function.
5756 (syms_of_emacs): Defsubr it.
5757
57582008-09-20 Chong Yidong <cyd@stupidchicken.com>
5759
5760 * xdisp.c (get_next_display_element): Handle string display
5761 correctly when checking for the end of a box run.
5762
57632008-09-20 Glenn Morris <rgm@gnu.org>
5764
5765 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5766 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5767 (Frename_file): Avoid copying to trash if a rename involves
5768 a delete. (Bug#964).
5769
57702008-09-20 Eli Zaretskii <eliz@gnu.org>
5771
5772 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5773 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5774 frames as well as termcap frames.
5775 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5776 get_named_tty.
5777
57782008-09-19 Eli Zaretskii <eliz@gnu.org>
5779
5780 * process.c (procfs_system_process_attributes): Fix cmdline in
5781 case /proc/PID/cmdline is empty.
5782
5783 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5784 x_display_pixel_height.
5785
57862008-09-19 Juanma Barranquero <lekktu@gmail.com>
5787
5788 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5789
5790 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5791 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5792
57932008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5794
5795 * dispextern.h (struct it): Move line_wrap away from the middle of
5796 bitfields. Move voffset in struct iterator_stack_entry after the
5797 bitfields. Move tab_width near after another short.
5798
57992008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5800
5801 * frame.h (struct frame): Move alpha from the middle of bitfields.
5802
5803 * window.h (struct window): Move frozen_window_start_p after the
5804 rest of the bitfields to reduce padding.
5805
58062008-09-18 Chong Yidong <cyd@stupidchicken.com>
5807
5808 * xterm.h (x_display_info): Remove `height' and `width' members.
5809
5810 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5811
5812 * w32term.h (w32_display_info): Remove `height', `width',
5813 `height_in', and `width_in' members.
5814
b8ff72fa
SM
5815 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5816 New functions.
aac0c6e3
MR
5817 (x_calc_absolute_position): Use them.
5818 (x_term_init): Omit removed `height' and `width' members.
5819
b8ff72fa
SM
5820 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5821 New functions.
aac0c6e3
MR
5822 (w32_read_socket, x_calc_absolute_position): Use them.
5823 (w32_initialize_display_info, w32_term_init): Omit removed members
5824 of w32_display_info.
5825
b8ff72fa
SM
5826 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5827 New functions.
5828 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 5829
b8ff72fa
SM
5830 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5831 New functions.
aac0c6e3
MR
5832 (x_calc_absolute_position): Use them.
5833 (x_term_init): Omit removed `height' and `width' members.
5834
5835 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
5836 (compute_tip_xy):
5837 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
5838 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5839 x_display_pixel_width.
5840
58412008-09-18 Kenichi Handa <handa@m17n.org>
5842
5843 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5844 (composition_compute_stop_pos): Fix handling of static composition.
5845 (Fcomposition_get_gstring): Check FROM and TO at first.
5846
58472008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5848
46e722a9 5849 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
5850 mixup (YAILOM).
5851
58522008-09-17 Chong Yidong <cyd@stupidchicken.com>
5853
5854 * indent.c (Fvertical_motion): Use position reported by iterator
5855 instead of PT for determining screen motion (bug#943).
5856
58572008-09-17 Romain Francoise <romain@orebokech.com>
5858
5859 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5860
58612008-09-17 Kenichi Handa <handa@m17n.org>
5862
5863 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5864
5865 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5866 if necessary.
5867
58682008-09-16 Kenichi Handa <handa@m17n.org>
5869
5870 * coding.c (make_conversion_work_buffer): Avoid calling
5871 Fget_buffer_create if it is not necessary.
5872
58732008-09-15 Martin Rudalics <rudalics@gmx.at>
5874
5875 * window.c (Fselect_window): Don't update window_select_count and
5876 use_time when norecord is not nil.
5877
58782008-09-14 Kenichi Handa <handa@m17n.org>
5879
5880 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5881 specpdl_ptr.
5882
58832008-09-12 Kenichi Handa <handa@m17n.org>
5884
5885 * indent.c (scan_for_column): Don't handle automatic composition
5886 if the current buffer is not associated with a window.
5887
5888 * composite.c (composition_reseat_it): If the current buffer is
5889 not associated with a window, ignore the automatic composition.
5890 (find_automatic_composition): Likewise.
5891
58922008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5893
5894 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5895 (Fgpm_mouse_stop): Use it.
5896 * termhooks.h (close_gpm): Declare.
5897 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5898 connection if Gpm_GetEvent fails.
5899
5900 * window.c (set_window_buffer): Always preserve current-buffer.
5901
59022008-09-12 Glenn Morris <rgm@gnu.org>
5903
5904 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5905
59062008-09-11 Glenn Morris <rgm@gnu.org>
5907
5908 * charset.c (charset-map-path): Doc fix.
5909
59102008-09-10 Kenichi Handa <handa@m17n.org>
5911
5912 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5913
5914 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5915 compose a grapheme cluster with the preceding base glyph.
5916
5917 * composite.c (composition_compute_stop_pos): Fix previous change.
5918 Reset cmp_it->id to -1 at first.
5919
59202008-09-10 Glenn Morris <rgm@gnu.org>
5921
5922 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5923
59242008-09-09 Chong Yidong <cyd@stupidchicken.com>
5925
5926 * keyboard.c (read_key_sequence): Reapply translation maps when
5927 switching keyboards.
5928
59292008-09-09 Kenichi Handa <handa@m17n.org>
5930
5931 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
5932 characters.
5933
5934 * composite.c (FORWARD_CHAR): Fix calculation
5935 of (POSITION).pos_byte.
5936 (composition_compute_stop_pos): Limit the search of composition to
5937 at most 500 characters ahead. If we reach the limit or find a
5938 newline, set cmp_it->ch to -2 and return 0.
5939 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
5940
59412008-09-08 Kenichi Handa <handa@m17n.org>
5942
5943 * indent.c (Fvertical_motion): Be sure to set
5944 it_overshoot_expected if it.cmp_it.id is non-negative.
5945
59462008-09-07 Andreas Schwab <schwab@suse.de>
5947
5948 * callproc.c (Fcall_process): Don't hold references to string data
5949 across garbage collection. Move initialisation of new_argv down
5950 to avoid compiler bug.
5951
59522008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5953
5954 * process.c (Fsystem_process_attributes): Doc fix.
5955
59562008-09-07 Chong Yidong <cyd@stupidchicken.com>
5957
5958 * callproc.c (Fcall_process): Canonicalize current directory name.
5959
5960 * xdisp.c (move_it_to): When moving by vpos, ensure that the
5961 iterator advances to the next line if the current line ends in a
5962 continued tab.
5963
59642008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
5965
5966 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
5967 member to point to cmp_from.
5968
5969 * xdisp.c: Doc fix for references to gidx data member.
5970
59712008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
5972
5973 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
5974
59752008-09-07 Kenichi Handa <handa@m17n.org>
5976
5977 * composite.c (FORWARD_CHAR): Check STOP after
5978 incrementing (POSITION).pos.
5979
59802008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5981
5982 * process.c (Fsystem_process_attributes): Doc fix.
5983
59842008-09-06 Chong Yidong <cyd@stupidchicken.com>
5985
5986 * keyboard.c (Ftop_level): Doc fix.
5987
59882008-09-06 Eli Zaretskii <eliz@gnu.org>
5989
5990 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
5991 minibuffer, don't let lower part of menu invade the echo area.
5992
5993 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
5994 "char *q" to access menu text and advance through it. Revert the
5995 change that displayed ">" instead of ASCII character 0x10.
5996
59972008-09-05 Eli Zaretskii <eliz@gnu.org>
5998
5999 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
6000 toggle boxes and radio buttons on MS-DOS as well.
6001
60022008-09-05 Kenichi Handa <handa@m17n.org>
6003
6004 * composite.c (autocmp_chars): Check lookback count.
6005 (composition_compute_stop_pos): Set cmp_it->lookback.
6006 (composition_reseat_it): Check lookback count.
6007 (struct position_record): New struct.
6008 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
6009 (find_automatic_composition): New function.
6010 (composition_adjust_point): Use find_automatic_composition.
6011
6012 * dispextern.h (struct composition_it): New member lookback.
6013
60142008-09-02 Chong Yidong <cyd@stupidchicken.com>
6015
6016 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
6017 if moving by a single line.
6018
60192008-09-02 Andreas Schwab <schwab@suse.de>
6020
6021 * xterm.c (x_delete_display): Fix merge error.
6022
6023 * fileio.c (Fexpand_file_name): Remove unused variables.
6024
60252008-09-02 Eli Zaretskii <eliz@gnu.org>
6026
6027 * fileio.c (Fexpand_file_name): Copy argument `name' into local
6028 storage on all platforms, not just on DOS_NT.
6029
60302008-09-02 Jason Rumney <jasonr@gnu.org>
6031
b8ff72fa
SM
6032 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
6033 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
6034
60352008-09-01 Chong Yidong <cyd@stupidchicken.com>
6036
6037 * xfaces.c (Finternal_set_alternative_font_family_alist)
6038 (Finternal_set_alternative_font_registry_alist): Properly copy
6039 entire alist structure.
6040
60412008-09-01 Kenichi Handa <handa@m17n.org>
6042
d66c0241 6043 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 6044 representative chars of the script is a vector.
d66c0241
JB
6045 (ftfont_list): Handle the case where the representative chars of
6046 the script is a vector.
aac0c6e3
MR
6047
6048 * character.c (syms_of_character): Docstring of
6049 script-representative-chars fixed.
6050
60512008-08-31 Eli Zaretskii <eliz@gnu.org>
6052
6053 * msdos.c (BUILD_CHAR_GLYPH): New macro.
6054 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
6055 the menu. Allocate larger buffer for `text', to account for
6056 possible ^C characters.
6057
60582008-08-31 Martin Rudalics <rudalics@gmx.at>
6059
6060 * xdisp.c (prepare_menu_bars): Don't call
6061 Vwindow_size_change_functions with arg Qt.
6062
60632008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
6064
6065 * font.h (font_range):
6066 * fileio.c (report_file_error):
46e722a9
SM
6067 * composite.c (composition_update_it): Yet another int/Lisp_Object
6068 mixup (YAILOM).
aac0c6e3
MR
6069
60702008-08-30 Glenn Morris <rgm@gnu.org>
6071
6072 * data.c (Fmake_variable_frame_local): Doc fix.
6073
6074 * frame.c (Fmodify_frame_parameters): Doc fix.
6075
60762008-08-30 Eli Zaretskii <eliz@gnu.org>
6077
6078 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
6079 needed by GetTokenInformation.
6080 (w32_system_process_attributes): Check return values of all system
6081 APIs.
6082
6083 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
6084 only when the state changes.
6085 (IT_update_begin, IT_update_end): Add termscript trace.
6086
6087 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
6088 clipboard is unavailable. Set dst to NULL if it doesn't point to
6089 malloc'ed data.
6090 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
6091 passing random values to xfree.
6092
6093 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 6094 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
6095
60962008-08-29 Jason Rumney <jasonr@gnu.org>
6097
6098 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
6099
61002008-08-29 Eli Zaretskii <eliz@gnu.org>
6101
6102 * composite.c (fill_gstring_body): Avoid compiler warnings.
6103
6104 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
6105 LGLYPH_SET_CODE to avoid compiler warnings.
6106
2ae37cf0 6107 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
6108
6109 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
6110
6111 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
6112 LGLYPH_SET_CODE.
6113
61142008-08-29 Kenichi Handa <handa@m17n.org>
6115
6116 * fileio.c (report_file_error): Don't downcase the first character
6117 of errstring if it is still unibyte.
6118
61192008-08-29 Kenichi Handa <handa@m17n.org>
6120
6121 These changes are to re-implement the automatic composition so
6122 that it doesn't use text properties.
6123
6124 * Makefile.in (ftfont.o): Depend on composite.h.
6125 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
6126
6127 * character.h (Vunicode_category_table): Extern it.
6128
6129 * character.c (Vunicode_category_table): New variable.
6130 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
6131
6132 * chartab.c (optimize_sub_char_table): Perform more greedy
6133 optimization.
6134
b8ff72fa
SM
6135 * composite.h (enum composition_method):
6136 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
6137 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
6138 (Vcomposition_function_table): Extern it.
6139 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
6140 (composition_gstring_put_cache, composition_gstring_from_id)
6141 (composition_gstring_p, composition_gstring_width)
6142 (composition_compute_stop_pos, composition_reseat_it)
6143 (composition_update_it, composition_adjust_point): Extern them.
6144 (Fcomposition_get_gstring): EXFUN it.
6145
d66c0241 6146 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
6147 (Vcomposition_function_table)
6148 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
6149 (gstring_hash_table, gstring_work, gstring_work_headers):
6150 New variables.
aac0c6e3
MR
6151 (gstring_lookup_cache, composition_gstring_put_cache)
6152 (composition_gstring_from_id, composition_gstring_p)
6153 (composition_gstring_width, fill_gstring_header)
6154 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
6155 (composition_reseat_it, composition_update_it)
b8ff72fa 6156 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
6157 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
6158 and gstring_work_headers. DEFVAR_LISP composition-function-table.
6159 Defsubr compostion_get_gstring.
6160
6161 * dispextern.h (struct glyph): New union u.cmp. Delete the member
6162 cmp_id.
6163 (struct glyph_string): Delete the member gidx. New members
6164 cmp_id, cmp_from, and cmp_to.
6165 (enum it_method): Delete GET_FROM_COMPOSITION.
6166 (struct composition_it): New struct.
6167 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
6168 Delete c, len, cmp_id, cmp_len in u.comp.
6169
6170 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 6171 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 6172 (enum lglyph_indices): Likewise.
b8ff72fa 6173 (font_range): Adjust extern.
aac0c6e3
MR
6174 (font_fill_lglyph_metrics): Extern it.
6175
6176 * font.c (QCf): New variable.
6177 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6178 (font_prepare_composition): Delete this function.
6179 (font_range): Type and arguments changed.
6180 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
6181 (font_fill_lglyph_metrics): New function.
b8ff72fa 6182 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 6183 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
6184 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
6185 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
6186
6187 * fontset.h (font_for_char): Extern it.
6188
6189 * fontset.c (font_for_char): New function.
6190
6191 * ftfont.c: Include composite.h.
6192 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 6193 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
6194
6195 * indent.c: Include composite.h and dispextern.h.
6196 (check_composition): Delete this function.
6197 (scan_for_column): Handle composition by
6198 composition_compute_stop_pos, composition_reseat_it, and
6199 composition_update_it.
6200 (compute_motion): Likewise.
6201 (Fvertical_motion): Fix checking of composition.
6202
6203 * keyboard.c (adjust_point_for_property): Check composition by
6204 composition_adjust_point.
6205
b8ff72fa 6206 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
6207 struct glyph_string.
6208
b8ff72fa
SM
6209 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
6210 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
6211 struct glyph.
6212 (produce_composite_glyph): Likewise.
6213
b8ff72fa
SM
6214 * w32term.c (x_draw_composite_glyph_string_foreground):
6215 Adjust for the change of struct glyph_string.
aac0c6e3
MR
6216 (x_draw_glyph_string): Likewise.
6217
6218 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
6219 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6220
6221 * xdisp.c: Include font.h.
6222 (it_props): Delete the entry for Qauto_composed.
6223 (init_iterator): Initialize it->cmp_it.id to -1.
6224 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 6225 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
6226 (handle_auto_composed_prop): Delete it.
6227 (handle_composition_prop): Handle only static composition.
6228 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
6229 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 6230 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
6231 (pop_it): Likewise.
6232 (get_next_element): Delete next_element_from_composition.
6233 (CHAR_COMPOSED_P): New macro.
6234 (get_next_display_element): For automatic composition, get a face
6235 from the font in the glyph-string.
6236 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 6237 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
6238 (next_element_from_string): Check if the character at the current
6239 position is composed by CHAR_COMPOSED_P.
6240 (next_element_from_buffer): Likewise.
d66c0241
JB
6241 (next_element_from_composition): Adjust for the change of struct it.
6242 Update it->cmp_it.
b8ff72fa
SM
6243 (dump_glyph): Adjust for the change of struct glyph.
6244 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
6245 it and struct glyph. Don't handle automatic composition here.
6246 (fill_gstring_glyph_string): New function.
6247 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 6248 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
6249 (BUILD_GSTRING_GLYPH_STRING): New macro.
6250 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
6251 automatic composition.
b8ff72fa 6252 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 6253 struct glyph.
b8ff72fa 6254 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 6255
b8ff72fa 6256 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
6257 the change of struct glyph_string.
6258 (x_draw_glyph_string): Likewise.
6259
62602008-08-29 Glenn Morris <rgm@gnu.org>
6261
6262 * buffer.c (word-wrap): Doc fix.
6263 * xdisp.c (truncate-partial-width-windows): Doc fix.
6264 Increase default to 50.
6265
62662008-08-29 Chong Yidong <cyd@stupidchicken.com>
6267
6268 * xdisp.c (update_tool_bar_unwind): New function.
6269 (update_tool_bar): Temporarily set selected frame before building
6270 tool-bar items.
6271
62722008-08-28 Michael Albinus <michael.albinus@gmx.de>
6273
6274 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
6275 snprintf, respectively.
6276 (xd_append_arg): Convert strings with Fstring_make_unibyte.
6277
62782008-08-28 Chong Yidong <cyd@stupidchicken.com>
6279
6280 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
6281 LDFLAGS to GNUstep CC invocation.
6282
62832008-08-27 Chong Yidong <cyd@stupidchicken.com>
6284
6285 * indent.c (Fvertical_motion): Revert last change. Handle the
6286 general case where we are moving forward, and PT spans multiple
6287 screen lines.
6288
6289 * eval.c (find_handler_clause): Temporarily increase
6290 max-lisp-eval-depth while printing the backtrace buffer, to
6291 guarantee that help-mode code can run.
6292
62932008-08-27 Eli Zaretskii <eliz@gnu.org>
6294
6295 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
6296 colors under -rv.
6297 (IT_set_frame_parameters): Don't swap foreground and background
6298 colors if `(reverse . t)' is present in the frame properties.
6299 (internal_terminal_init): Call init_frame_faces only for the
6300 initial frame.
6301
63022008-08-27 Andreas Schwab <schwab@suse.de>
6303
6304 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
6305
63062008-08-27 Andreas Schwab <schwab@suse.de>
6307
6308 * search.c (search_buffer): Set char_base to zero only at the end.
6309
63102008-08-27 Kenichi Handa <handa@m17n.org>
6311
b8ff72fa 6312 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
6313
63142008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
6315
6316 * xterm.c (x_term_init): Temporarily hide the partially
6317 initialized terminal while calling vendor-specific-keysyms.
6318
63192008-08-26 Eli Zaretskii <eliz@gnu.org>
6320
6321 * msdos.c (internal_terminal_init): Most initializations done only
6322 once, especially initial_screen_colors[] and termscript open.
6323
63242008-08-26 Chong Yidong <cyd@stupidchicken.com>
6325
6326 * eval.c (Fcondition_case): Doc fix.
6327
6328 * widgetprv.h (EmacsFramePart): Change font member to the new font
6329 struct.
6330
6331 * widget.c: Include character.h and font.h for XSETFONT.
6332 (setup_frame_gcs): Compute X font id from font struct, just once.
6333
63342008-08-26 Eli Zaretskii <eliz@gnu.org>
6335
6336 * term.c (get_named_tty): Fix last change.
6337
63382008-08-26 Chong Yidong <cyd@stupidchicken.com>
6339
6340 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 6341 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
6342
63432008-08-25 Eli Zaretskii <eliz@gnu.org>
6344
6345 * frame.c (do_switch_frame): Mark previously displayed frame as
6346 obscured for FRAME_MSDOS_P frames as well.
6347
63482008-08-24 Eli Zaretskii <eliz@gnu.org>
6349
6350 * frame.c (make_terminal_frame): Initialize f->terminal,
6351 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6352 Set the top frame to newly created frame.
6353 (Fmake_terminal_frame): Reuse the_only_display_info.
6354
6355 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6356 estimating available memory.
6357
b97439ce 63582008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
6359
6360 * nsterm.m (ns_draw_window_cursor): Don't call
6361 NSDisableScreenUpdates and NSEnableScreenUpdates on
6362 non-NS_IMPL_COCOA systems.
6363
63642008-08-23 Andreas Schwab <schwab@suse.de>
6365
6366 * process.c (procfs_system_process_attributes): Fix use of
6367 uninitialized variables.
6368
63692008-08-23 Eli Zaretskii <eliz@gnu.org>
6370
6371 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6372
6373 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6374 calling tty-set-up-initial-frame-faces.
6375
b8ff72fa
SM
6376 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6377 Allow MSDOS frames along with X frames.
aac0c6e3
MR
6378
6379 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6380 addition to output_termcap.
6381
6382 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6383
6384 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6385 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6386 highlight.
6387
6388 * process.c [!subprocesses]: Define QCname.
6389 (syms_of_process): Intern and staticpro it.
6390
6391 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
6392 Adjust for changes in encoding/decoding routines.
6393 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
6394 encode_coding and decode_coding.
6395
b8ff72fa 6396 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
6397
6398 * dosfns.c: Include frame.h before termhooks.h.
6399 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6400 variable termscript.
6401
6402 * s/msdos.h (USER_FULL_NAME): Define.
6403 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6404
6405 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6406 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6407 pw->pw_gecos.
6408
6409 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6410 SELECTED_FRAME as additional (1st) argument.
6411 (tty_read_avail_input): Handle output_msdos_raw in
6412 addition to output_termcap.
6413
6414 * msdos.c: Include frame.h before termhooks.h.
6415 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6416 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6417 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6418 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6419 (IT_set_terminal_modes, IT_reset_terminal_modes)
6420 (IT_set_frame_parameters): Use tty->termscript instead of a global
6421 variable termscript.
6422 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6423 global variable terminal_coding. Don't refer to
6424 Vnonascii_translation_table.
6425 (internal_terminal_init): Set Vwindow_system in current_kboard.
6426 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6427 Announce date and time of session start, if termscript is open.
6428 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
6429 term.c:init_tty). Open termscript only of not already open.
6430 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
6431 here instead of dos_ttraw. Don't initialize display if this is an
6432 initial tty. Don't set FRAME_FONT.
6433 (Vwindow_system_version): Bump to 23.
6434 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6435 is available, set up mouse_position_hook.
6436 (dos_ttraw, IT_set_terminal_modes): If called with initial
6437 terminal, do nothing.
6438 (IT_set_frame_parameters): Handle the Qtty_type frame
6439 parameter by calling internal_terminal_init.
6440 (dos_set_window_size, show_mouse_face)
6441 (clear_mouse_face, IT_note_mode_line_highlight)
6442 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6443 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6444 (initialize_msdos_display): New function.
6445 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6446 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6447 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6448 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 6449 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
6450 (request_sigio, unrequest_sigio): Don't define, now defined on
6451 sysdep.c.
6452 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6453
6454 * term.c [MSDOS]: Include msdos.h.
6455 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6456 conditional to DOS_NT. Allow only one call to this function in a
6457 session. Don't allocate a new struct tty_display_info; instead,
6458 reuse the_only_display_info. Call get_tty_size to get screen
6459 dimensions. Call init_baud_rate to set bad_rate.
6460 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6461 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 6462 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
6463 (get_tty_terminal, get_named_tty, Ftty_type)
6464 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6465 output_termcap.
b8ff72fa
SM
6466 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6467 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 6468 only when subprocesses are supported.
aac0c6e3
MR
6469
6470 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6471 f->output_data.x.
6472 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6473 terminal devices.
6474
5582fbc7 6475 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
6476 x_output.
6477 (FRAME_FONT): Use output_data.tty.
6478 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
6479 (struct x_display_info): Rename from display_info. Update all users in
6480 msdos.c.
aac0c6e3 6481 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 6482 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
6483 (dos_ttraw): Update prototype.
6484
6485 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6486 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6487
64882008-08-23 Jason Rumney <jasonr@gnu.org>
6489
6490 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6491 (fn_TIFFSetDirectory): New library function used.
6492 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6493 (tiff_load): Use :index to select among multiple images. Set count
6494 property when multiple images exist.
6495 (gif_format): Use :index, not :image.
6496
64972008-08-23 Chong Yidong <cyd@stupidchicken.com>
6498
6499 * xdisp.c (try_scrolling): Check INT_MAX instead of
6500 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6501 to obtain INT_MAX.
6502
65032008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6504
6505 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6506
65072008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6508
6509 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6510 GNUstep library location.
6511
65122008-08-21 Chong Yidong <cyd@stupidchicken.com>
6513
6514 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6515 before using it.
6516
6517 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6518
65192008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6520
6521 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6522 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6523 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6524 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6525 (EmacsApp-cursor_blink_handler): Remove declaration.
6526 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6527 match 01 Feb 2008 changes in xterm.c.
6528 (ns_read_socket): Add cast to avoid warning.
6529 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6530 GNUstep.
6531
65322008-08-20 Chong Yidong <cyd@stupidchicken.com>
6533
6534 * xselect.c (x_get_foreign_selection): Return nil if desired
6535 selection could not be obtained, instead of signalling an error.
6536
65372008-08-20 David Reitter <david.reitter@gmail.com>
6538
6539 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6540 * nsterm.m: Remove ns-specific code for cursor blinking.
6541 (ns_draw_window_cursor): Clear cursor properly rather than
6542 redrawing the area. Respect width of bar cursors.
6543 These changes enable the use of generic blink-cursor-mode and
6544 generic cursor types in NS and support smooth cursor movements (do
6545 not blink off after command).
6546 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6547 Nextstep, too.
6548
65492008-08-19 Kenichi Handa <handa@m17n.org>
6550
6551 * font.c (Vfont_log_deferred): New variable.
6552 (font_add_log): Check Vfont_log_deferred.
6553 (font_deferred_log): New function.
6554
6555 * font.h (font_deferred_log): Extern it.
6556
6557 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6558 for sorting.
6559 (face_for_char): Use deferred log.
6560
65612008-08-18 Kenichi Handa <handa@m17n.org>
6562
6563 * fontset.c (face_for_char): Add font log.
6564
6565 * font.c (font_add_log): Add the font properties :script, :lang,
6566 and :otf in the log.
6567
65682008-08-17 Chong Yidong <cyd@stupidchicken.com>
6569
6570 * xdisp.c: Remove dead code.
6571 (handle_invisible_prop, next_overlay_string): Defer call to
6572 setup_for_ellipsis.
6573 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6574
65752008-08-15 Chong Yidong <cyd@stupidchicken.com>
6576
6577 * xfaces.c (lookup_derived_face): Properly handle possible zero
6578 return value of get_lface_attributes.
6579 (merge_faces): Don't tell lookup_derived_face to signal an error
6580 if face is not found.
6581
6582 * dired.c (Fdirectory_files): Doc fix.
6583
6584 * process.c (make_process): Initialize kill_without_query struct
6585 member.
6586
65872008-08-15 Eli Zaretskii <eliz@gnu.org>
6588
6589 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6590 Alternative calculation of totphys for Visual Studio 6.
6591
6592 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6593
6594 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6595 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6596 All users changed.
6597 (stat): Only root directory passed to GetDriveType. Allow RAM
6598 disk as well as local fixed disk when w32-get-true-file-attributes
6599 is set to `local'.
6600 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6601 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6602 (w32_cached_id, w32_add_to_cache): New functions.
6603 (get_name_and_id): Look account names in the cache before calling
6604 lookup_account_sid.
6605 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6606 New initialization flags.
6607 (globals_of_w32): Initialize them to zero.
6608 (w32_system_process_attributes): Use w32_cached_id and
6609 w32_add_to_cache.
6610
66112008-08-14 Lawrence Mitchell <wence@gmx.li>
6612
6613 * lread.c (Fread_char, Fread_char_exclusive): If no character
6614 event is read before timeout is reached, return nil, rather than
6615 converting to a number.
6616
66172008-08-14 Chong Yidong <cyd@stupidchicken.com>
6618
6619 * fns.c (use_dialog_box): Doc fix.
6620
6621 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6622 on OS X.
6623
66242008-08-13 Chong Yidong <cyd@stupidchicken.com>
6625
6626 * frame.c (Qns_parse_geometry): New var.
6627 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6628
66292008-08-11 Chong Yidong <cyd@stupidchicken.com>
6630
6631 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6632 space character in calculating tabs.
6633
66342008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6635
6636 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6637
66382008-08-10 Glenn Morris <rgm@gnu.org>
6639
6640 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6641 silence gcc "limited range of data type" warnings in some
6642 make_fixnum_or_float calls.
6643
66442008-08-09 Eli Zaretskii <eliz@gnu.org>
6645
6646 * w32.c (w32_system_process_attributes): If the process does not
6647 exist, return nil.
6648
6649 * w32.c: Include thelp32.h, psapi.h and coding.h.
6650 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6651 declarations.
6652 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6653 (Process32Next_Proc): New typedefs.
6654 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6655 (g_b_init_process32_next, g_b_init_open_thread_token)
6656 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6657 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6658 (g_b_init_get_process_working_set_size)
6659 (g_b_init_global_memory_status_ex): New static variables.
6660 (globals_of_w32): Initialize them.
6661 (create_toolhelp32_snapshot, process32_first, process32_next)
6662 (open_thread_token, impersonate_self, revert_to_self)
6663 (get_process_memory_info, get_process_working_set_size)
6664 (global_memory_status, global_memory_status_ex): New wrapper
6665 functions.
6666 (w32_list_system_processes, w32_system_process_attributes)
6667 (enable_privilege, restore_privilege, ltime, process_times):
6668 New functions.
6669 (convert_time_raw): New function.
6670 (convert_time): Remove conversion of FILETIME into time in 100
6671 nsec units, call convert_time_raw instead.
6672
6673 * process.h (w32_list_system_processes, w32_system_process_attributes):
6674 Add prototypes.
6675 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6676 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6677 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6678 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6679
6680 * process.c (Fsystem_process_attributes): Doc fix.
6681
66822008-08-08 Chong Yidong <cyd@stupidchicken.com>
6683
6684 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6685 a continued multi-char glyph; if so, advance to the actual glyph.
6686
66872008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6688
6689 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6690
6691 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6692 (.m.o): Use it.
6693 * config.in: Regenerate.
6694
66952008-08-07 Chong Yidong <cyd@stupidchicken.com>
6696
6697 * xdisp.c (redisplay_window): Revert last change.
6698 (try_window): Check bottom scroll margin too.
6699
67002008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6701
6702 * config.in: Regenerate.
6703
6704 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6705 -list-load-path-shadows'.
6706 (nsgui.h): Reduce number of things depending on it.
6707
67082008-08-06 Chong Yidong <cyd@stupidchicken.com>
6709
6710 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6711 instead of window-end which does the wrong thing at eob.
6712 (try_cursor_movement): Minor optimization.
6713 (redisplay_window): If scroll margin is defined, don't assume
6714 window doesn't need scrolling.
6715
67162008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6717
6718 * config.in: Regenerate.
6719
6720 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6721 (mostlyclean): Don't delete *.d under NS.
6722
6723 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6724
67252008-08-06 Kenichi Handa <handa@m17n.org>
6726
6727 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6728
67292008-08-06 Andreas Schwab <schwab@suse.de>
6730
6731 * config.in: Regenerate.
6732
67332008-08-05 Chong Yidong <cyd@stupidchicken.com>
6734
6735 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6736 forcing a window start.
6737
6738 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6739 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6740
67412008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6742
6743 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6744 argument.
6745
67462008-08-05 Juanma Barranquero <lekktu@gmail.com>
6747
6748 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6749 <scroll-down-aggressively, before-change-functions>:
6750 <after-change-functions>: Reflow docstrings.
6751
67522008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6753 Ken Raeburn <raeburn@gnu.org>
6754
6755 Dock menu customization, based on a patch by Ken Raeburn, plus some
6756 other fixes.
6757 * nsmenu.m (dockMenu): New variable.
6758 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6759
6760 * nsterm.h (dockMenu): Declare.
6761
6762 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6763 (ns_term_init): Initialize dockMenu.
6764 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6765 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6766 left.
6767
6768 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6769
67702008-08-04 Chong Yidong <cyd@stupidchicken.com>
6771
6772 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6773
6774 * config.in: Regenerate.
6775
67762008-08-04 Seiji Zenitani <zenitani@mac.com>
6777
6778 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6779
67802008-08-04 Chong Yidong <cyd@stupidchicken.com>
6781
6782 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6783
67842008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6785
6786 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6787
6788 * keyboard.h: Comment an #endif.
6789
6790 * lisp.h (have_menus_p): Adjust comment.
6791
6792 * menu.c (find_and_return_menu_selection): Fix comparison with
6793 client_data.
6794
6795 * nsmenu.m (popup_activated_flag): New variable.
6796 (popup_activated): New function.
6797 (menu-or-popup-active-p): New exported lisp definition.
6798 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6799 when popup done.
6800 (ns_popup_dialog): Set popup_activated_flag.
6801
6802 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6803 version for GNUstep (handled by conditional typedef in nsterm.m).
6804 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6805 in rgb.txt).
6806
6807 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6808
6809 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6810
6811 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6812
6813 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6814 shortcircuit if popup_activated like GTK and X toolkit.
6815
6816 * m/inter386.h: Change DARWIN to DARWIN_OS.
6817
6818 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6819 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6820 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6821 comment on NO_SOCK_SIGIO.
6822
68232008-08-03 Chong Yidong <cyd@stupidchicken.com>
6824
6825 * nsterm.m (windowDidResize): Remove stopModal call.
6826
68272008-08-03 Andreas Schwab <schwab@suse.de>
6828
6829 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6830 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6831
68322008-08-02 Chong Yidong <cyd@stupidchicken.com>
6833
6834 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6835 Don't use uninitialized pointer variable when using getrlimit.
6836
68372008-08-02 Jason Rumney <jasonr@gnu.org>
6838
6839 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6840
68412008-08-02 Eli Zaretskii <eliz@gnu.org>
6842
6843 * alloc.c (NSTATICS): Bump to 0x640.
6844
6845 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6846
6847 * lisp.h: Add prototype for directory_files_internal.
6848
6849 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6850 New functions.
6851 (syms_of_process): Defsubr them. Add initializations for various
6852 Q* symbols used in procfs_system_process_attributes.
6853 (procfs_list_system_processes, procfs_system_process_attributes)
6854 [HAVE_PROCFS]: New functions.
6855 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6856 (procfs_get_total_memory): New functions.
6857
68582008-08-01 Juanma Barranquero <lekktu@gmail.com>
6859
6860 * xfaces.c (Fx_load_color_file): Fix previous change;
6861 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6862
68632008-08-01 Michael Albinus <michael.albinus@gmx.de>
6864
6865 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6866
68672008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6868
6869 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6870
68712008-08-01 Chong Yidong <cyd@stupidchicken.com>
6872
6873 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6874
6875 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6876 define NSApplicationDelegateReplySuccess.
6877 (EmacsView -converstationIdentifier): Use long instead of
6878 NSInteger for GNUstep, since it doesn't have NSInteger.
6879
6880 * xmenu.c: Revert last change.
6881
6882 * keyboard.h: Fix last change.
6883
68842008-08-01 Juanma Barranquero <lekktu@gmail.com>
6885
6886 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6887 on Windows.
6888
68892008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6890
6891 Warning clearing and clean-up in NS port.
6892 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6893 Add prototypes.
6894 * nsgui.h (FACE_DEFAULT): Remove, unused.
6895 (XGCValues): Change colors to unsigned long.
6896 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6897 nsterm.m.
6898 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6899 (ns_list_fonts): Remove, unused.
6900 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6901 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6902 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6903 (nsfont_draw): Compare face colors to 0, not nil.
6904 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6905 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6906 (-addSubmenuWithTitle:): Use NSMenuItem class.
6907 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6908 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6909 (ns_clip_to_row): Make gc arg a BOOL.
6910 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6911 ns_clip_to_row() call.
6912 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6913 used). Cast FRAME_FONT assignments.
6914 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6915 (ns_string_to_lispmod): Change arg to const char.
6916 (ns_term_init): Use NSMenuItem class.
6917 (EmacsApp -openFile:): Move to different section of file.
6918 (EmacsApp -application:openFiles:): Don't return a value, call
6919 -replyToOpenOrPrint:.
6920 (EmacsView -keyDown:): Fix up cast.
6921 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6922 (EmacsView -menuDown:): Cast tag in call to
6923 find_and_call_menu_selection().
6924 (ns_list_fonts): Remove, unused.
6925 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
6926 (ns_fontname_to_xlfd): Make static.
6927 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
6928 Remove prototypes (now in keyboard.h).
6929 (next_menubar_widget_id): Remove, unused.
6930 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
6931 Remove prototypes (now in keyboard.h).
6932 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
6933
69342008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
6935
6936 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
6937 (floatfns.o): Depend on syssignal.h.
6938 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
6939
6940 * systty.h: Fix previous change that removed BSD_TERMIOS.
6941 Add comments to #ifdefs.
6942
69432008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6944
6945 * w32fns.c (w32-load-color-file): Remove.
6946 (x-open-connection): Use renamed Fx_load_color_file.
6947 * xfaces.c (x-load-color-file): Add.
6948 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
6949 Emacs.clr.
6950 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
6951
69522008-07-31 Michael Albinus <michael.albinus@gmx.de>
6953
6954 * dbusbind.c (Fdbus_call_method_asynchronously)
6955 (Fdbus_method_error_internal): New defuns.
6956 (xd_read_message): Handle also reply messages.
6957 (Vdbus_registered_functions_table): Extend docstring.
6958
69592008-07-31 Juanma Barranquero <lekktu@gmail.com>
6960
6961 * keyboard.c (gobble_input): Fix previous change.
6962
69632008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6964
6965 * bitmaps/README:
6966 * xfns.c:
6967 * termcap.c:
6968 * term.c:
6969 * syswait.h:
6970 * systty.h:
6971 * systime.h:
6972 * syssignal.h:
6973 * sysdep.c:
6974 * process.h:
6975 * process.c:
6976 * print.c:
6977 * ndir.h:
6978 * lread.c:
6979 * keyboard.c:
6980 * getpagesize.h:
6981 * floatfns.c:
6982 * fileio.c:
6983 * emacs.c:
6984 * doc.c:
6985 * dispnew.c:
6986 * dired.c:
6987 * data.c:
6988 * callproc.c:
6989 * buffer.c:
6990 * README:
6991 * Makefile.in:
6992 * s/template.h:
6993 * s/msdos.h:
6994 * m/vax.h: Remove VMS support.
6995 * s/vms.h:
6996 * vlimit.h:
6997 * uaf.h:
6998 * temacs.opt:
6999 * param.h:
7000 * ioctl.h: Remove file.
7001
70022008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7003
7004 * s/ms-w32.h (MULTI_KBOARD): Remove.
7005 * xterm.c:
7006 * xselect.c:
7007 * xfns.c:
7008 * window.c:
7009 * w32term.c:
7010 * w32fns.c:
7011 * terminal.c:
7012 * termhooks.h:
7013 * term.c:
7014 * sysdep.c:
7015 * keyboard.h:
7016 * keyboard.c:
7017 * frame.h:
7018 * frame.c:
7019 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
7020 * config.in: Regenerate.
7021
70222008-07-30 Jason Rumney <jasonr@gnu.org>
7023
7024 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
7025
7026 * w32font.c (w32font_encode_char): Leave as unicode if in range.
7027 (w32font_open_internal): Get unicode version of textmetrics.
7028 Don't enable or disable glyph indices here.
7029 (w32font_open): Disable use of glyph indices.
7030
7031 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
7032
70332008-07-30 Chong Yidong <cyd@stupidchicken.com>
7034
7035 * minibuf.c (Vread_buffer_function): Doc fix.
7036
70372008-07-30 John Paul Wallington <jpw@pobox.com>
7038
7039 * minibuf.c (read_buffer_completion_ignore_case): New var.
7040 (Fread_buffer): Use it.
7041
70422008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
7043
7044 * systty.h (sensemode): Remove empty #if. Remove reference to
7045 BSD_TERMIOS, unused.
7046
7047 * sysdep.c: Remove reference to DGUX.
7048 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
7049
7050 * config.in: Regenerate.
7051
70522008-07-30 Jason Rumney <jasonr@gnu.org>
7053
7054 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
7055
70562008-07-29 Jason Rumney <jasonr@gnu.org>
7057
7058 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
7059 is populated.
7060 (uniscribe_encode_char): Always use uniscribe.
7061 Avoid using context if cache is populated.
7062
70632008-07-29 Jan Djärv <jan.h.d@swipnet.se>
7064
7065 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
7066 open menu.
7067
7068 * gtkutil.c (menu_nav_ended): Remove.
7069 (create_menus): Remove signal connect for menu_nav_ended.
7070
70712008-07-28 Chong Yidong <cyd@stupidchicken.com>
7072
7073 * xdisp.c (redisplay_window): Check return value of
7074 compute_window_start_on_continuation_line before forcing a window
7075 start.
7076
70772008-07-28 Jason Rumney <jasonr@gnu.org>
7078
7079 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
7080
7081 * w32term.c (w32_enable_unicode_output, cleartype_active):
7082 Remove obsolete display options.
7083 (x_draw_glyph_string_background): Don't use old cleartype_active
7084 workaround.
7085 (w32_initialize): Remove cleartype_active initialization.
7086 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
7087
70882008-07-28 Andreas Schwab <schwab@suse.de>
7089
7090 * lisp.h (init_weak_hash_tables, syms_of_font)
7091 (xd_read_queued_messages, syms_of_dbusbind): Declare.
7092 (remove_hash_entry): Don't declare.
7093 * eval.c (maybe_call_debugger): Make static and move before use.
7094 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
7095 * xdisp.c: Include "gtkutil.h" if USE_GTK.
7096 * xterm.h (x_set_frame_alpha): Declare.
7097
70982008-07-28 Jan Djärv <jan.h.d@swipnet.se>
7099
7100 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
7101 (create_menus): Connect selection-done to menu_nav_ended.
7102
71032008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7104
7105 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
7106 Set Vx_resource_name to a fallback. Replace read of 'buffered'
7107 parameter with read of 'alpha' one.
7108 (Qns_frame_parameter): Remove.
5582fbc7 7109 * nsselect.m (selection-coding-system)
aac0c6e3
MR
7110 (next-selection-coding-system, Vselection_coding_system)
7111 (Vnext_selection_coding_system): Drop.
7112
71132008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7114
7115 * nsfns.m (do-applescript, do_applescript): Rename to
7116 ns-do-applescript, ns_do_applescript, and move within file.
7117
71182008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
7119
7120 Remove support for Mac Carbon.
7121 * mactoolbox.c:
7122 * macterm.h:
7123 * macterm.c:
7124 * macselect.c:
7125 * macmenu.c:
7126 * macgui.h:
7127 * macfns.c:
7128 * mac.c: Remove file.
7129 * s/darwin.h:
7130 * m/intel386.h:
7131 * xfaces.c:
7132 * xdisp.c:
7133 * window.c:
7134 * tparam.c:
7135 * termhooks.h:
7136 * termcap.c:
7137 * term.c:
7138 * syssignal.h:
7139 * sysselect.h:
7140 * sysdep.c:
7141 * process.c:
7142 * lread.c:
7143 * lisp.h:
7144 * keyboard.c:
7145 * image.c:
7146 * fringe.c:
7147 * frame.h:
7148 * frame.c:
7149 * fontset.c:
7150 * font.h:
7151 * font.c:
7152 * fns.c:
7153 * fileio.c:
7154 * emacs.c:
7155 * dispnew.c:
7156 * dispextern.h:
7157 * config.in:
7158 * atimer.c:
2ae37cf0 7159 * Makefile.in: Remove code for Carbon.
aac0c6e3 7160
f0131492 71612008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
7162
7163 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
7164
71652008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7166
7167 * macterm.h (kCGBitmapByteOrder32Host): New define for
7168 non-universal SDKs.
7169
7170 * image.c (mac_create_cg_image_from_image, image_load_image_io)
7171 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7172
7173 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
7174 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7175
71762008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
7177
7178 * w32inevt.c: Include dispextern.h.
7179
71802008-07-26 Andreas Schwab <schwab@suse.de>
7181
7182 * print.c (print_object): Fix off-by-one in last change.
7183
71842008-07-25 Juanma Barranquero <lekktu@gmail.com>
7185
7186 * term.c (syms_of_term): Don't initialize default_orig_pair,
7187 default_set_foreground and default_set_background on Windows.
7188
71892008-07-25 Jason Rumney <jasonr@gnu.org>
7190
7191 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
7192 ScriptItemize. Clean up return value checking. Remove unused
7193 variables.
7194 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
7195 shaping engine.
7196
7197 * w32font.c (w32font_has_char): Handle the case where we can't
7198 determine the script for a character.
7199
72002008-07-25 Chong Yidong <cyd@stupidchicken.com>
7201
7202 * term.c (syms_of_term): Initialize default_orig_pair,
7203 default_set_foreground, and default_set_background.
7204
7205 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
7206 clash (bug#86).
7207 (getloadavg): Callers changed.
7208
7209 * image.c (svg_load_image): Fix last change.
7210 (svg_load_image): Use rsvg_handle_get_dimensions to check that
7211 image size is valid. Use g_object_unref instead of deprecated
7212 rsvg_handle_free to free rsvg handle.
7213 (x_from_xcolors): Don't initialize pixmap (silence compiler).
7214
72152008-07-25 Jason Rumney <jasonr@gnu.org>
7216
7217 * w32font.c (w32font_encode_char): Encode characters outside BMP as
7218 surrogates before looking up glyph index.
7219 (w32font_text_extents): Encode as surrogates if falling back to
7220 functions that need UTF-16 wide chars.
7221
7222 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
7223 BMP as surrogates before looking up glyph index.
7224
72252008-07-25 Chong Yidong <cyd@stupidchicken.com>
7226
7227 * image.c (svg_load_image): Check for failure in return value of
7228 rsvg_handle_get_pixbuf. Free rsvg handle when done.
7229
72302008-07-25 Jason Rumney <jasonr@gnu.org>
7231
7232 * w32font.c (Fx_select_font): Reverse sense of second arg.
7233
72342008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
7235
7236 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
7237 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
7238
7239 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
7240 (PURESIZE): Use it.
7241
72422008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
7243
7244 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
7245 * m/alpha.h (TEXT_END):
7246 * m/ibmrs6000.h (TEXT_END):
7247 * m/macppc.h (TEXT_END):
7248 * s/darwin.h (TEXT_END):
7249 * s/msdos.h (TEXT_END): Remove, unused.
7250 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
7251 * s/cygwin.h: Remove comment.
7252
7253 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
7254 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
7255 * m/intel386.h (DOT_GLOBAL_START):
7256 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
7257 (USG): Remove, file not used on USG platforms.
7258
7259 * Makefile.in (HAVE_X11): Remove empty #else.
7260
72612008-07-24 Andreas Schwab <schwab@suse.de>
7262
7263 * fileio.c (Finsert_file_contents): Properly adjust undo list
7264 after format conversion.
7265
72662008-07-24 Jan Djärv <jan.h.d@swipnet.se>
7267
7268 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
7269 (menu_nav_ended): Remove.
7270 (create_menus): Remove signal connect for menu_nav_ended.
7271 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
7272 create_menus.
7273 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
7274
72752008-07-23 Jason Rumney <jasonr@gnu.org>
7276
7277 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
7278 with opened font.
7279 (w32font_open): Set font type to gdi.
7280
7281 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
7282
72832008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
7284
7285 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
7286 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
7287 defines it.
7288 * unexec.c (ADDR_CORRECT): Define unconditionally.
7289
7290 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
7291
7292 * unexec.c: Remove code depending on !COFF and USG, the file is
7293 not used for such systems.
7294
7295 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
7296 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
7297 (LD_SWITCH_SYSTEM_1): Remove, update users.
7298
7299 * s/darwin.h (DATA_END):
7300 * m/intel386.h (DATA_END):
7301 * m/ibmrs6000.h (DATA_END):
7302 * m/alpha.h (DATA_END): Remove, unused.
7303
7304 * config.in: Regenerate.
7305 * s/ms-w32.h (subprocesses): Define unconditionally.
7306 * s/template.h (subprocesses): Update comment.
7307 * s/vms.h (subprocesses):
7308 * s/usg5-4.h (subprocesses):
7309 * s/hpux10-20.h (subprocesses):
7310 * s/gnu-linux.h (subprocesses):
7311 * s/cygwin.h (subprocesses):
7312 * s/bsd-common.h (subprocesses):
7313 * s/aix4-2.h (subprocesses):
7314 * s/darwin.h (subprocesses): Do not define, defined by default now.
7315
7316 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7317 Remove all references.
7318 (temacs): Add GNUstep specific ld flags.
7319
7320 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7321 similarly to what X does.
7322
73232008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7324
7325 * nsfns.m (x-list-fonts): Remove.
7326 (syms_of_nsfns): Drop the x-list-fonts declaration.
7327 * nsterm.m: Get rid of remaining "//" comments.
7328
73292008-07-22 Chong Yidong <cyd@stupidchicken.com>
7330
7331 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7332
7333 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7334 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7335 (Fns_own_selection_internal, Fx_disown_selection_internal)
7336 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7337
7338 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7339 ... */' style of docstrings. Doc fixes.
7340
73412008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7342
7343 * terminfo.c (UP, BC, PC): Undo previous change.
7344
7345 * nsfns.m: Rename ns prefixed functions/variables to the
7346 corresponding x versions. Update references.
7347
73482008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7349
7350 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7351
73522008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7353
7354 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7355 Remove forwarding functions.
7356 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7357 non-static.
7358 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7359 non-static.
7360 (ns_frame_parm_handlers): Use the new names.
7361 (syms_of_nsfns): Move to the end of file.
7362
7363 * nsterm.m (syms_of_nsterm): Move to the end of file.
7364
7365 * dispnew.c (init_display): Remove code for X10.
7366
73672008-07-22 Jason Rumney <jasonr@gnu.org>
7368
7369 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7370 bare drive.
7371
73722008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7373
7374 * nsterm.m (syms_of_nsterm): Remove debugging println.
7375
73762008-07-22 David Reitter <david.reitter@gmail.com>
7377
7378 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7379 Carbon implementation of the same functionality: execute arbitrary
7380 AppleScript code.
7381
73822008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7383
7384 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7385 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7386 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7387 (Fx_display_mm_height, Fx_display_mm_width)
7388 (Fx_display_backing_store, Fx_display_visual_class)
7389 (Fx_display_save_under, Fx_open_connection)
7390 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7391 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7392 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7393 (Fx_display_pixel_width, Fx_display_pixel_height)
7394 (Fx_display_usable_bounds, Fx_display_planes)
7395 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7396 ... */' style of docstrings.
7397
73982008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7399
7400 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7401 on this platform.
7402 (mips):
7403 * m/iris4d.h (mips): Do not define.
7404 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7405
7406 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7407
7408 * image.c:
7409 * nsfns.m:
7410 * nsselect.m:
7411 * nsterm.h:
7412 * nsterm.m: Rename ns prefixed functions/variables to the
7413 corresponding x versions. Update references.
7414
7415 * m/ibms390x.h (NO_REMAP): Do not undefine.
7416
7417 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7418
74192008-07-21 Chong Yidong <cyd@stupidchicken.com>
7420
7421 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7422 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7423 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7424 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7425 (Fns_display_mm_height, Fns_display_mm_width)
7426 (Fns_display_backing_store, Fns_display_visual_class)
7427 (Fns_display_save_under, Fns_open_connection)
7428 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7429 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7430 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7431 (Fns_display_pixel_width, Fns_display_pixel_height)
7432 (Fns_display_usable_bounds, Fx_display_planes)
7433 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7434
74352008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7436
7437 * print.c (print_object): Check print_depth before searching for
7438 circularities.
7439
74402008-07-21 Michael Albinus <michael.albinus@gmx.de>
7441
7442 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7443 only sprintf.
7444
74452008-07-21 Kenichi Handa <handa@m17n.org>
7446
7447 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7448
74492008-07-20 Andreas Schwab <schwab@suse.de>
7450
7451 * syntax.c (find_start_pos, find_start_value)
7452 (find_start_value_byte, find_start_begv, find_defun_start)
7453 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7454
74552008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7456
7457 * s/sol2-3.h: Insert contents of s/sol2.h.
7458 (LD_SWITCH_SYSTEM): Remove redundant definition.
7459 * s/sol2.h: Remove, unused.
7460
74612008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7462
7463 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7464
74652008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7466
7467 * Makefile.in (ns_appdir): Fix typo in find command.
7468
74692008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7470
7471 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7472
7473 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7474 added not supported anymore.
7475
7476 * s/usg5-4-2.h (LIBS_SYSTEM):
7477 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7478
7479 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7480 * s/lynxos.h (GETPGRP_NO_ARG):
7481 * s/hpux10-20.h (NO_SIOCTL_H):
7482 * s/gnu.h (GETPGRP_NO_ARG):
7483 * s/gnu-linux.h (NO_SIOCTL_H):
7484 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7485 * s/cygwin.h (GETPGRP_NO_ARG):
7486 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7487 (C_DEBUG_SWITCH): Remove duplicate definition.
7488
7489 * m/ibms390.h: Remove boilerplate comments.
7490
7491 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7492
7493 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7494 (wait_reading_process_output): Remove code for SunOS, platform not
7495 supported anymore. Use SOLARIS2 instead of sun.
7496
74972008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7498
7499 * font.c (font_open_by_name): Under NS, default lface height to zero.
7500 (font_open_for_lface): Under NS, set size based on frame fontsize.
7501 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7502 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7503
75042008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7505
7506 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7507 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7508 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7509 YES/NO.
7510 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7511 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7512 * Makefile.in (clean): Clear out build destination dir.
7513
75142008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7515
7516 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7517 xterm, xselect.
7518 * lisp.h: Remove declaration of hash_remove.
7519 * nsgui.h: Remove redefinitions of hash_remove.
7520 * fns.c (hash_remove): Rename to hash_remove_from_table.
7521
75222008-07-19 Seiji Zenitani <zenitani@mac.com>
7523
7524 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7525 strdup() the family UTF8String before modifying it.
7526
75272008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7528
7529 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7530 NS_FACE_BACKGROUND with 0 instead of nil.
7531 * nsfont.m (nsfont_draw): Same.
7532
75332008-07-19 Chong Yidong <cyd@stupidchicken.com>
7534
7535 * nsfns.m (ns_set_background_color): Fix crash.
7536
75372008-07-18 Chong Yidong <cyd@stupidchicken.com>
7538
7539 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7540
75412008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7542
7543 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7544
75452008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7546
7547 * gtkutil.c: Include <config.h> instead of "config.h".
7548
7549 * lisp.h (Foverlay_buffer): Add EXFUN.
7550
7551 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7552 child process to complete child_setup. Undo 2005-09-21 change.
7553
7554 * s/darwin.h: Mention setsid after vfork.
7555
75562008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7557
7558 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7559 Depend on macgui.h.
7560
7561 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7562 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7563
7564 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7565 and f19.
7566 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7567
7568 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7569 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7570 Remove enumerators.
7571
7572 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7573 Check if FACE_FROM_ID returns NULL.
7574
75752008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7576
7577 * w32inevt.c (change_frame_size): Remove extern declaration.
7578 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7579 change_frame_size.
7580
75812008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7582
7583 * getloadavg.c: Revert last change (2008-07-15).
7584
75852008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7586
7587 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7588 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7589 from configure.
7590
75912008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7592
7593 * s/sol2.h:
7594 * s/sol2-4.h: Reorganize conditionals.
7595
7596 * ecrt0.c: Remove code depending on m68000, not used anymore.
7597
7598 * fns.c (hash_remove): Make static.
7599 * lisp.h (hash_remove): Don't prototype.
7600
7601 * m/ibmrs6000.h:
7602 * m/ibms390x.h:
7603 * m/macppc.h: Remove boilerplate comments.
7604
7605 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7606 Solaris, which does not need them.
7607
7608 * m/vax.h: Remove comments about unsupported systems.
7609
7610 * s/darwin.h: Reorganize ifdefs.
7611
76122008-07-17 Andreas Schwab <schwab@suse.de>
7613
7614 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7615
76162008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7617
7618 Use SDATA. Follow coding convention of placing operators at
7619 beginning of next line rather than end of previous line, and placing
7620 spaces around infix operators.
7621
7622 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7623 in case it was defined already.
7624 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7625 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7626 ns_default.
7627 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7628 Lisp_Objects.
7629 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7630 (ns_defined_color, ns_color_to_lisp): Declare.
7631 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7632 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7633 it's accepted even with USE_LISP_UNION_TYPE.
7634 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7635 (update_frame_tool_bar): Remove apparently obsolete tests for
7636 non-integerness of f->tool_bar_lines.
7637 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7638 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7639 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7640 (nsfont_open): Don't confuse NULL for Qnil.
7641 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7642 * menu.h (find_and_call_menu_selection):
7643 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7644 (find_and_return_menu_selection): Always return something.
7645 * frame.h: Include dispextern.h for Display_Info.
7646 (display_x_get_resource): Declare.
7647
76482008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7649
7650 * syntax.c: Remove stdio.h include accidentally introduced in
7651 Emacs.app commit.
7652 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7653 NS_IMPL_COCOA.
7654 * keyboard.c (handle_async_input, input_available_signal): Remove
7655 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7656
76572008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7658
7659 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7660 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7661 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7662 Use SDATA.
7663
7664 * keymap.c: Remove all NS-specific code.
7665 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7666 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7667 where_is_preferred_modifier, return a different value depending on how
7668 preferred is the binding.
7669 (where_is_internal): Adjust accordingly.
7670 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7671 Adjust to new preferred_sequence_p.
7672 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7673 * keyboard.c (parse_solitary_modifier): Not static any more.
7674 * keyboard.h (parse_solitary_modifier): Declare.
7675
76762008-07-16 Andreas Schwab <schwab@suse.de>
7677
7678 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7679 of easymenu.
7680
76812008-07-16 Chong Yidong <cyd@stupidchicken.com>
7682
7683 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7684 that we don't move off the line.
7685
76862008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7687
7688 * keyboard.c (Qsuper): Remove.
7689 (parse_menu_item): Don't call where_is_internal specially for NS.
7690
76912008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7692
7693 * s/gnu-linux.h: Remove boilerplate comments.
7694
7695 * m/alpha.h (__ELF__): Consolidate conditions.
7696
7697 * m/m68k.h (linux): Use GNU_LINUX instead.
7698 Remove boilerplate comments.
7699
7700 * m/intel386.h: Undo refactoring from previous change.
7701 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7702 too, remove dead code.
7703 (linux): Use GNU_LINUX instead.
7704
77052008-07-16 Jason Rumney <jasonr@gnu.org>
7706
7707 * w32gui.h: Repeat 26 June changes lost by last change.
7708
77092008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7710
7711 * systty.h: Remove code for Aix on 386, unsupported platform.
7712
7713 * s/ms-w32.h: Remove boilerplate comments.
7714 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7715
7716 * s/gnu-linux.h (TERM): Remove support.
7717 (HAVE_SYSVIPC): Remove, unused.
7718 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7719 for this system.
7720
7721 * process.c: Remove support for IRIS, unused.
7722 Remove support for TERM, not relevant anymore.
7723
7724 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7725 used with the definition.
7726
7727 * s/aix4-2.h (static): Do not undef.
7728
7729 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7730 only used on Aix.
7731 (HAVE_SYSVIPC): Remove, unused.
7732
7733 * m/hp800.h (CANNOT_DUMP): Do not undef.
7734
7735 * m/alpha.h: Fix comment.
7736
7737 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7738 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7739 used by this configuration.
7740 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7741 * unexec.c: Remove code depending on HPUX and
7742 USG_SHARED_LIBRARIES, not used with this file. Remove code
7743 depending on IRIS, unused. Remove if 0-ed code.
7744
7745 * s/template.h: Remove comments about static.
7746
7747 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7748 Remove if 0-ed code.
7749 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7750 were the same as the default.
7751 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7752 Remove boilerplate comments.
7753 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7754 (HAVE_SYSVIPC): Remove, unused.
7755 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7756
7757 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7758 Remove boilerplate comments.
7759 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7760 Remove boilerplate comments.
7761 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7762 Remove boilerplate comments.
7763 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7764
7765 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7766 USG systems which do not use DATA_SEG_BITS.
7767 Refactor code. Remove boilerplate comments.
7768
7769 * m/ibms390.h:
7770 * m/m68k.h:
7771 * s/bsd-common.h:
7772 * s/cygwin.h:
7773 * s/darwin.h:
7774 * s/freebsd.h:
7775 * s/gnu.h:
7776 * s/msdos.h: Remove boilerplate comments.
7777
7778 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7779 do not use this file.
aac0c6e3
MR
7780 (IRIS_4D): Remove, unused.
7781
7782 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7783 do not use this file.
aac0c6e3
MR
7784 (SIGN_EXTEND_CHAR):
7785 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7786 * unexmips.c: Remove file, unused.
7787
7788 * editfns.c (Fuser_full_name): Replace the only use of
7789 USER_FULL_NAME with its value.
7790 * config.in: Regenerate.
7791
77922008-07-16 David Reitter <david.reitter@gmail.com>
7793
7794 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7795 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7796
77972008-07-16 Glenn Morris <rgm@gnu.org>
7798
7799 * emacs.c (system-type): Doc fix.
7800
78012008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7802
7803 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7804 If the cache doesn't work, let's fix it, rather than work around it.
7805
78062008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7807
7808 * Makefile.in: Correct additions for nsfont.o in last commit.
7809 * nsfont.m: New file (forgot last commit).
7810
78112008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7812
7813 * callproc.c (set_initial_environment): Initialize
7814 Vprocess_environment under CANNOT_DUMP (fixes crash when
7815 batch-compiling for bootstrap).
7816
78172008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7818 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7819
7820 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7821 fix crash due to different init order.
7822
78232008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7824
7825 Changes and additions for NeXTstep windowing system (Cocoa and
7826 GNUstep) support.
7827
7828 * Makefile.in:
7829 * config.in: Support defines and build commands for NS port.
7830 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7831 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7832 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7833 windowing.
7834 (struct face): Add synth_ital field.
7835 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7836 (init_display): Initialize Vinitial_window_system to "ns" when so
7837 compiled.
7838 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7839 (display_arg): Use under NS.
7840 (main): Under NS, allocate autorelease pool and handle command line
7841 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7842 (standard_args): Add NS-specific args.
7843 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7844 * font.c (DEFAULT_ENCODING): New variable.
7845 (font_find_for_lface): Use it.
7846 (syms_of_font): Load syms_of_nsfont under NS.
7847 * font.h: Declare nsfont_driver when compiled under NS.
7848 * fontset.c: When compiling under NS, include nsterm.h.
7849 (fontset_from_font): Autoconstruct fontset under NS.
7850 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7851 symbol, document and use it.
7852 (do_switch_frame): When for_deletion under Cocoa, add
7853 Fraise_frame(Qnil).
7854 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7855 (x_get_arg): Allow "yes" and "no" as boolean values.
7856 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7857 Qright under Cocoa.
7858 (focus-follows-mouse): Default to 0 under NS.
7859 * frame.h (enum output_method): Add output_ns.
7860 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7861 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7862 (FRAME_WINDOW_P): NS-specific definition.
7863 * fringe.c (max_used_fringe_bitmap): Make public.
7864 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7865 (getloadavg): Use NeXT code under descendant OS's.
7866 * image.c (includes and header section, x_create_bitmap_from_data)
7867 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7868 (image_background_transparent, x_clear_image_1)
7869 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7870 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7871 (x_to_xcolors, x_from_xcolors, x_disable_image)
7872 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7873 other GUIs, including XPM support using code originally written for
7874 Carbon GUI.
7875 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7876 using NS API.
7877 (image_ascent): Use font metrics macros instead of direct struct field
7878 access.
7879 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7880 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7881 Also, handle NS as GTK for menu bar purposes.
7882 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7883 toolkit where they differ.
7884 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7885 use cachelist, still needed under NS.
7886 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7887 (struct widget_value): Define it here for menu.c.
7888 * keymap.c (includes): Include modifier internals.
7889 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7890 NS.
7891 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7892 support for preferring sequences using certain modifiers, specified by
7893 the FIRSTONLY argument.
7894 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7895 under NS GNUstep implementation.
7896 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7897 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7898 * menu.c: Include nsterm.h under NS.
7899 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7900 (free_menubar_widget_tree_value, update_submenu_strings)
7901 (find_and_call_menu_selection): Treat NS as X and NT.
7902 (find_and_return_menu_selection): New function, used for popup menus.
7903 * nsgui.h:
7904 * nsterm.h:
7905 * nsfns.m:
7906 * nsimage.m:
7907 * nsmenu.m:
7908 * nsselect.m:
7909 * nsterm.m: New files.
7910 * process.c (wait_reading_process_output): Under NS, call ns_select()
7911 instead of plain select().
7912 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7913 beginning of buffer.
7914 * sysselect.h (init_process): Rename when compiling under Cocoa to
7915 avoid name conflict.
7916 * termhooks.h (display_info): Add ns_display_info to union.
7917 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7918 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7919 COCOA environment.
7920 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7921 unexec() signature. (Note, this will dump, but the resulting file
7922 crashes; unexosx is used instead; keeping around for reference and
7923 possible aid in getting dump working under GNUstep.)
7924 * w32gui.h (button_type, widget_value): Remove definitions (now in
7925 keyboard.h).
7926 * window.c: Include nsterm.h when compiling under NS.
7927 * xdisp.c (includes): Include nsterm.h when compiling under NS.
7928 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
7929 other GUI windowing systems.
7930 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
7931 GTK.
7932 (x_consider_frame_title): Under NS, set icon type and frame
7933 modified-state indicator; use ns_set_name_as_filename() when using
7934 formatted title.
7935 (update_window_cursor): Make public when compiling under NS.
7936 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
7937 (hourglass_atimer, Vhourglass_delay
7938 * xfaces.c (header section, init_frame_faces, clear_font_table)
7939 (defined_color, unload_color, x_face_list_fonts)
7940 (prepare_face_for_display): Add NS support parallel to other GUIs.
7941 Emulate GCs like other non-X GUIs.
7942 (split_font_name): Don't lowercase font name under NS.
7943 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
7944 under NS.
7945 * s/darwin.h: Add support for compilation under NS.
7946
79472008-07-15 Jason Rumney <jasonr@gnu.org>
7948
7949 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
7950 (w32_show_hourglass): Rename from show_hourglass.
7951 (w32_hide_hourglass): Rename from hide_hourglass.
7952 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
7953 (Vhourglass_delay): Declare extern.
7954 (hourglass_started): Remove.
7955
7956 * xdisp.c (Vhourglass_delay): Remove static.
7957 (hourglass_started, start_hourglass, cancel_hourglass):
7958 Don't include these versions on WINDOWSNT.
7959
79602008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7961
7962 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
7963 variables (formerly in xfns.c).
7964 (show_hourglass, hide_hourglass): New prototypes (same).
7965 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
7966 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
7967 in xfns.c).
7968 (syms_of_xdisp): Declare/initialize display-hourglass,
7969 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
7970 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
7971 formerly in xfns.c.
7972 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7973 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7974 (start_hourglass, cancel_hourglass): Remove.
7975 (show_hourglass, hide_hourglass): Remove prototypes and static
7976 modifiers.
7977 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
7978 hourglass_atimer, hourglass_shown_p declaration/initialization.
7979 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
7980 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
7981 (start_hourglass, cancel_hourglass): Remove.
7982 (show_hourglass, hide_hourglass): Remove prototypes and static
7983 modifiers.
7984 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
7985 hourglass_atimer, hourglass_shown_p declaration/initialization.
7986 * w32fns.c (display_hourglass_p, Vhourglass_delay)
7987 (DEFAULT_HOURGLASS_DELAY): Remove.
7988 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
7989 hourglass_shown_p declaration/initialization.
7990
79912008-07-14 Jason Rumney <jasonr@gnu.org>
7992
7993 * w32fns.c (w32_get_arg): Remove wrapper function.
7994 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
7995 directly.
7996 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
7997
79982008-07-14 Kenichi Handa <handa@m17n.org>
7999
8000 * xfont.c (xfont_open): Add workaround for X's bug.
8001
80022008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8003
8004 * fontset.c: Include <stdio.h> unconditionally.
8005
80062008-07-13 Michael Albinus <michael.albinus@gmx.de>
8007
8008 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
8009 for filtering.
8010
80112008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
8012
8013 * s/vms.h: Use __GNUC__ instead of _GNUC_.
8014
8015 * m/macppc.h:
8016 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
8017
8018 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
8019 (SPECIAL_EMACS_INT):
8020 * m/ia64.h (SPECIAL_EMACS_INT):
8021 * m/amdx86-64.h (SPECIAL_EMACS_INT):
8022 * s/gnu.h (NLIST_STRUCT):
8023 * s/aix4-2.h (X11R5_INHIBIT_I18N):
8024 * s/gnu-linux.h (LINUX):
8025 * s/msdos.h (HAVE_FACES):
8026 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
8027
8028 * systty.h:
8029 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
8030 anymore.
8031
80322008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
8033
8034 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
8035 always defined as int.
8036
8037 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
8038 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
8039 * s/gnu-linux.h (HAVE_WAIT_HEADER):
8040 * s/freebsd.h (HAVE_WAIT_HEADER):
8041 * s/bsd-common.h (HAVE_UNION_WAIT):
8042 * s/aix4-2.h (HAVE_WAIT_HEADER):
8043 * m/mips.h (HAVE_UNION_WAIT):
8044 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
8045 (COFF, static): Do not define, they are undefined later in the file.
8046
8047 * process.c (update_status): Don't use a union.
8048 (status_convert):
8049 (sigchld_handler): Use int instead of WAITTYPE.
8050
80512008-07-12 Chong Yidong <cyd@stupidchicken.com>
8052
8053 * indent.c (Fvertical_motion): Restore hscroll before moving to
8054 goal column.
8055
80562008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8057
8058 * lisp.h: Remove left over code.
8059
80602008-07-11 Andreas Schwab <schwab@suse.de>
8061
8062 * lisp.h: Fix logic in last change.
8063
8064 * menu.h: New file.
8065 * menu.c: Include it.
8066 * xmenu.c: Likewise.
8067 * Makefile.in: Update dependencies.
8068
80692008-07-11 Kenichi Handa <handa@m17n.org>
8070
8071 * fontset.c (fontset_from_font): Cancel the previous change.
8072
80732008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8074
8075 * lisp.h:
8076 * w32heap.c:
8077 * emacs.c:
8078 * alloc.c: Replace all references of NO_UNION_TYPE with
8079 USE_LISP_UNION_TYPE.
8080
8081 * m/xtensa.h (NO_UNION_TYPE):
8082 * m/vax.h (NO_UNION_TYPE):
8083 * m/template.h (NO_UNION_TYPE):
8084 * m/sparc.h (NO_UNION_TYPE):
8085 * m/mips.h (NO_UNION_TYPE):
8086 * m/macppc.h (NO_UNION_TYPE):
8087 * m/m68k.h (NO_UNION_TYPE):
8088 * m/iris4d.h (NO_UNION_TYPE):
8089 * m/intel386.h (NO_UNION_TYPE):
8090 * m/ibms390x.h (NO_UNION_TYPE):
8091 * m/ibms390.h (NO_UNION_TYPE):
8092 * m/ibmrs6000.h (NO_UNION_TYPE):
8093 * m/ia64.h (NO_UNION_TYPE):
8094 * m/hp800.h (NO_UNION_TYPE):
8095 * m/arm.h (NO_UNION_TYPE):
8096 * m/amdx86-64.h (NO_UNION_TYPE):
8097 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
8098 defining it the same.
8099
81002008-07-10 Chong Yidong <cyd@stupidchicken.com>
8101
8102 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
8103
81042008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8105
8106 * fileio.c:
8107 * sysdep.c
8108 * systty.h:
8109 * m/ibmrs6000.h:
8110 * m/iris4d.h:
8111 * s/aix4-2.h:
8112 * s/freebsd.h:
8113 * s/gnu-linux.h:
8114 * s/hpux10-20.h:
8115 * s/hpux11.h:
8116 * s/netbsd.h:
8117 * s/sol2-3.h:
8118 * s/sol2-4.h:
8119 * s/sol2.h:
8120 * s/usg5-4.h:
8121 * s/vms.h: Remove references to unused variables.
8122
81232008-07-10 Andreas Schwab <schwab@suse.de>
8124
8125 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
8126 pattern before matching the generic family.
8127
81282008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8129
8130 * unexec.c:
8131 * s/vms.h:
8132 * s/usg5-4-2.h:
8133 * s/sol2-5.h:
8134 * s/freebsd.h:
8135 * s/darwin.h: Remove dead code.
8136
8137 * m/template.h:
8138 * m/sparc.h:
8139 * m/mips.h:
8140 * m/m68k.h:
8141 * m/iris4d.h:
8142 * m/intel386.h:
8143 * m/ibms390x.h:
8144 * m/ibms390.h:
8145 * m/ia64.h:
8146 * m/hp800.h:
8147 * m/arm.h:
8148 * m/amdx86-64.h: Remove dead code and references to unused
8149 and compiler defined symbols.
8150
8151 * unexmips.c:
8152 * unexelf.c: Remove references to desupported systems.
8153
8154 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
8155
8156 * m/powermac.h: Remove boilerplate comments.
8157 (NO_REMAP): Remove unused definition.
8158
8159 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
8160 define them.
8161
81622008-07-10 Kenichi Handa <handa@m17n.org>
8163
8164 * xfont.c (xfont_open): Log the reason of failure.
8165
81662008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
8167
8168 * fontset.c (fontset_get_font_group):
8169 * font.c (font_check_otf): Specify argument types.
8170
81712008-07-09 Kenichi Handa <handa@m17n.org>
8172
8173 * coding.c (detect_coding_utf_8): Set detect_info->found only when
8174 non-ASCII char is found.
8175
8176 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
8177 (reorder_font_vector): Change the arg preferred_family to font.
8178 Prefer the spec matching with font.
8179 (fontset_get_font_group): New function.
8180 (fontset_find_font): Change the format of an element of a realized
8181 fontset. Use fontset_get_font_group.
8182 (fontset_font): Try the current fontset, the default fontset, the
8183 fallbacks of the current fontset, and the fallbacks of the default
8184 fontset in this order.
8185 (face_for_char): Delete the shortcut to use the current font.
8186 (fontset_from_font): Don't set fonts for Latin in the fontset.
8187
8188 * font.h (font_make_object, font_match_p): Adjust prototypes.
8189
8190 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
8191
8192 * font.c (font_make_object): New arg entity and pixelsize.
8193 (font_check_otf_features, font_check_otf): New functions.
8194 (font_match_p): Check :lang, :script, and :otf properties.
8195
8196 * xfont.c (xfont_open): Adjust it for the change of
8197 font_make_object.
8198 (xfont_text_extents): Fix initial setting of metrics.
8199
8200 * ftfont.c (struct ftfont_info): New member index, delete member
8201 fc_charset_idx. Make the member order compatible with struct
8202 xftfont_info.
8203 (fc_charset_table): Change charset names to registry names.
8204 (ftfont_pattern_entity): Delete the args registry and
8205 fc_charset_idx. Change the value of :font-entity property
8206 to (FONTNAME . INDEX). Always set :registry property to
8207 `iso10646-1'.
8208 (struct ftfont_cache_data): New struct.
8209 (ftfont_lookup_cache): New arg for_face.
8210 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
8211 (ftfont_driver): Set the member otf_capability.
8212 (ftfont_get_charset): Adjust it for the change of
8213 fc_charset_table.
8214 (OTF_TAG_SYM): New macro.
8215 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
8216 for the change of fc_charset_table.
8217 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
8218 ftfont_pattern_entity. Add FC_INDEX to objset.
8219 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
8220 and ftfont_pattern_entity.
8221 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
8222 font_make_object, struct ftfont_info.
8223 (ftfont_has_char): Use ftfont_get_fc_charset.
8224 (ftfont_otf_features, ftfont_otf_capability): New functions.
8225 (ftfont_shape): Use ftfont_get_otf.
8226 (ftfont_text_extents): Fix initial setting of metrics.
8227
8228 * xftfont.c (struct xftfont_info): New member ft_size. Make the
8229 member order compatible with struct ftfont_info.
8230 (xftfont_open): Add FC_CHARSET to the pattern. Set
8231 xftfont_info->ft_size. Don't unlock the face. Check BDF
8232 properties if appropriate.
8233 (xftfont_close): Unlock the face.
8234 (xftfont_anchor_point, xftfont_shape): Deleted.
8235 (syms_of_xftfont): Don't set members anchor_point and shape of
8236 xftfont_driver.
8237
8238 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
8239 font_make_object.
8240
8241 * w32font.c (w32font_open): Adjust it for the change of
8242 font_make_object.
8243 (w32font_open_internal): Don't set properties of font_object here.
8244
82452008-07-08 Chong Yidong <cyd@stupidchicken.com>
8246
8247 * macfns.c (x_create_tip_frame):
8248 * w32fns.c (x_create_tip_frame):
8249 * xfns.c (x_create_tip_frame): Pass parameter argument to
8250 face-set-after-frame-default.
8251
8252 * xfaces.c (Finternal_merge_in_global_face): Save merged
8253 attributes for the default face back into the face vector.
8254
82552008-07-08 Andreas Schwab <schwab@suse.de>
8256
8257 * fontset.h: Declare fontset_from_font. Don't declare
8258 new_fontset_from_font and fontset_from_font_name.
8259 * xterm.c: Include "fontset.h".
8260 * Makefile.in (xterm.o): Update dependencies.
8261
82622008-07-08 Glenn Morris <rgm@gnu.org>
8263
8264 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
8265 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
8266
82672008-07-07 Chong Yidong <cyd@stupidchicken.com>
8268
8269 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
8270 (x_set_frame_parameters): Don't bind it.
8271
82722008-07-07 Juanma Barranquero <lekktu@gmail.com>
8273
8274 * w32fns.c (map_w32_filename): Declare extern.
8275
82762008-07-07 Jason Rumney <jasonr@gnu.org>
8277
8278 * w32term.c (WS_EX_LAYERED): Define if not already.
8279
82802008-07-06 Chong Yidong <cyd@stupidchicken.com>
8281
8282 * xfaces.c (set_font_frame_param): Don't try to set the font
8283 parameter if it is still unspecified in the lface.
8284
82852008-07-05 Chong Yidong <cyd@stupidchicken.com>
8286
8287 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
8288 face if it didn't already exist.
8289
8290 * xdisp.c (try_window_id): Give up if word-wrapping is on.
8291
82922008-07-05 Andreas Schwab <schwab@suse.de>
8293
8294 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
8295
82962008-07-05 Chong Yidong <cyd@stupidchicken.com>
8297
8298 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
8299 word-wrapping.
8300 (IT_DISPLAYING_WHITESPACE): New macro.
8301 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
8302 when word-wrapping. Simplify word-wrapping logic. Use correct
8303 pixel positions when saving copies of the iterator.
8304 (display_line): Use proper wrap point if the last character on a
8305 line was preceded by whitespace.
8306
83072008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
8308
8309 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
8310
83112008-07-04 Kenichi Handa <handa@m17n.org>
8312
8313 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
8314
8315 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
8316
83172008-07-02 Jason Rumney <jasonr@gnu.org>
8318
8319 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 8320 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
8321
8322 * xdisp.c (next_element_from_display_vector): Move assignment out
8323 of if statement.
8324
83252008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8326
8327 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8328
8329 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8330 (syms_of_fileio): Initialize and export them.
8331 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8332
8333 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8334 (Fsystem_move_file_to_trash): New function.
8335 (syms_of_w32fns): Export it to lisp.
8336
83372008-07-01 Jason Rumney <jasonr@gnu.org>
8338
8339 * w32font.c (w32font_text_extents): Don't count overhang as part
8340 of width.
8341
83422008-06-30 Miles Bader <miles@gnu.org>
8343
8344 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8345 Add `avoid_cursor_p' field.
8346
8347 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8348 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8349 (append_glyph, append_composite_glyph, produce_image_glyph)
8350 (append_stretch_glyph): Initialize avoid_cursor_p.
8351 (get_it_property): Rename from `get_line_height_property'.
8352 (x_produce_glyphs): Use get_it_property.
8353 (handle_line_prefix, push_display_prop): New functions.
8354 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8355 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8356 New variables.
8357 (syms_of_xdisp): Initialize them.
8358
83592008-06-30 Kenichi Handa <handa@m17n.org>
8360
8361 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8362 XftDefaultSubstitute (they are called in XftFontMatch).
8363 (xftfont_open): Fix args to ftfont_font_format.
8364
8365 * ftfont.c (fc_charset_table): New member lang.
8366 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 8367 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
8368 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8369 (ftfont_open): Fix args to ftfont_font_format.
8370 (ftfont_font_format): New arg filename.
8371
83722008-06-30 Chong Yidong <cyd@stupidchicken.com>
8373
8374 * xfaces.c (Finternal_merge_in_global_face): If default face was
8375 modified, realize it again. Update the font face attribute.
8376
83772008-06-29 Jason Rumney <jasonr@gnu.org>
8378
8379 * w32term.c (x_set_frame_alpha): Fix logic.
8380
83812008-06-29 Kenichi Handa <handa@m17n.org>
8382
8383 * fontset.c (Finternal_char_font): Return font-object instead of
8384 font-name.
8385
8386 * composite.c (get_composition_id): Fix the width calculation for TAB.
8387
83882008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8389
8390 * indent.c (Fvertical_motion): Properly handle float column arg.
8391
83922008-06-28 Jason Rumney <jasonr@gnu.org>
8393
8394 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8395 (pfnSetLayeredWindowAttributes): New function pointer.
8396 (w32_initialize): Initialize it when supported.
8397 (x_set_frame_alpha): New function.
8398
8399 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8400 (w32_frame_parm_handlers): Set alpha handler.
8401
8402 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8403
84042008-06-27 Jason Rumney <jasonr@gnu.org>
8405
8406 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8407 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8408 (w32_to_x_charset, x_to_w32_charset)
8409 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8410 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8411 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8412 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8413 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8414 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8415 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8416 (Qw32_charset_unicode): Remove.
8417 (syms_of_w32fns): Update for above changes.
8418
8419 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8420 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8421 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8422 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8423 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8424 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8425 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8426 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8427 (syms_of_w32font): Update for above changes.
8428
84292008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8430
8431 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8432 removed #if.
8433 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8434
84352008-06-26 Juanma Barranquero <lekktu@gmail.com>
8436 Eli Zaretskii <eliz@gnu.org>
8437
8438 * makefile.w32-in (LOCAL_FLAGS):
8439 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8440
8441 * sysdep.c (_spawnlp, _getpid):
8442 Declare with explicit _cdecl instead of _CRTAPI1.
8443
8444 * editfns.c (Fget_internal_run_time):
8445 Check for WINDOWSNT with #ifdef, not #if.
8446
84472008-06-26 Jason Rumney <jasonr@gnu.org>
8448
8449 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8450
8451 * w32term.c (x_draw_glyph_string_foreground)
8452 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8453 Use FONT_HANDLE macro.
8454 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8455
8456 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8457 (uniscribe_encode_char): Use FONT_HANDLE macro.
8458
8459 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8460 (w32font_text_extents): Use precast w32_font.
8461 (w32font_close): Free cached metrics.
8462 (w32font_open_internal): Allocate space for name on stack.
8463
84642008-06-26 Chong Yidong <cyd@stupidchicken.com>
8465
8466 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8467
84682008-06-26 Jason Rumney <jasonr@gnu.org>
8469
8470 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8471 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8472
84732008-06-26 Juanma Barranquero <lekktu@gmail.com>
8474
8475 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8476
84772008-06-26 Jason Rumney <jasonr@gnu.org>
8478
8479 * w32bdf.c, w32bdf.h: Remove obsolete files.
8480
8481 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8482
8483 * w32gui.h: Don't include w32bdf.h.
8484 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8485 Remove obsolete font support.
8486
8487 * w32font.h (struct w32font_info): Remove compat_w32_font.
8488 Add hfont member.
8489 (FONT_COMPAT): Remove obsolete macro.
8490
8491 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8492 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8493 (w32font_open_internal): Remove compat code. Set new hfont member.
8494 (Fx_select_font): Use new hfont member.
8495
8496 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8497 (uniscribe_encode_char): Use new hfont member.
8498
8499 * w32term.c (x_draw_glyph_string_foreground)
8500 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8501 (x_draw_glyph_string): Use metrics in w32font_info.
8502
85032008-06-26 Kenichi Handa <handa@m17n.org>
8504
8505 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8506
85072008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8508
8509 * unexnext.c:
8510 * m/ews4800.h:
8511 * m/hp9000s300.h:
8512 * m/ibm370aix.h:
8513 * m/mips-siemens.h:
8514 * m/ncr386.h:
8515 * m/next.h:
8516 * m/pmax.h:
8517 * m/powerpcle.h:
8518 * m/tandem-s2.h:
8519 * s/386bsd.h:
8520 * s/bsd386.h:
8521 * s/bsd4-1.h:
8522 * s/bsd4-2.h:
8523 * s/bsdos2-1.h:
8524 * s/bsdos2.h:
8525 * s/bsdos3.h:
8526 * s/bsdos4.h:
8527 * s/nextstep.h:
8528 * s/ultrix4-3.h:
8529 * s/usg5-0.h:
8530 * s/usg5-2-2.h:
8531 * s/usg5-2.h:
8532 * s/usg5-4-3.h:
8533 * s/ux4800.h:
8534 * s/uxpds.h:
8535 * s/uxpv.h: Remove support for obsolete systems.
8536 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8537 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8538 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8539 Remove, insert contents in s/aix4-2.h.
8540 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8541 * s/bsd4-3.h: Rename to ...
8542 * s/bsd-common.h: ... this.
8543 * data.c:
8544 * doc.c:
8545 * ecrt0.c:
8546 * emacs.c:
8547 * fileio.c:
8548 * floatfns.c:
8549 * keyboard.c:
8550 * mem-limits.h:
8551 * print.c:
8552 * process.c:
8553 * sysdep.c:
8554 * syssignal.h:
8555 * systty.h:
8556 * syswait.h:
8557 * term.c:
8558 * unexec.c:
8559 * unexelf.c:
8560 * unexhp9k800.c:
8561 * m/hp800.h:
8562 * m/ibmrs6000.h:
8563 * m/mips.h:
8564 * m/vax.h:
8565 * s/darwin.h:
8566 * s/freebsd.h:
8567 * s/gnu.h:
8568 * s/ms-w32.h:
8569 * s/msdos.h:
8570 * s/netbsd.h:
8571 * s/template.h: Remove references to obsolete variables.
8572
8573 * Makefile.in: Add dependencies for all unexec files.
8574 (admindir): Remove unused variable.
8575 (UNEXEC_SRC): Remove references.
8576
85772008-06-25 Chong Yidong <cyd@stupidchicken.com>
8578
8579 * xfns.c (x_default_font_parameter): If Xft is available, first
8580 try Monospace-12 for the default font.
8581
85822008-06-25 Jason Rumney <jasonr@gnu.org>
8583
8584 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8585
85862008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8587
8588 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8589
8590 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8591
85922008-06-25 Juanma Barranquero <lekktu@gmail.com>
8593
8594 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8595 <scroll-conservatively>: Fix typo in docstring.
8596
8597 * xselect.c (Fx_send_client_event): Doc fix.
8598
85992008-06-25 Kenichi Handa <handa@m17n.org>
8600
8601 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8602
8603 * font.c (font_parse_fcname): Remove unused variables.
8604 (font_sort_entites): Delete the arg SPEC. Caller changed.
8605 Fix for the case of ! best_only.
8606 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8607
8608 * lisp.h (Fstring_to_unibyte): EXFUN it.
8609
8610 * character.h (str_to_unibyte): Extern it.
8611
8612 * character.c (str_to_unibyte): New function.
8613
8614 * fns.c (Fstring_to_unibyte): New function.
8615 (syms_of_fns): Defsubr it.
8616
86172008-06-24 Kenichi Handa <handa@m17n.org>
8618
8619 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8620 DPI too.
8621 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8622
86232008-06-24 Andreas Schwab <schwab@suse.de>
8624
8625 * Makefile.in (${lispsource}loaddefs.el): Rename from
8626 ../lisp/loaddefs.el.
8627 (bootstrap-clean): Do what distclean does but don't remove
8628 Makefile.
8629 (distclean): Depend on bootstrap-clean and remove Makefile.
8630
86312008-06-24 Chong Yidong <cyd@stupidchicken.com>
8632
8633 * buffer.h (struct buffer): New member word_wrap.
8634
8635 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8636 word-wrap.
8637 (init_buffer_once): Initialize them.
8638
8639 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8640 line_wrap enum possessing three possible values.
8641
8642 * termopts.h: Replace truncate_partial_width_windows with
8643 Vtruncate_partial_width_windows.
8644
8645 * dispnew.c (direct_output_for_insert): Avoid direct output when
8646 inserting a space with word wrap on.
8647
8648 * indent.c (compute_motion): Obey integer values of
8649 truncate-partial-width-windows.
8650
8651 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8652 replacing truncate_partial_width_windows.
8653 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8654 truncate only if the window width is below that integer.
8655 (start_display, resize_mini_window, produce_stretch_glyph)
8656 (display_string, move_it_in_display_line_to): Use line_wrap.
8657 (back_to_previous_visible_line_start, reseat_1): Reset
8658 string_from_display_prop_p.
8659 (display_line): Extend default face to end of line when wrapping.
8660
86612008-06-24 Kim F. Storm <storm@cua.dk>
8662
8663 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8664 to wrap continued lines at word boundaries.
8665
86662008-06-24 Jason Rumney <jasonr@gnu.org>
8667
8668 * font.c (Ffont_face_attributes): Multiply pixel size before point
8669 conversion to avoid multiplying rounding error.
8670
86712008-06-23 Jason Rumney <jasonr@gnu.org>
8672
8673 * w32term.c (x_draw_glyph_string_background)
8674 (x_draw_glyph_string): Remove old bdf font code.
8675
8676 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8677
86782008-06-22 Kenichi Handa <handa@m17n.org>
8679
8680 * font.c (font_find_for_lface): Try the adstyle specified in
8681 the property of LFACE_FONT of LFACE (if any).
8682
86832008-06-21 Seiji Zenitani <zenitani@mac.com>
8684 Ryo Yoshitake <ryo@shiftmode.net>
8685
8686 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8687
86882008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8689
8690 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8691 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8692 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8693 (witness-emacs): Remove.
8694 (lisp, shortlisp): Move loaddefs.el earlier.
8695 (mostlyclean): Forget about witness-emacs.
8696
86972008-06-22 Glenn Morris <rgm@gnu.org>
8698
8699 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8700 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8701
87022008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8703
8704 * Makefile.in (PRECOMP): Remove.
8705 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8706 (witness-emacs): Run `compile-first'.
8707 (.el.elc): Use the new compile-onefile target.
8708
87092008-06-21 Kenichi Handa <handa@m17n.org>
8710
8711 * xftfont.c (xftfont_open): Handle QCembolden only when
8712 FC_EMBOLDEN is defined.
8713
87142008-06-21 Andreas Schwab <schwab@suse.de>
8715
8716 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8717 (.el.elc): Likewise.
8718
87192008-06-21 Miles Bader <miles@gnu.org>
8720
8721 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8722 build dir, not the lisp source dir.
8723
87242008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8725
8726 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8727 (bootstrapclean): Remove.
8728 (.el.elc): New rule.
8729 (PRECOMP): New var.
8730 (../lisp/subdirs.el): Remove.
8731 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8732 (witness-emacs): New target.
8733 (mostlyclean): Remove witness-emacs as well.
8734 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8735 Add witness-emacs dependency.
8736
87372008-06-20 Chong Yidong <cyd@stupidchicken.com>
8738
8739 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8740 defined by the font.
8741
87422008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8743
8744 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8745 (bootstrap-clean): New target that keeps TAGS around.
8746 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8747 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8748
87492008-06-20 Jason Rumney <jasonr@gnu.org>
8750
8751 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8752 Remove obsolete font code.
8753
8754 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8755 to determine language support.
8756
87572008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8758
8759 * sysdep.c (cfsetspeed): New fun extracted from the code.
8760 (cfmakeraw): Move before first use.
8761
87622008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8763
8764 * sysdep.c (cfmakeraw): Provide fallback implementation.
8765 (serial_configure): Provide fallback implementation of cfsetspeed.
8766
87672008-06-20 Kenichi Handa <handa@m17n.org>
8768
8769 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8770 the pattern.
8771
8772 * fontset.c (fontset_from_font): Copy font_spec before changing
8773 the elements.
8774
8775 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8776
87772008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8778
8779 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8780 for explicit `font' parameters.
8781
8782 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8783
87842008-06-19 Kenichi Handa <handa@m17n.org>
8785
8786 * frame.c: Include <ctype.h>.
8787 (x_set_font_backend): Allow spacing characters in the X resource
8788 for FontBackend.
8789
87902008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8791
8792 * w32fns.c, xfns.c (Qfont_param): New var.
8793 (syms_of_w32fns): Initialize it.
8794 (x_default_font_parameter): Record explicit `font' into
8795 `font-parameter'.
8796
87972008-06-18 Kenichi Handa <handa@m17n.org>
8798
8799 * font.c (font_parse_xlfd): Fix previous change.
8800 (font_parse_fcname): Don't use :fc-unknown-spec.
8801 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8802 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8803 (font_add_log): Prepend the driver name to the resulting fonts.
8804
8805 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8806 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8807 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8808
8809 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8810 (QCembolden): New variables.
8811 (syms_of_xftfont): DEFSYM them.
8812 (xftfont_open): Call XftFontMatch. Don't trust the result of
8813 XftTextExtents8 if the pixel_size is less than 5.
8814
88152008-06-18 Andreas Schwab <schwab@suse.de>
8816
8817 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8818 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8819
88202008-06-18 Jason Rumney <jasonr@gnu.org>
8821
8822 * w32font.c (w32font_list, w32font_match): Add logging.
8823
8824 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8825
88262008-06-17 Chong Yidong <cyd@stupidchicken.com>
8827
8828 * font.c (font_parse_fcname): Store divider characters for
8829 unknown-spec list. For known key symbols, intern using correct
8830 symbol name.
8831
88322008-06-17 Kenichi Handa <handa@m17n.org>
8833
8834 * xfaces.c (realize_default_face): If the frame is not on window
8835 system, set the fontset of face to nil.
8836
88372008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8838
8839 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8840
88412008-06-16 Juanma Barranquero <lekktu@gmail.com>
8842
8843 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8844 (build_font_name_from_vector): Delete externs.
8845
8846 * xfaces.c (struct font_name): Don't declare.
8847
88482008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8849
8850 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8851
88522008-06-16 Chong Yidong <cyd@stupidchicken.com>
8853
8854 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8855
88562008-06-16 Juanma Barranquero <lekktu@gmail.com>
8857
8858 * font.c (Ffont_spec): Fix usage in docstring.
8859 (Ffont_face_attributes): Doc fix.
8860
88612008-06-16 Andreas Schwab <schwab@suse.de>
8862
8863 * font.c (Ffont_face_attributes): Fix definition.
8864
88652008-06-16 Jason Rumney <jasonr@gnu.org>
8866
8867 * font.h (font_style_symbolic_from_value): Remove.
8868
8869 * font.c (font_style_symbolic_from_value): Remove.
8870 (font_style_symbolic): Revert to pre 2008-06-13 version.
8871
8872 * w32font.c (w32_to_fc_weight): New function.
8873 (w32font_full_name, logfont_to_fcname): Use it.
8874
88752008-06-16 Kenichi Handa <handa@m17n.org>
8876
8877 * font.c (font_check_object): Delete it.
8878 (font_clear_cache): Check if a font-object is alive.
8879 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8880 font-object to nil.
8881 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8882 (font_at): Don't call font_check_object.
8883 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8884
88852008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8886
8887 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8888
88892008-06-16 Chong Yidong <cyd@stupidchicken.com>
8890
8891 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8892
88932008-06-15 Chong Yidong <cyd@stupidchicken.com>
8894
8895 * font.c (font_parse_fcname): Only one decimal point.
8896 (font_unparse_fcname): Handle data in family and foundry indices
8897 as symbols, not strings.
8898 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8899
8900 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8901
8902 * font.h (font_unparse_gtkname): Add prototype.
8903
89042008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8905
8906 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8907
89082008-06-15 Andreas Schwab <schwab@suse.de>
8909
8910 * font.c (font_update_drivers): Fix crash when no drivers match.
8911
89122008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8913
8914 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8915 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8916
89172008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8918
8919 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8920
89212008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8922
8923 * process.c (Fserial_process_configure, Fprocess_send_eof):
8924 Use EQ to compare Lisp_Objects.
8925
89262008-06-13 Jason Rumney <jasonr@gnu.org>
8927
8928 * w32fns.c (Fw32_select_font): Remove old font API function.
8929
8930 * w32font.c (logfont_to_fcname): New function.
8931 (Fx_select_font): New font dialog function compatible with
8932 GTK/fontconfig version.
8933
8934 * font.c (font_style_symbolic_from_value): New function.
8935 (font_style_symbolic): Use it.
8936
8937 * font.h (font_style_symbolic_from_value): Declare new function.
8938
89392008-06-13 Juanma Barranquero <lekktu@gmail.com>
8940
8941 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
8942 <font-width-table>: Fix typos in docstrings.
8943
89442008-06-13 Daniel Engeler <engeler@gmail.com>
8945
8946 These changes add serial port access.
8947 * process.c: Add HAVE_SERIAL.
8948 (Fdelete_process, Fprocess_status, Fset_process_buffer)
8949 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
8950 (list_processes_1, select_wrapper, Fstop_process)
8951 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
8952 (status_notify): Modify to handle serial processes.
8953 [HAVE_SERIAL] (Fserial_process_configure)
8954 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
8955 New functions.
8956 * process.h (struct Lisp_Process): Add `type'.
8957 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
8958 New functions.
8959 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
8960 serial ports.
b71ac3dd 8961 (serial_open, serial_configure): New functions.
aac0c6e3
MR
8962 * w32.h: Add FILE_SERIAL.
8963 (struct _child_process): Add ovl_read, ovl_write.
8964
89652008-06-13 Kenichi Handa <handa@m17n.org>
8966
8967 * dispextern.h (enum lface_attribute_index): New member
8968 LFACE_FOUNDRY_INDEX.
8969
8970 * font.c (font_score): Delete arg alternate_families. Check only
8971 weight, slant, width, and size. Ignore the difference of alias
8972 style symbols.
8973 (font_sort_entites): Adjust for the above change. Reflect the
8974 order of font-driver to scores.
8975 (font_list_entities): Don't check alternate_familes here.
8976 (font_clear_prop): Handle foundry.
8977 (font_update_lface): Don't parse "foundry-family" form here.
8978 Handle FONT_FOUNDRY_INDEX.
8979 (font_find_for_lface): Likewise. Handle alternate families here.
8980 If registry is nil, try iso8859-1 and ascii-0.
8981 (font_open_for_lface): Pay attention to size in ENTITY.
8982 (font_open_by_name): Simplify by calling font_load_for_lface.
8983 (free_font_driver_list): Delete it.
8984 (font_update_drivers): Preserve the order of backends.
8985 (syms_of_font): Setting of sort_shift_bits adjusted for the change
8986 of font_score and font_sort_entites.
8987 (font_update_sort_order): Likewise.
8988
8989 * xfaces.c (LFACE_FOUNDRY): New macro.
8990 (check_lface_attrs): Check foundry.
8991 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
8992 (merge_face_vectors): Check foundry.
8993 (merge_face_ref): Likewise.
8994 (Finternal_set_lisp_face_attribute): Likewise.
8995 (x_update_menu_appearance): Likewise.
8996 (Finternal_get_lisp_face_attribute): Likewise.
8997 (lface_hash): Likewise.
8998 (lface_same_font_attributes_p): Likewise.
8999 (x_supports_face_attributes_p): Likewise.
9000 (tty_supports_face_attributes_p): Likewise.
9001 (Finternal_set_alternative_font_family_alist): Intern strings.
9002 (Finternal_set_alternative_font_registry_alist): Downcase strings.
9003 (realize_default_face): Set LFACE_FOUNDRY (lface).
9004
9005 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
9006 font-driver at first.
9007
9008 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
9009
90102008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9011
9012 * lread.c (Fload): Use xfree, not free on saved_doc_string.
9013
90142008-06-12 Jim Meyering <meyering@redhat.com>
9015
9016 Make unexec_free handle NULL the same way free does.
9017 * unexmacosx.c (unexec_free): Ignore a NULL argument.
9018
90192008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
9020
9021 * character.h (CHAR_TO_BYTE_SAFE): New macro.
9022 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
9023 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
9024 (WEAK_ALIAS): Simplify.
9025 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
9026 when searching a unibyte buffer.
9027
90282008-06-12 Chong Yidong <cyd@stupidchicken.com>
9029
9030 * xfns.c (Fx_select_font): Rename from x-font-dialog.
9031
90322008-06-12 Juanma Barranquero <lekktu@gmail.com>
9033
9034 * w32font.c: Include ctype.h.
9035
90362008-06-11 Jason Rumney <jasonr@gnu.org>
9037
9038 * w32font.c (w32font_encode_char): Detect missing glyphs that are
9039 misreported as space.
9040 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
9041 as aliases for registry iso10646-1.
9042
90432008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
9044
9045 * buffer.c (clone_per_buffer_values): Skip `name'.
9046
90472008-06-11 Chong Yidong <cyd@stupidchicken.com>
9048
9049 * font.c (font_parse_fcname): Fix last change; accept decimal
9050 points in font size.
9051
90522008-06-10 Jason Rumney <jasonr@gnu.org>
9053
9054 * w32uniscribe.c (add_opentype_font_name_to_list):
9055 Skip non unicode fonts.
9056
90572008-06-10 Chong Yidong <cyd@stupidchicken.com>
9058
9059 * xfns.c (Fx_font_dialog): New function.
9060
9061 * gtkutil.c (xg_dialog_response_cb): Rename from
9062 xg_file_response_callback.
9063 (pop_down_dialog): Rename from pop_down_file_dialog.
9064 (xg_get_file_name): Callers changed.
9065 (xg_get_font_name): New function.
9066
9067 * gtkutil.h (xg_get_font_name): Insert prototype.
9068
90692008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9070
9071 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
9072 x_underline_minimum_display_offset.
9073 (syms_of_xdisp): Declare it here rather than in xterm.c.
9074 * dispextern.h (underline_minimum_offset): Declare it.
9075 * w32term.c (x_draw_glyph_string): Use it.
9076 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
9077 (syms_of_xterm): Don't declare it any more.
9078 (x_draw_glyph_string): Adjust to the new name.
9079
90802008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
9081
9082 * xterm.c (x_underline_minimum_display_offset): New var.
9083 (x_draw_glyph_string): Use it.
9084 (syms_of_xterm): Declare it.
9085
90862008-06-10 Chong Yidong <cyd@stupidchicken.com>
9087
9088 * font.c (font_parse_fcname): Accept GTK-style font names too.
9089
90902008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9091
9092 * dired.c (file_name_completion): Don't return t if the match is exact
9093 but with different capitalization.
9094 * minibuf.c (Ftry_completion): Simplify.
9095
9096 * window.c (Vwindow_point_insertion_type): New var.
9097 (set_window_buffer): Use it.
9098 (syms_of_window): Init and export it to Lisp.
9099
91002008-06-10 Kenichi Handa <handa@m17n.org>
9101
9102 * font.h (font_intern_prop): Prototype adjusted.
9103
9104 * font.c (font_intern_prop): New arg force_symbol.
9105 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
9106 Adjust for the change of font_intern_prop.
9107
9108 * ftfont.c (ftfont_pattern_entity):
9109 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
9110 (w32_registry):
9111 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
9112 the change of font_intern_prop.
9113
91142008-06-09 Juanma Barranquero <lekktu@gmail.com>
9115
9116 * w32menu.c (digest_single_submenu): Declare extern.
9117
91182008-06-09 Jason Rumney <jasonr@gnu.org>
9119
9120 * w32term.c (x_make_frame_visible): Use alternate restore flags.
9121
9122 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
9123 (parse_single_submenu): Remove.
9124 (digest_single_submenu): Remove.
9125 (syms_of_w32menu): Don't initialise variables that have moved
9126 to menu.c.
9127 (set_frame_menubar): Sync with version in xmenu.c.
9128 (w32_menu_show): Sync with xmenu_show in xmenu.c.
9129
9130 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
9131 Make static again.
9132
91332008-06-09 Jason Rumney <jasonr@gnu.org>
9134
9135 Changes to w32 files related to the move of common menu code
9136 to menu.c on 2008-06-08 by Chong Yidong.
9137
9138 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
9139 defs to w32gui.h.
9140 (single_keymap_panes, push_menu_item, push_menu_pane):
9141 Make globally visible.
9142
9143 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
9144 (local_free, malloc_widget_value, free_widget_value)
9145 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
9146 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
9147 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
9148 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
9149 (menu_items, menu_items_allocated, menu_items_used)
9150 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
9151 (init_menu_items, finish_menu_items, discard_menu_items)
9152 (grow_menu_items, push_submenu_start, push_submenu_end)
9153 (push_left_right_boundary, push_menu_pane, push_menu_item)
9154 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
9155 (free_menubar_widget_tree_value, parse_single_submenu)
9156 (update_submenu_strings): Remove functions.
9157 (xmalloc_widget_value): Remove and declare extern.
9158
9159 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
9160 (OBJ1): Build it.
9161
9162 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
9163 (local_heap, local_alloc, local_free, malloc_widget_value)
9164 (free_widget_value): Define here.
9165
91662008-06-09 Kenichi Handa <handa@m17n.org>
9167
9168 * font.h (Qascii_0): Extern it.
9169
9170 * font.c (Qascii_0): New variable.
9171 (syms_of_font): DEFSYM it.
9172 (font_open_by_name): If the registry "iso8859-1" fails, try also
9173 "ascii-0".
9174
9175 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
9176
91772008-06-08 Kenichi Handa <handa@m17n.org>
9178
9179 * .gdbinit (xfont): New command.
9180
91812008-06-08 Andreas Schwab <schwab@suse.de>
9182
9183 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
9184 * Makefile.in (menu.o): Update dependencies.
9185
9186 * Makefile.in (obj): Always add menu.o.
9187 * emacs.c (main): Always call syms_of_menu.
9188 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
9189
91902008-06-08 Chong Yidong <cyd@stupidchicken.com>
9191
9192 * Makefile.in: Compile menu.c.
9193
9194 * lisp.h: Declare syms_of_menu.
9195
9196 * emacs.c (main): Call syms_of_menu.
9197
9198 * keyboard.h: Relocate platform-independent menu definitions from
9199 xmenu.c.
9200
9201 * menu.c: New file. Relocate platform-independent menu
9202 definitions from xmenu.c. Suggested by Adrian Robert.
9203
9204 * xmenu.c: Remove platform-independent menu definitions.
9205 (menu_items menu_items_inuse, menu_items_allocated)
9206 (menu_items_used, menu_items_n_panes)
9207 (menu_items_submenu_depth): Move to keyboard.h.
9208 (init_menu_items, finish_menu_items, unuse_menu_items)
9209 (discard_menu_items, restore_menu_items, save_menu_items)
9210 (grow_menu_items, push_submenu_start, push_submenu_end)
9211 (push_left_right_boundary, push_menu_pane, push_menu_item)
9212 (keymap_panes, single_keymap_panes, single_menu_item)
9213 (list_of_panes, list_of_items, find_and_call_menu_selection)
9214 (xmalloc_widget_value, free_menubar_widget_value_tree)
9215 (parse_single_submenu, digest_single_submenu)
9216 (update_submenu_strings): Move to menu.c.
9217
92182008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
9219
9220 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
9221
92222008-06-06 Miles Bader <miles@gnu.org>
9223
9224 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
9225 face, not frame default.
9226
92272008-06-05 Martin Rudalics <rudalics@gmx.at>
9228
9229 * window.c (pop_up_windows, pop_up_frames)
9230 (display_buffer_reuse_frames, Vpop_up_frame_function)
9231 (Vdisplay_buffer_function, Veven_window_heights)
9232 (Vspecial_display_buffer_names, Vspecial_display_regexps)
9233 (Vspecial_display_function, Vsame_window_buffer_names)
9234 (Vsame_window_regexps, split_height_threshold)
9235 (Vsplit_window_preferred_function): Move those vars to window.el.
9236 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
9237 (Fdisplay_buffer): Move those functions to window.el.
9238 (syms_of_window): Remove corresponding declarations.
9239 (display_buffer): New function.
9240 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
9241 * dispnew.c (Flast_nonminibuf_frame): New function.
9242 * buffer.c (Fpop_to_buffer): Move to window.el.
9243
92442008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9245
9246 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
9247
92482008-06-05 Kenichi Handa <handa@m17n.org>
9249
9250 * coding.c (detect_coding): Fix previous change.
9251 (detect_coding_system): Likewise.
9252
92532008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9254
9255 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
9256
9257 * keymap.c (Vminibuffer_local_filename_must_match_map):
9258 Rename from Vminibuffer_local_must_match_filename_map.
9259 (syms_of_keymap):
9260 * minibuf.c (Fcompleting_read): Adjust accordingly.
9261 * commands.h: Rename declaration as well.
9262
92632008-06-05 Kenichi Handa <handa@m17n.org>
9264
9265 * font.c (Ffont_spec): Don't use font_parse_family_registry for
9266 family name.
9267 (Ffont_put): Likewise.
9268
9269 * fontset.c (fontset_find_font): Call font_open_for_lface with the
9270 current font-spec.
9271
9272 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
9273 is unspecified.
9274
9275 * xfaces.c (realize_x_face): If the font-related face attributes
9276 are the same as those of default face, realize a new fontset from
9277 default->fontset.
9278 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
9279
92802008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9281
9282 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
9283 (move_it_in_display_line): New wrapper.
9284
9285 * window.c (window_scroll_pixel_based_preserve_x)
9286 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
9287 (window_scroll_pixel_based, window_scroll_line_based):
9288 Use them to preserve column positions.
9289 (syms_of_window): Initialize them.
9290
9291 * indent.c (Fvertical_motion): Extend first arg to allow passing an
9292 (HPOS . VPOS) pair.
9293
9294 * dispextern.h (move_it_in_display_line): Declare.
9295
92962008-06-05 Juanma Barranquero <lekktu@gmail.com>
9297
9298 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
9299 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
9300 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
9301
93022008-06-04 Juanma Barranquero <lekktu@gmail.com>
9303
9304 * window.c (Fset_window_parameter): Doc fix.
9305 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
9306
93072008-06-04 Joakim Verona <joakim@verona.se>
9308
9309 * window.h (struct window): Add new member window_parameters.
9310
9311 * window.c (Fwindow_parameters, Fwindow_parameter)
9312 (Fset_window_parameter): New defuns.
9313 (syms_of_window): Defsubr the new defuns.
9314 (make_window): Initialize window_parameters to nil.
9315
93162008-06-04 John Paul Wallington <jpw@pobox.com>
9317
9318 * eval.c (Fdefmacro): Doc fix.
9319
93202008-06-04 Kenichi Handa <handa@m17n.org>
9321
9322 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9323 Be sure to call setup_coding_system when we find a proper coding system.
9324 (detect_coding_system): Fix handling of coding->head_ascii.
9325
93262008-06-03 Andreas Schwab <schwab@suse.de>
9327
9328 * font.c (font_prop_validate_spacing): Fix last change.
9329
93302008-06-03 Kenichi Handa <handa@m17n.org>
9331
9332 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9333 (font_parse_fcname): Fix handling of unknown key.
9334
9335 * xfont.c (xfont_list): Try an alias.
9336
9337 * charset.c (char_charset): Return NULL if the arg charset_list is
9338 specified and C doesn't belong to any of them.
9339
93402008-06-02 Chip Coldwell <coldwell@redhat.com>
9341
9342 * font.c (font_pixel_size): Don't take cdr of an integer.
9343
93442008-06-02 Jim Meyering <meyering@redhat.com>
9345
9346 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9347 * alloc.c (xfree): Return right away for a NULL arg.
9348 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9349 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9350 * mac.c (create_apple_event_from_event_ref): Likewise.
9351 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9352 Likewise.
9353 * doprnt.c (doprnt1): Likewise.
9354 * frame.c (frame): Likewise.
9355 * keyboard.c (wipe_kboard): Likewise.
9356 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9357 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9358 * term.c (tty_default_color_capabilities, maybe_fatal)
9359 (delete_tty): Likewise.
9360 * w16select.c (string): Likewise.
9361 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9362 * w32bdf.c (w32_free_bdf_font): Likewise.
9363 * w32fns.c (w32_unload_font): Likewise.
9364 * w32font.c (w32font_close): Likewise.
9365 * window.c (size_window): Likewise.
9366 * xselect.c (receive_incremental_selection): Likewise.
9367 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9368 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9369 * w32.c (stat): Likewise.
9370
9371 Remove useless if-before-free tests.
9372 * editfns.c (Fset_time_zone_rule): Likewise.
9373 * lread.c (nosuffix): Likewise.
9374 * ralloc.c (get_bloc): Likewise.
9375 * regex.c (reg_free): Likewise.
9376 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9377 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9378 * xsmfns.c (smc_save_yourself_CB): Likewise.
9379
93802008-06-02 Kenichi Handa <handa@m17n.org>
9381
9382 * font.c (font_find_for_lface): Handle float font size.
9383 (font_open_for_lface): Likewise.
9384
9385 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9386 comparing the properties.
9387
93882008-06-01 Jason Rumney <jasonr@gnu.org>
9389
9390 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9391 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9392 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9393 Don't add empty script list.
9394 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9395
93962008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9397
9398 * Makefile.in (dot, dotdot): Remove, update users.
9399 ".." has been used elsewhere in the file for a long time.
9400 (LIBXT_STATIC): Remove conditional based on unused variable.
9401
94022008-06-01 Miles Bader <miles@gnu.org>
9403
9404 * xfaces.c (Vface_remapping_alist): New variable.
9405 (syms_of_xfaces): Initialize it.
9406 (enum named_merge_point_kind): New type.
9407 (struct named_merge_point): Add `named_merge_point_kind' field.
9408 (push_named_merge_point): Make cycle detection respect different
9409 named-merge-point kinds.
9410 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9411 Remove face-name alias resolution.
9412 (lface_from_face_name): New definition using
9413 `lface_from_face_name_no_resolve'.
9414 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9415 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9416 (get_lface_attributes): New definition that layers face-remapping on
9417 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9418 (lookup_basic_face): New function.
9419 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9420 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9421 `get_lface_attributes'.
9422 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9423 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9424 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9425
9426 * xdisp.c (init_iterator): Pass base_face_id through
9427 `lookup_basic_face' when we actually use it as a face-id.
9428 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9429 DEFAULT_FACE_ID.
9430
9431 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9432 lookup the initial face-id.
9433
9434 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9435
94362008-06-01 Juanma Barranquero <lekktu@gmail.com>
9437
9438 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9439 (Fremove_text_properties): Fix typos in docstrings.
9440
94412008-05-31 Kenichi Handa <handa@m17n.org>
9442
9443 * font.c (font_list_entities): Fix the car part of data to be
9444 stored in the cache.
9445
9446 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9447
94482008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9449
9450 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9451 Add a `test' argument so another predicate than `equal' can be used.
9452 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9453 (map_char_table): Remove unused vars `c' and `i'.
9454 * lisp.h (Foptimize_char_table): Adjust declaration.
9455 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9456
94572008-05-30 Kenichi Handa <handa@m17n.org>
9458
9459 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9460 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9461 defined.
9462
94632008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9464
9465 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9466 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9467 frame-local settings for the same variable.
9468
94692008-05-30 Kenichi Handa <handa@m17n.org>
9470
9471 * fontset.c (Ffont_info): Move to font.c.
9472 (syms_of_fontset): Delete defsubr of Sfont_info.
9473
9474 * font.c (font_style_to_value, font_score): Delete casting of the
9475 args to xstcasecmp.
9476 (register_font_driver): Increment num_font_drivers only when
9477 registering the driver globally.
9478 (Ffont_info): Move from fontset.c. Handle a font object too.
9479 (syms_of_font): Defsubr Sfont_info.
9480
94812008-05-29 Kenichi Handa <handa@m17n.org>
9482
9483 * coding.h (enum define_coding_utf8_arg_index): New enum.
9484 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9485 coding_attr_utf_bom.
9486 (enum utf_bom_type): Rename from utf_16_bom_type.
9487 (struct utf_16_spec): Adjust for the above change.
9488 (struct coding_system): Add utf_8_bom in `spec' union.
9489
9490 * coding.c (CODING_UTF_8_BOM): New macro.
9491 (enum coding_category): Delete coding_category_utf_8, add
9492 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9493 coding_category_utf_8_sig.
9494 (CATEGORY_MASK_UTF_8): Delete it.
9495 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9496 (CATEGORY_MASK_UTF_8_SIG): New macros.
9497 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9498 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9499 CATEGORY_MASK_UTF_8_SIG.
9500 (CATEGORY_MASK_UTF_8): New macro.
9501 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9502 (detect_coding_utf_8): Check BOM.
9503 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9504 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9505 (encode_coding_utf_16): Likewise.
9506 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9507 (detect_coding, detect_coding_system): Handle utf-8-auto.
9508 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9509 (syms_of_coding): Fix setting up of Vcoding_category_table.
9510
95112008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9512
9513 * process.c (Faccept_process_output): If `millisec' is non-nil,
9514 `seconds' default to 0.
9515 (wait_reading_process_output): Also return non-nil if we read output
9516 from a non-running process.
9517
95182008-05-29 Jason Rumney <jasonr@gnu.org>
9519
9520 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9521 `raster' specified.
9522 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9523 in the uniscribe backend, but disallow any font that has no
9524 unicode subrange support.
9525
95262008-05-29 Juanma Barranquero <lekktu@gmail.com>
9527
9528 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9529 Fix typos in docstrings.
9530
95312008-05-29 Kenichi Handa <handa@m17n.org>
9532
9533 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9534 (Fx_family_fonts): Set frame correctly.
9535
95362008-05-28 Jason Rumney <jasonr@gnu.org>
9537
9538 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9539
95402008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9541
9542 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9543 calling build_annotations.
9544
95452008-05-28 Juanma Barranquero <lekktu@gmail.com>
9546
9547 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9548 (Fencode_coding_string):
9549 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9550 <latin-extra-code-table>: Fix typos in docstrings.
9551 (syms_of_coding) <coding-system-alist>: Doc fix.
9552 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9553
95542008-05-28 Kenichi Handa <handa@m17n.org>
9555
9556 * fontset.c (Ffont_info): Don't call font_close_object.
9557
9558 * font.c (font_parse_family_registry): Use Ffont_put to validate
9559 foundry and family.
9560 (font_delete_unmatched): Don't check spacing.
9561 (font_list_entities): Add spacing to the spec to list fonts.
9562
9563 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9564 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9565
9566 * coding.c (encode_coding_raw_text): Fix previous change.
9567 (encode_coding_object): When the dst_object is a buffer and is
9568 different from src_object, move gap to PT.
9569
95702008-05-27 Chong Yidong <cyd@stupidchicken.com>
9571
9572 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9573
95742008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9575
9576 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9577 all branches. Compute it differently.
9578
9579 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9580
95812008-05-27 Juanma Barranquero <lekktu@gmail.com>
9582
9583 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9584 into "else if () ... else ...".
9585
95862008-05-27 Jason Rumney <jasonr@gnu.org>
9587
9588 * w32font.c (w32font_open_internal): Determine if glyph indices
9589 are likely to work here.
9590
95912008-05-27 Chong Yidong <cyd@stupidchicken.com>
9592
9593 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9594 draw overlap glyphs with appropriate highlighting.
9595
95962008-05-27 Kenichi Handa <handa@m17n.org>
9597
9598 * xfont.c (xfont_open): Fix calculation of font->average_width.
9599
96002008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9601
9602 * casefiddle.c (casify_object): Try to guess better whether the
9603 argument is a byte or a char.
9604
96052008-05-26 Andreas Schwab <schwab@suse.de>
9606
9607 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9608 Always send multiples of format size.
9609
9610 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9611
96122008-05-26 Jason Rumney <jasonr@gnu.org>
9613
9614 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9615 (compute_metrics): Don't set failure if we just cleared the cache.
9616 (w32_weight_table): Remove unused variable.
9617 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9618 backwards compatibility.
9619
96202008-05-25 Kenichi Handa <handa@m17n.org>
9621
9622 * w32term.c (x_draw_glyph_string):
9623 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9624
9625 * xfaces.c: Delete unused function prototypes.
9626 (xstrlwr, font_frame): Delete them.
9627 (clear_face_cache): Delete unused variable.
9628
9629 * xftfont.c (xftfont_open): Delete unused variable.
9630 If underline_thickness is not 1, adjust underline_position.
9631
9632 * ftxfont.c (ftxfont_open): Delete unused variable.
9633
9634 * fontset.c (face_for_char): Optimize for the case of no charset
9635 property.
9636
9637 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9638 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9639 (otf_open, font_otf_capability, generate_otf_features)
9640 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9641 Comment out by surrounding "#if 0" and "#endif" for the moment.
9642 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9643 (syms_of_font): Codes for accessing above commented out.
9644
96452008-05-24 Eli Zaretskii <eliz@gnu.org>
9646
9647 * w32proc.c: Include dispextern.h.
9648
9649 * w32.c: Include dispextern.h.
9650
96512008-05-23 Juanma Barranquero <lekktu@gmail.com>
9652
9653 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9654 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9655 Fix typos in docstrings.
9656
96572008-05-23 Jason Rumney <jasonr@gnu.org>
9658
9659 * xsmfns.c: Remove includes that are already included by config.h.
9660
96612008-05-23 Kenichi Handa <handa@m17n.org>
9662
9663 * charset.c (Qemacs, charset_emacs): New variables.
9664 (char_charset): Fix for non-Unicode characters.
9665 (syms_of_charset): Define charset_emacs.
9666
9667 * w32term.c (x_draw_glyph_string): Be sure to update
9668 s->underline_thickness and s->underline_position. Be sure to draw
9669 underline within the current line area.
9670
9671 * xterm.c (x_draw_glyph_string): Be sure to update
9672 s->underline_thickness and s->underline_position. Be sure to draw
9673 underline within the current line area.
9674
9675 * fontset.c: Delete unused variables and add casting for char *
9676 throughout the file.
9677 (fontset_font): Try the fallback fonts of the current fontset
9678 before consulting the default fontset.
9679
9680 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9681
9682 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9683
96842008-05-22 Jason Rumney <jasonr@gnu.org>
9685
9686 * font.c: Don't include strings.h.
9687
9688 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9689
9690 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9691 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9692 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9693 to call xstrcasecmp.
9694
9695 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9696
9697 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9698
9699 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9700
9701 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9702
97032008-05-22 Kenichi Handa <handa@m17n.org>
9704
9705 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9706
9707 * font.c (font_prop_validate_style): Adjust for the format
9708 change of font_style_table.
9709
9710 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9711 two args.
9712
9713 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9714 two args.
9715
97162008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9717
9718 * minibuf.c (keys_of_minibuf): Delete.
9719 * lisp.h (keys_of_minibuf): Delete.
9720 * emacs.c (main): Don't call keys_of_minibuf.
9721
97222008-05-22 Kenichi Handa <handa@m17n.org>
9723
9724 * ftfont.c (ftfont_resolve_generic_family): Rename from
9725 ftfont_list_generic_family. Return a single family for each
9726 generic family.
9727 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9728 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9729 Call font_add_log.
9730 (ftfont_match): Call font_add_log.
9731
9732 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9733 (FONT_DEBUG): Define it.
9734 (font_add_log): Extern it.
9735 (font_assert): Rename from xassert.
9736
9737 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9738 (xfont_list_family): Call font_add_log.
9739 (xfont_match): Likewise.
9740 (memq_no_quit): Delete.
9741
9742 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9743 call of Ffont_xlfd_name.
9744
9745 * xfaces.c (struct table_entry, slant_table, weight_table)
9746 (swidth_table): Move to font.c.
9747
9748 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9749 xassert are changed to font_assert. Delete many unused variables.
9750 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9751 New variables.
9752 (struct table_entry): Move from xfaces.c and modified.
9753 (weight_table, slant_table, width_table): Move from xfaces.c and
9754 contents adjusted for the change of struct table_entry.
9755 (font_style_to_value, font_style_symbolic): Adjust for the
9756 format change of font_style_table.
9757 (font_parse_family_registry): Don't overwrite existing foundry and
9758 family of font_spec.
9759 (font_score): Fix calculation of diff for sizes.
9760 (font_sort_entites): Call font_add_log.
9761 (font_delete_unmatched): Return a newly created list.
9762 (font_list_entities): Fix previous change. Call font_add_log.
9763 (font_matching_entity, font_open_entity, font_close_entity):
9764 Call font_add_log.
9765 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9766 (Finternal_set_font_style_table): Delete.
9767 (BUILD_STYLE_TABLE): New macro.
9768 (build_style_table): New function.
9769 (Vfont_log, font_log_env_checked): New variables.
9770 (font_add_log): New function.
9771 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9772 Declare Lisp variables "font-weight-table", "font-slant-table",
9773 "font-width-table", and "font-log". Initialize font_style_table.
9774
97752008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9776
9777 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9778
97792008-05-21 Seiji Zenitani <zenitani@mac.com>
9780 Ryo Yoshitake <ryo@shiftmode.net>
9781
9782 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9783 (Vframe_alpha_lower_limit): New variable.
9784 (x_set_alpha): New function.
9785
9786 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9787
9788 * xfns.c (x-create-frame, Qalpha):
9789 Initialize the frame parameter `alpha'.
9790 * xterm.c (OPAQUE, OPACITY): New.
9791 (x_set_frame_alpha): New function.
9792 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9793
9794 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9795 * w32fns.c (w32_frame_parm_handlers): Likewise.
9796
97972008-05-20 Jason Rumney <jasonr@gnu.org>
9798
9799 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9800 truetype fonts to opentype list.
9801
98022008-05-20 Juanma Barranquero <lekktu@gmail.com>
9803
9804 * fontset.c (Ffontset_info): Doc fix.
9805 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9806 <ignore-relative-composition>: Fix typos in docstrings.
9807
9808 * font.c (syms-of-font) <font-encoding-alist>:
9809 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9810 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9811 (Ffont_otf_alternates): Doc fixes.
9812
98132008-05-20 Kenichi Handa <handa@m17n.org>
9814
9815 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9816 font.h through out the file.
9817 (FONT_DRIVERS): Rename from FONTOBJ.
9818 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9819 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9820
9821 * emacs.c (main): Call syms_of_font unconditionally.
9822
9823 * font.h (find_font_encoding): Extern it.
9824
9825 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9826 fontset.c.
9827 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9828 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9829 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9830 only when HAVE_WINDOW_SYSTEM is defined.
9831 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9832 when HAVE_WINDOW_SYSTEM is defined.
9833
9834 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9835 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9836
9837 * xfaces.c: Include font.h unconditionally.
9838 (merge_face_ref, merge_face_vectors)
9839 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9840
98412008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9842
9843 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9844 indirect_variable.
9845 * eval.c (lisp_indirect_variable): New fun.
9846 (Fuser_variable_p): Use it.
9847
98482008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9849
9850 * lisp.h (indirect_variable):
9851 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9852 Use Lisp_Symbol pointers rather than Lisp_Object.
9853 Adjust callers.
9854 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9855 To this end, change calling-convention.
9856
9857 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9858 if some non-hidden buffers are selected by string&pred.
9859
98602008-05-19 Chong Yidong <cyd@stupidchicken.com>
9861
9862 * process.c (wait_reading_process_output): Always check status
9863 when in batch mode.
9864
98652008-05-19 Kenichi Handa <handa@m17n.org>
9866
9867 * font.c (font_list_entities): Fix handling of cache.
9868 (font_matching_entity): Likewise.
9869
9870 * ftfont.c (cs_iso8859_1): Delete.
9871 (ft_face_cache): New variable.
9872 (struct ftfont_info): New member fc_charset_idx.
9873 (ftfont_build_basic_charsets): Delete.
9874 (fc_charset_table): New variable.
9875 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9876 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9877 Callers changed.
9878 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9879 (ftfont_spec_pattern): New argument fc_charset_idx.
9880 Check registry more rigidly. Change callers.
9881 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9882 change of :font-entity property of the font.
9883
9884 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9885 property of the font.
9886
98872008-05-18 Juanma Barranquero <lekktu@gmail.com>
9888
9889 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9890 (Funencodable_char_position, Fcheck_coding_systems_region)
9891 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9892 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9893 (Ffind_operation_coding_system, Fset_coding_system_priority)
9894 (Fcoding_system_eol_type): Doc fixes.
9895
98962008-05-17 Glenn Morris <rgm@gnu.org>
9897
9898 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9899
99002008-05-16 Eli Zaretskii <eliz@gnu.org>
9901
9902 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9903 and st_gid.
9904
9905 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9906 HAVE_WINDOW_SYSTEM is not defined.
9907
9908 * xfaces.c (merge_face_ref, merge_face_vectors)
9909 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9910 HAVE_WINDOW_SYSTEM is defined.
9911 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9912
99132008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9914
9915 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9916
99172008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9918
9919 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9920
99212008-05-15 Kenichi Handa <handa@m17n.org>
9922
9923 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
9924 preference.
9925
99262008-05-15 Glenn Morris <rgm@gnu.org>
9927
9928 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
9929
99302008-05-15 Chong Yidong <cyd@stupidchicken.com>
9931
9932 * fns.c (init_fns): Don't initialize weak_hash_tables here.
9933 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
9934
9935 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
9936
99372008-05-15 Kenichi Handa <handa@m17n.org>
9938
9939 * ftfont.c (ftfont_list): Downcase family name to check generic
9940 families.
9941
9942 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
9943 font-spec for QCfont value.
9944
9945 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
9946 buffer. Check the return value of it.
9947
99482008-05-14 Jason Rumney <jasonr@gnu.org>
9949
9950 * w32term.c (w32_get_glyph_overhangs): Remove.
9951 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
9952
99532008-05-14 Kenichi Handa <handa@m17n.org>
9954
9955 * font.c (font_prop_validate): Make nil a valid value.
9956 (font_clear_cache): Check if the cached vector of entities is nil
9957 or not.
9958
99592008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9960
9961 * emacs.c (main_thread): Conditionalize on
9962 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9963 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
9964
9965 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
9966 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
9967 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9968
99692008-05-14 Kenichi Handa <handa@m17n.org>
9970
9971 * coding.c (detect_coding_iso_2022): Ignore a coding category that
9972 has no corresponding coding system.
9973
99742008-05-14 Jason Rumney <jasonr@gnu.org>
9975
9976 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
9977
9978 * w32font.h (w32font_open_internal): Update declaration.
9979
9980 * w32font.c (w32font_open_internal): Change last argument from
9981 w32font_info struct to font object. Fill in font object from
9982 font_entity. Get Outline metrics if possible. Use them to
9983 calculate underline position and thickness. Use xlfd name as name
9984 property. Don't set codepage.
9985 (w32font_open): Pass font_object to w32font_open_internal. Don't
9986 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
9987 (w32font_draw): Use s->font.
9988 (clear_cached_metrics): Don't clear non-existent blocks.
9989
9990 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
9991 font was not found.
9992 (x_draw_glyph_string): Use underline position and thickness from font.
9993
9994 * w32uniscribe.c (uniscribe_open): Pass font_object to
9995 w32font_open_internal.
9996
99972008-05-14 Kenichi Handa <handa@m17n.org>
9998
9999 These changes are to delete all legacy font-handling codes, and
10000 make Emacs use only font-backends.
10001
10002 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
10003 (frame.o, image.o, print.o): Depend on $(FONTSRC).
10004
10005 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
10006
10007 * charset.h (Vcharset_non_preferred_head)
10008 (Vcurrent_iso639_language): Extern them.
10009
10010 * charset.c (Vcharset_non_preferred_head): New variable.
10011 (Vcurrent_iso639_language): New variable.
10012 (syms_of_charset): Declare it as a Lisp variable.
10013 (char_charset): Don't check non preferred charsets. As a last
10014 resort, return charset_unicode.
10015 (Fset_charset_priority): Update Vcharset_non_preferred_head.
10016
10017 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
10018 conditionals. Don't check enable_font_backend. Delete all codes
10019 used only when USE_FONT_BACKEND is not defined.
10020
10021 * dispextern.h (struct glyph_string): Change type of `font' to
10022 `struct font *'.
10023 (struct glyph_string): New member underline_position and
10024 underline_thickness.
10025 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
10026 (struct face): Change type of `font' to `struct font *'. Remove
10027 members `font_name', `font_info_id'.
10028 (per_char_metric, encode_char): Delete externs.
10029 (calc_pixel_width_or_height): Adjust the prototype.
10030
10031 * emacs.c (enable_font_backend): Delete extern.
10032 (main): Don't set enable_font_backend. Don't check the command
10033 line argument "-disable-font-backend".
10034
10035 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
10036 (enum font_property_index): New members FONT_DPI_INDEX,
10037 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
10038 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
10039 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
10040 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
10041 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
10042 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
10043 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
10044 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
10045 (struct font_spec, struct font_entity): New structs.
10046 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
10047 (struct font): Many members from old "struct font_info" moved to
10048 here. Members font and entity deleted.
10049 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
10050 the new font-related objects.
10051 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
10052 (CHECK_FONT_GET_OBJECT): Likewise.
10053 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
10054 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
10055 (struct font_driver): New members case_sensitive anc check. Type
10056 of the member list and open changed.
10057 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
10058 (font_symbolic_width, font_find_object, font_get_spec)
10059 (font_set_lface_from_name): Delete extern.
10060 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
10061
10062 * font.c: Include <strings.h>.
10063 (enable_font_backend): Delete it.
10064 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
10065 (CHECK_VALIDATE_FONT_SPEC): Delete it.
10066 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
10067 (null_string): Delete it.
10068 (null_vector): Make it static.
10069 (font_family_alist): Delete it.
10070 (Qnormal): Extern it.
10071 (QCextra, QClanguage): Delete it.
10072 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
10073 (font_make_spec, font_make_entity, font_make_object)
10074 (font_intern_prop): Renamed from intern_downcase. Don't downcase
10075 the string. Callers changed.
10076 (font_pixel_size): Adjusted for the format change of font-related
10077 objects.
10078 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
10079 (font_style_to_value, font_style_symbolic): New function.
10080 (build_font_family_alist): Delete it.
10081 (font_registry_charsets): Use Fassoc_string instead of
10082 assq_no_quit.
10083 (font_prop_validate_symbol): Don't return null_string.
10084 (font_prop_validate_style): Adjusted for the change of
10085 style-related values in a font vector.
10086 (font_property_table): Delete entries for QClanguage and
10087 QCantialias, add entries for QCavgwidth.
10088 (get_font_prop_index): Delete the 2nd argument FROM.
10089 (font_prop_validate): Arguments changed.
10090 (font_put_extra): Adjusted for the change of font-related objects.
10091 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
10092 (font_parse_fcname, font_unparse_fcname)
10093 (font_prepare_composition): Likewise.
10094 (font_parse_family_registry): Renamed from font_merge_old_spec.
10095 (otf_open): Delete the 1st arg entity.
10096 (font_otf_capability): Adjusted for the above change.
10097 (font_score): New arg alternate_families. Adjusted for the change
10098 of font-related objects.
10099 (font_sort_entites): New arg best_only.
10100 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
10101 Delete them.
10102 (font_match_p): Check alternate families.
10103 (font_find_object): Delete it.
10104 (font_check_object): New function.
10105 (font_clear_cache): Adjusted for the change of font-related objects.
10106 (font_delete_unmatched): New arg.
10107 (font_list_entities): Call font_driver->list with a spec that
10108 doesn't specify style-related properties.
10109 (font_matching_entity): Arguments changed. Caller changed.
10110 (font_open_entity): Adjusted for the change of font-related objects.
10111 (font_close_object, font_has_char, font_encode_char)
10112 (font_get_name, font_get_spec): Likewise.
10113 (font_spec_from_name, font_clear_prop, font_update_lface):
10114 New functions.
10115 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
10116 (font_prepare_for_face, font_done_for_face, font_open_by_name)
10117 (font_at): Adjusted for the change of font-related objects.
10118 (font_range): New function.
10119 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
10120 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
10121 (Fcopy_font_spec, Fmerge_font_spec): New function.
10122 (Ffont_family_list): Renamed from list-families.
10123 (Finternal_set_font_style_table): Arguments changed.
10124 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
10125 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
10126 change of font-related objects.
10127 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
10128
10129 * fontset.h (struct font_info): Delete it. Most members go to
10130 struct font.
10131 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
10132 (enum FONT_SPEC_INDEX): Delete it.
10133 (font_info, list_fonts_func, load_font_func, query_font_func)
10134 (set_frame_fontset_func, find_ccl_program_func)
10135 (get_font_repertory_func, new_fontset_from_font_name): Delete
10136 externs.
10137 (fontset_from_font_name): Extern it.
10138 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
10139 (FONT_INFO_FROM_FACE): Deleted.
10140 (face_for_font): Adjust prototype.
10141
10142 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
10143 conditionals. Don't check enable_font_backend. Delete all codes
10144 used only when USE_FONT_BACKEND is not defined.
10145 (get_font_info_func, list_font_func, load_font_func)
10146 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
10147 (get_font_repertory_func): Delete them.
10148 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
10149 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
10150 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
10151 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
10152 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
10153 (fontset_compare_rfontdef): New function.
10154 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
10155 rfont-defs by qsort. Adjusted for the change of font-group vector.
10156 (load_font_get_repertory): Deleted.
10157 (fontset_find_font): Use new macros to ref/set elements of
10158 font-def and rfont-def.
10159 (fontset_font): Fix the timing of remembering that no font for C.
10160 (free_face_fontset): Do nothing if the face has no fontset.
10161 (face_suitable_for_char_p): Use new macros to ref/set elements of
10162 rfont-def.
10163 (face_for_char): Likewise. Call face_for_char with font_object.
10164 (fs_load_font): Delete. Delete #pragma surrounding it.
10165 (fs_query_fontset): Use strcasecmp instead of strcmp.
10166 (generate_ascii_font_name): Adjusted for the format change of
10167 font-spec.
10168 (Fset_fontset_font): Likewise. Use new macros to set elements of
10169 font-def.
10170 (Fnew_fontset): Use font_unparse_xlfd to generate
10171 FONTSET_ASCII (fontset).
10172 (new_fontset_from_font_name): Deleted.
10173 (fontset_from_font): Renamed from new_fontset_from_font. Check if
10174 a fontset is already created for the font. FIx updating of
10175 Vfontset_alias_alist.
10176 (fontset_ascii_font): Deleted.
10177 (Ffont_info): Adjusted for the format change of font-spec.
10178 (Finternal_char_font): Likewise.
10179 (Ffontset_info): Likewise.
10180 (syms_of_fontset): Don't check load_font_func.
10181
10182 * fns.c (internal_equal): Handle PREV_FONT.
10183
10184 * frame.h: Delete USE_FONT_BACKEND conditional.
10185
10186 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
10187 conditionals. Don't check enable_font_backend. Delete all codes
10188 used only when USE_FONT_BACKEND is not defined.
10189 (x_set_font): Call x_new_font, not x_new_fontset2.
10190 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
10191 already set for the frame.
10192
10193 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
10194 a font-entity by font_make_entity. Use font_intern_prop instead
10195 of intern_downcase. Use FONT_SET_STYLE to set a style-related
10196 font property. If a font is scalable, set avgwidth property to 0.
10197 Set font-entity property by font_put_extra.
10198 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
10199 (ffont_driver): Adjusted for the change of struct font_driver.
10200 (ftfont_spec_pattern): New function.
10201 (ftfont_list): Return a list, not vector.
10202 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
10203 (ftfont_list_family): Don't downcase names.
10204 (ftfont_free_entity): Deleted.
10205 (ftfont_open): Return a font-object. Adjusted for the change of
10206 struct font. Get underline_thickness and underline_position from
10207 font property. Don't update dpyinfo->smallest_font_height and
10208 dpyinfo->smallest_char_width.
10209 (ftfont_close): Don't free `struct font'.
10210 (ftfont_has_char): Adjusted for the format change of font-entity.
10211 (ftfont_encode_char, ftfont_text_extents): Likewise.
10212
10213 * ftxfont.c (ftxfont_list): Return a list, not vector.
10214 (ftxfont_open): Return a font-object. Adjusted for the change of
10215 struct font. Get underline_thickness and underline_position from
10216 font property. Don't update dpyinfo->smallest_font_height and
10217 dpyinfo->smallest_char_width.
10218 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
10219 (ftxfont_draw): Adjusted for the change of struct font.
10220
10221 * image.c (image_ascent): Don't include "charset.h". Include
10222 "character.h" and "font.h".
10223
10224 * lisp.h (enum pvec_type): New member PREV_FONT.
10225 (Fassoc_string): EXFUN it.
10226
10227 * print.c: Include font.h.
10228 (print_object): Handle font-related objects.
10229
10230 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
10231 conditionals. Don't check enable_font_backend. Delete all codes
10232 used only when USE_FONT_BACKEND is not defined.
10233 (handle_auto_composed_prop): Do nothing if it->f is not on a
10234 window system. Check how many following characters can be
10235 displayed by the same font.
10236 (calc_pixel_width_or_height): Type of the 4th arg is changed to
10237 'struct font *'.
10238 (get_char_face_and_encoding): Assign the whole encoding task to
10239 the `encode-char' method of a font driver.
10240 (fill_composite_glyph_string): Adjusted for the change of `struct
10241 face' and `struct glyph_string'.
10242 (fill_glyph_string): Likewise.
10243 (get_per_char_metric): Arguments changed.
10244 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
10245 and `struct glyph_string'.
10246 (produce_stretch_glyph, calc_line_height_property)
10247 (x_produce_glyphs): Likewise.
10248
10249 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
10250 conditionals. Don't check enable_font_backend. Delete all codes
10251 used only when USE_FONT_BACKEND is not defined. Use
10252 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
10253 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
10254 (Qp): Extern them.
10255 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
10256 Deleted.
10257 (struct font_name): Deleted.
10258 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
10259 (compare_fonts_by_sort_order): New function.
10260 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
10261 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
10262 Deleted.
10263 (Fx_family_fonts): Use font_list_entities, and sort fonts by
10264 compare_fonts_by_sort_order.
10265 (Fx_font_family_list): Call Ffont_family_list.
10266 (face_numeric_value, face_numeric_weight, face_numeric_slant)
10267 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
10268 (face_symbolic_slant, face_symbolic_swidth)
10269 (split_font_name_into_vector, build_font_name_from_vector)
10270 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
10271 (font_rescale_ratio, split_font_name, build_font_name)
10272 (free_font_names, sort_fonts, x_face_list_fonts)
10273 (face_font_available_p, sorted_font_list, cmp_font_names)
10274 (font_list_1, concat_font_list, font_list, remove_duplicates):
10275 Deleted.
10276 (Fx_list_fonts): Use Ffont_list.
10277 (LFACE_AVGWIDTH): Deleted.
10278 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
10279 by FONTP.
10280 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
10281 (set_lface_from_font_name): Delete it.
10282 (set_lface_from_font): Renamed from
10283 set_lface_from_font_and_fontset. Caller changed. Don't set
10284 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
10285 for face.
10286 (merge_face_vectors): Copy font-spec if necessary.
10287 Clear properties of the font-spec if necessary.
10288 (merge_face_ref): Clear properties of the font-spec if necessary.
10289 (Finternal_set_lisp_face_attribute): Likewise.
10290 (set_font_frame_param): Use font_load_for_lface to load a
10291 font-object, and call Fmodify_frame_parameters with it.
10292 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
10293 font name by Ffont_xlfd_name.
10294 (Finternal_lisp_face_attribute_values): Don't check QCweight,
10295 QCslant, and QCwidth.
10296 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
10297 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
10298 Compare fonts by EQ.
10299 (lookup_non_ascii_face): Deleted.
10300 (face_for_font): The 2nd argument changed.
10301 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
10302 Check atomic font properties by case insensitive.
10303 (realize_non_ascii_face): Set face->overstrike correctly.
10304 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
10305 (dump_realized_face): Get font name from
10306 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
10307
10308 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
10309 conditionals. Don't check enable_font_backend. Delete all codes
10310 used only when USE_FONT_BACKEND is not defined.
10311 (xic_create_xfontset): Original code deleted and renamed from
10312 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
10313 (x_make_gc): Don't set GCFont in GCs.
10314 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
10315 opened by "fixed".
10316 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10317 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10318 get_font_repertory_func.
10319
10320 * xfont.c: Include <stdlib.h> and "ccl.h".
10321 (struct xfont_info): New structure.
10322 (xfont_query_font): Deleted.
10323 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10324 moved from xterm.c.
10325 (xfont_driver): Adjusted for the change of struct font_driver.
10326 (compare_font_names): New function.
10327 (xfont_list_pattern): Sort font names case insensitively. Make
10328 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10329 (xfont_list): Return a list, not vector.
10330 (xfont_match): If the font doesn't have QCname property, generate
10331 a name from the other font properties.
10332 (xfont_open): Return a font-object. Adjusted for the change of
10333 struct font. Get underline_thickness and underline_position from
10334 font property. Don't update dpyinfo->smallest_font_height and
10335 dpyinfo->smallest_char_width.
10336 (xfont_close): Don't free struct font.
10337 (xfont_prepare_face): Adjusted for the change of struct font.
10338 (xfont_done_face): Deleted.
10339 (xfont_has_char): Adjusted for the change of struct font.
10340 (xfont_encode_char, xfont_draw): Likewise.
10341 (xfont_check): New function.
10342
10343 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10344 callback function.
10345 (xftfont_match): Adjusted for the format change of font-entity.
10346 (xftfont_open): Adjusted for the format change of font-entity and
10347 font-object. Adjusted for the change of struct font. Return a
10348 font-object. Don't update dpyinfo->smallest_font_height and
10349 dpyinfo->smallest_char_width.
10350 (xftfont_close): Block input while calling XftFontClose.
10351 (xftfont_prepare_face): Don't block input while calling
10352 xftfont_get_colors. Adjusted for the change of struct font.
10353 (xftfont_shape): Return value of error case fixed.
10354
10355 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10356
10357 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10358 conditionals.
10359 (FONT_WIDTH): Return (f)->max_width.
10360 (struct x_display_info): Delete member `font'.
10361 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10362 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10363 (struct x_output): Change type of `font' to `struct font *'.
10364
10365 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10366 conditionals. Don't check enable_font_backend. Delete all codes
10367 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10368 (x_per_char_metric, x_encode_char): Deleted.
10369 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10370 (x_compute_glyph_string_overhangs): Adjusted for the change of
10371 `struct face'.
10372 (x_draw_glyph_string_foreground)
10373 (x_draw_composite_glyph_string_foreground): Likewise.
10374 (x_draw_glyph_string): Likewise. Use font->underline_position and
10375 font->underline_thickness.
10376 (x_new_font): Renamed from x_new_fontset2.
10377 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10378 (x_check_font): Call `check' method of a font driver.
10379 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10380 (x_query_font, x_get_font_repertory): Deleted.
10381 (x_find_ccl_program): Renamed and moved to xfont.c.
10382 (x_redisplay_interface): Adjusted for the change of `struct
10383 redisplay_interface'.
10384
10385 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10386 conditionals. Don't check enable_font_backend. Delete all codes
10387 used only when USE_FONT_BACKEND is not defined. Surround non-used
10388 code by "#ifdef OLD_FONT" and "endif".
10389 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10390
10391 * w32font.h (struct w32font_info): New member.
10392 (FONT_COMPAT): New macro.
10393 (w32font_open_internal): Prototype adjusted.
10394
10395 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10396 OLD_FONT" and "endif".
10397
10398 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10399 conditionals. Don't check enable_font_backend. Delete all codes
10400 used only when USE_FONT_BACKEND is not defined.
10401 (w32font_open): Return a font-object. Make a font-object by
10402 font_make_object. Adjusted for the change of struct w32font_info.
10403 (w32font_close): Don't free struct font. Adjusted for the change
10404 of struct w32font_info.
10405 (w32font_encode_char, w32font_text_extents, w32font_draw):
10406 Adjusted for the change of struct w32font_info.
10407 (w32font_draw): Likewise.
10408 (w32font_list_internal): Return a list, not vector.
10409 (w32font_open_internal): Change the 4th arg to font-object.
10410 Adjusted for the change of struct w32font_info and font-object format.
10411 (add_font_name_to_list): Don't downcase names.
10412 (w32_enumfont_pattern_entity): Make a font-entity by
10413 font_make_entity. Adjusted for the format change of font-entity.
10414 Use FONT_SET_STYLE to set a style-related font property. If a
10415 font is scalable, set avgwidth property to 0. Set font-entity
10416 property by font_put_extra.
10417 (font_matches_spec): Adjusted for the format change of font-entity.
10418 (w32_weight_table, w32_decode_weight): New variables.
10419 (w32_encode_weight): New function.
10420 (fill_in_logfont): Adjusted for the format change of font-spec.
10421 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10422 weight value.
10423 (w32font_driver): Adjusted for the change of struct font_driver.
10424
10425 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10426 conditionals. Don't check enable_font_backend. Surround non-used
10427 code by "#ifdef OLD_FONT" and "endif".
10428 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10429 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10430
10431 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10432 conditionals. Don't check enable_font_backend. Delete all codes
10433 used only when USE_FONT_BACKEND is not defined. Surround non-used
10434 code by "#ifdef OLD_FONT" and "endif".
10435
10436 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10437 (uniscribe_open): Return value changed to font-object.
10438 Adjusted for the format change of font-object.
10439 (uniscribe_otf_capability): Adjusted for the change of struct font.
10440 (add_opentype_font_name_to_list): Don't downcase names.
10441 (uniscribe_font_driver): Adjusted for the change of struct
10442 font_driver.
10443
104442008-05-13 Chong Yidong <cyd@stupidchicken.com>
10445
10446 * dispnew.c (update_frame_1): Check if tty output is still valid
10447 before flushing it.
10448
104492008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10450
10451 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10452 to Gtk+ menus.
10453
104542008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10455
10456 * dired.c (file_name_completion): Tweak the code so as to always do it
10457 in a single pass. Tighten the scope of some variables.
10458
10459 * dired.c (Qdefault_directory): New var.
10460 (file_name_completion): Use it instead of Fexpand_file_name.
10461 (syms_of_dired): Initialize it.
10462
104632008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10464
10465 * fileio.c (double_dollars): Remove dead code.
10466
104672008-05-10 Eli Zaretskii <eliz@gnu.org>
10468
10469 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10470 Mention w32-get-true-file-attributes in doc string.
10471
10472 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10473
104742008-05-09 Glenn Morris <rgm@gnu.org>
10475
10476 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10477 2008-04-23.
10478
104792008-05-09 Eli Zaretskii <eliz@gnu.org>
10480
10481 Support for reporting owner and group of each file on MS-Windows:
10482 * dired.c (stat_uname, stat_gname): New functions, with special
10483 implementation for w32.
10484 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10485
10486 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10487 (dflt_group_name): New static variable.
10488 (dflt_group): Rename from the_group.
10489 (init_user_info): Init dflt_group fields. Get user's group name
10490 from LookupAccountSid.
10491 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10492 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10493 New initialization states.
10494 (globals_of_w32): Initialize them to zero. Initialize the default
10495 group name to "None".
10496 (GetFileSecurity_Name): New global var, the name of the function
10497 to call for GetFileSecurity.
10498 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10499 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10500 (get_file_security, get_security_descriptor_owner)
10501 (get_security_descriptor_group, is_valid_sid)
10502 (get_file_security_desc, get_rid, get_name_and_id)
10503 (get_file_owner_and_group): New functions.
10504 (stat): Use get_file_security_desc and get_file_owner_and_group to
10505 report the owner and primary group of each file. Don't ignore the
10506 high 32 bits of file's size, now that st_size is 64-bit wide.
10507 Fix test when to get true file attributes.
10508 (init_user_info): Use get_rid instead of equivalent inline code.
10509 (fstat): Don't ignore the high 32 bits of file's size.
10510
105112008-05-09 Chong Yidong <cyd@stupidchicken.com>
10512
10513 * image.c (png_load): Use correct bit-depth for setting background
10514 color.
10515
105162008-05-08 Eli Zaretskii <eliz@gnu.org>
10517
10518 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10519 epa-hook.elc.
10520
105212008-05-08 Juanma Barranquero <lekktu@gmail.com>
10522
10523 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10524
105252008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10526
10527 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10528 because the original parameters are in pure storage now.
10529 (mac_window): Remove unused params. Update callers.
10530
105312008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10532
10533 * lread.c (substitute_object_recurse): Use lower-level primitives.
10534 Don't signal errors when traversing sub-char-tables.
10535 Don't loop over all the possible characters when traversing char-tables.
10536
10537 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10538 just like we do in print.c.
10539
105402008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10541
10542 * minibuf.c (Ftry_completion): Remove code left over from when we used
10543 scmp instead of Fcompare_strings.
10544
105452008-05-04 Juanma Barranquero <lekktu@gmail.com>
10546
10547 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10548
105492008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10550
10551 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10552 Create bitmap context in native byte order.
10553
10554 * macterm.c (XDrawLine)
10555 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10556 context in native byte order.
10557
105582008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10559
10560 * config.in: Regenerate.
10561
10562 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10563 New definitions for Image I/O support.
10564 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10565 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10566 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10567 (mac_data_provider_release_data, image_load_image_io)
10568 [USE_MAC_IMAGE_IO]: New functions.
10569 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10570 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10571 (init_image_func_pointer) [MAC_OSX]: Remove function.
10572 (image_load_quartz2d) [MAC_OSX]: Check availability of
10573 CGImageCreateWithPNGDataProvider at compile time.
10574 Use lowercase `false' for boolean constant.
10575 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10576 Use image_load_image_io.
10577 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10578 Don't check MyCGImageCreateWithPNGDataProvider.
10579 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10580 Don't call init_image_func_pointer.
10581
10582 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10583
10584 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10585 Make variable non-static.
10586 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10587 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10588
10589 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10590 (RED_FROM_ULONG): Mask off higher bits.
10591 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10592
10593 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10594 Include AvailabilityMacros.h.
10595 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10596 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10597
105982008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10599
10600 * chartab.c (Fset_char_table_range): If range is t, really set all
10601 chars to that value.
10602
106032008-05-03 Eli Zaretskii <eliz@gnu.org>
10604
10605 * dired.c (Ffile_attributes): Don't allow the device number become
10606 negative.
10607
106082008-05-02 Daiki Ueno <ueno@unixuser.org>
10609
10610 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10611
106122008-05-02 Juri Linkov <juri@jurta.org>
10613
10614 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10615 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10616 DEFAULT argument as a list of default values in docstrings.
10617
106182008-05-01 Chong Yidong <cyd@stupidchicken.com>
10619
10620 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10621
106222008-05-01 Martin Rudalics <rudalics@gmx.at>
10623
10624 * dispnew.c (change_frame_size_1): Preserve small windows when
10625 shrinking frames by calling set_window_height|width with third
10626 arg 2.
10627
10628 * window.h (struct window): Replace field too_small_ok by field
10629 resize_proportionally.
10630
10631 * window.c (make_window): Initialize resize_proportionally.
10632 (enlarge_window): Temporarily set resize_proportionally to make
10633 sure that shrink_windows does scale the window proportionally.
10634 (shrink_windows): When window has resize_proportionally set try
10635 to shrink it proportionally by stealing from other windows.
10636 (struct saved_window, Fset_window_configuration)
10637 (compare_window_configurations): Handle resize_proportionally.
10638 (WINDOW_TOTAL_SIZE): New macro.
10639 (window_min_size, shrink_windows, size_window): Use it.
10640 (check_min_window_sizes): Remove. Invalid values of
10641 window-min-height|width are handled by window_min_size_2 now.
10642 (size_window, Fsplit_window, enlarge_window)
10643 (adjust_window_trailing_edge, grow_mini_window): Don't call
10644 check_min_window_sizes.
10645 (window_min_size_2, window_min_size_1, window_min_size):
10646 New argument safe_p for retrieving "safe" minimum sizes.
10647 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10648 (adjust_window_trailing_edge, grow_mini_window):
10649 Adjust arguments of window_min_size... functions.
10650 (shrink_windows): Argument min_size removed. New argument
10651 safe_p allows shrinking windows to their safe minimum sizes.
10652 Calculate minimum size and decide whether a window shall be
10653 deleted for each window individually.
10654 (size_window): When nodelete_p equals 2, tell shrink_windows to
10655 delete windows only if their new minimum size is no more safe.
10656 (shrink_window_lowest_first): Call window_min_size_1 to make
10657 sure to preserve modeline of bottom-most window when resizing
10658 the minibuffer.
10659 (Fset_window_configuration, Fcurrent_window_configuration)
10660 (compare_window_configurations): Do not handle
10661 window-min-height|width any more.
10662 (syms_of_window): Clarify window-min-height|width doc-strings.
10663
106642008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10665
10666 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10667 some more. Copy some of the code from Ftry_completions.
10668 Remove special case code that dates back to initial revision when the
10669 slash was only added when necessary and that can't trigger nowadays.
10670
106712008-04-27 Kenichi Handa <handa@m17n.org>
10672
10673 * font.c (font_prop_validate): Signal `error' instead of `font'.
10674
106752008-04-29 Jason Rumney <jasonr@gnu.org>
10676
10677 * w32fns.c (Fw32_battery_status): New defun.
10678 (syms_of_w32fns): Defsubr it.
10679
106802008-04-28 Andreas Schwab <schwab@suse.de>
10681
10682 * dired.c (file_name_completion): Fix another mixing of encoded
10683 and decoded names.
10684
106852008-04-28 Juanma Barranquero <lekktu@gmail.com>
10686
10687 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10688
106892008-04-27 Juanma Barranquero <lekktu@gmail.com>
10690
10691 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10692
106932008-04-27 Andreas Schwab <schwab@suse.de>
10694
10695 * dired.c (file_name_completion): Fix inappropriate mixing of
10696 encoded and decoded names.
10697
10698 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10699
10700 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10701
107022008-04-26 Eli Zaretskii <eliz@gnu.org>
10703
10704 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10705 2008-03-31, it's not needed anymore with `struct stat' definition
10706 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10707 for the same reasons.
10708
107092008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10710
10711 * m/sparc.h: Additional redefinitions for GNU/Linux.
10712
107132008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10714
10715 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10716 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10717 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10718 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10719 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10720 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10721 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10722 Likewise.
10723
10724 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10725 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10726 (mac_ax_number_of_characters): Add externs.
10727 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10728 [USE_MAC_TSM]: Likewise.
10729 (mac_handle_text_input_event) [MAC_OSX]:
10730 Handle kEventTextInputOffsetToPos for no active input area case.
10731 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10732 (mac_handle_document_access_event)
10733 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10734 (install_application_handler) [MAC_OSX]: Register handlers for
10735 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10736 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10737 Register mac_handle_document_access_event.
10738
10739 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10740 Make functions non-static.
10741
107422008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10743
10744 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10745 (read_file_name_completion_ignore_case, insert_default_directory)
10746 (Qdefault_directory): Move to minibuffer.el.
10747 (Fread_file_name): Call the new `read-file-name' instead.
10748
107492008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10750
10751 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10752 Make function non-static.
10753 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10754 Remove function.
10755 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10756 Move to mactoolbox.c.
10757 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10758
10759 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10760 (mac_rect_make): New macro.
10761
10762 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10763 instead of float.
10764 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10765 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10766 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10767 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10768 CGRectMake.
10769 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10770 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10771 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10772 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10773 instead of WindowRef in argument type.
10774 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10775 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10776 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10777 instead of DISPLAY. All uses changed.
10778 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10779 (x_calc_absolute_position): Simplify so as not to use
10780 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10781
10782 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10783 instead of WindowRef in argument type.
10784 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10785 [TARGET_API_MAC_CARBON]: Remove externs.
10786 (create_apple_event, mac_event_parameters_to_lisp)
10787 [TARGET_API_MAC_CARBON]: Add externs.
10788
10789 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10790 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10791 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10792 is clicked.
10793 (x_activate_menubar): Remove extern for saved_menu_event_location.
10794 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10795 Move from mac.c.
10796
107972008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10798
10799 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10800 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10801
108022008-04-23 Jason Rumney <jasonr@gnu.org>
10803
10804 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10805 attributes only for local files.
10806
10807 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10808 default to Qlocal.
10809
108102008-04-22 Juri Linkov <juri@jurta.org>
10811
10812 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10813 read-buffer-to-switch instead of using the letter "B".
10814
108152008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10816
10817 * fileio.c (Qdefault_directory): New variable.
10818 (Fread_file_name): Use it to pass `dir' to the completion functions.
10819
108202008-04-20 Chong Yidong <cyd@stupidchicken.com>
10821
10822 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10823
108242008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10825
10826 * keyboard.c (Vpre_help_message): Remove.
10827 (show_help_echo): Remove default C code.
10828
10829 * dired.c (directory_files_internal, file_name_completion):
10830 Only call ENCODE_FILE if the string is indeed decoded.
10831
108322008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10833
10834 * Makefile.in (TOOLKIT_DEFINES): Remove.
10835 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10836
108372008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10838
10839 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10840 (mactoolbox.o): New target.
10841
10842 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10843 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10844
10845 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10846 Use mac_set_frame_window_background instead of XSetWindowBackground.
10847 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10848 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10849 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10850 instead of SetWindowTitleWithCFString.
10851 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10852 Move function to mactoolbox.c.
10853 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10854 Use mac_set_window_modified instead of SetWindowModified.
10855 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10856 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10857 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10858 FrontNonFloatingWindow. Use mac_activate_window instead of
10859 ActivateWindow. Use mac_active_non_floating_window instead of
10860 ActiveNonFloatingWindow.
10861 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10862 Use mac_show_hourglass and mac_hide_hourglass.
10863 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10864 instead of GetGlobalMouse.
10865 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10866 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10867 Use mac_bring_window_to_front instead of BringToFront.
10868 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10869 mactoolbox.c.
10870 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10871 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10872 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10873 mactoolbox.c.
10874
10875 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10876 (XtPointer): Move typedef from macmenu.c.
10877 (enum button_type): Move enum from macmenu.c.
10878 (widget_value): Move typedef from macmenu.c.
10879 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10880 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10881 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10882 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10883 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10884 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10885 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10886 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10887 (Selection): Move typedef from macselect.c.
10888 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10889 macterm.c.
10890 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10891 (mac_is_window_collapsed, mac_bring_window_to_front)
10892 (mac_send_window_behind, mac_hide_window, mac_show_window)
10893 (mac_collapse_window, mac_front_non_floating_window)
10894 (mac_active_non_floating_window, mac_activate_window)
10895 (mac_move_window_structure, mac_move_window, mac_size_window)
10896 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10897
10898 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10899 (enum mac_menu_kind): Move enum to mactoolbox.c.
10900 (min_menu_id): Move variable to mactoolbox.c.
10901 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10902 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10903 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10904 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10905 [TARGET_API_MAC_CARBON]: Likewise.
10906 (XtPointer): Move typedef to macgui.h.
10907 (enum button_type): Move enum to macgui.h.
10908 (widget_value): Move typedef to macgui.h.
10909 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10910 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10911 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10912 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10913 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10914 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10915 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10916 (popup_activated_flag): Make variable non-static.
10917 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10918 (add_menu_item, fill_menu, dispose_menus):
10919 Move functions to mactoolbox.c.
10920 (restore_show_help_function, menu_target_item_handler)
10921 (install_menu_target_item_handler, mac_handle_dialog_event)
10922 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10923 [TARGET_API_MAC_CARBON]: Likewise.
10924 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
10925 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10926 (find_and_call_menu_selection, name_is_separator): Make function
10927 non-static.
10928 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
10929 to mactoolbox.c.
10930 (set_frame_menubar): Don't call install_menu_quit_handler.
10931 (menu_item_selection): New variable.
10932 (mac_menu_show): Use create_and_show_popup_menu.
10933 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
10934 selection but set variable menu_item_selection. All uses changed.
10935 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
10936 Call install_menu_quit_handler. Move to mactoolbox.c.
10937
10938 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
10939 (Selection): Move typedef to macgui.h.
10940 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
10941 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
10942 Make variables non-static.
10943 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10944 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
10945 Make functions non-static.
10946 (Vmac_service_selection) [MAC_OSX]: Likewise.
10947 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
10948 (mac_valid_selection_target_p, mac_clear_selection)
10949 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10950 (mac_put_selection_value, mac_selection_has_target_p)
10951 (mac_get_selection_value, mac_get_selection_target_list)
10952 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
10953 Move functions to mactoolbox.c.
10954 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
10955 Likewise.
10956 (copy_scrap_flavor_data, mac_handle_service_event)
10957 (install_service_handler) [MAC_OSX]: Likewise.
10958 (syms_of_macselect) <Vmac_dnd_known_types>:
10959 Use mac_dnd_default_known_types.
10960
10961 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
10962 Move to mactoolbox.c.
10963 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
10964 (Fx_selection_owner_p): Add EXFUN.
10965 (install_window_handler, remove_window_handler, XSetWindowBackground):
10966 Remove externs.
10967 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
10968 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
10969 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
10970 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
10971 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
10972 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
10973 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
10974 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
10975 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
10976 (create_and_show_popup_menu, mac_get_selection_from_symbol)
10977 (mac_valid_selection_target_p, mac_clear_selection)
10978 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10979 (mac_put_selection_value, mac_selection_has_target_p)
10980 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
10981 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
10982 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
10983 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10984 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
10985 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10986 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
10987 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10988 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
10989
10990 * mactoolbox.c: New file.
10991
109922008-04-18 Jason Rumney <jasonr@gnu.org>
10993
10994 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
10995
109962008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10997
10998 * character.c (Fmultibyte_char_to_unibyte):
10999 Return latin1 chars unchanged.
11000
11001 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
11002 relocated if it points to `name'.
11003
110042008-04-17 Kenichi Handa <handa@m17n.org>
11005
11006 * data.c (Faset): Allow setting a multibyte character in an
11007 ASCII-only unibyte string.
11008
11009 * lisp.h (STRING_SET_MULTIBYTE): New macro.
11010
110112008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
11012
11013 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
11014 done in config.h.
11015
110162008-04-16 Juanma Barranquero <lekktu@gmail.com>
11017
11018 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
11019 (Fchar_direction): Add usage in the docstring.
11020
110212008-04-15 Chong Yidong <cyd@stupidchicken.com>
11022
11023 * keyboard.c (read_key_sequence): Remove always-true checks.
11024
110252008-04-14 Jason Rumney <jasonr@gnu.org>
11026
11027 * w32font.c (w32font_open_internal): Set max_bounds.descent in
11028 compatibility struct, for better underline positioning.
11029
110302008-04-13 David Hansen <david.hansen@gmx.net>
11031
11032 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
11033 string.
11034
110352008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
11036
11037 * m/hp800.h (XUINT, XSET): Remove.
11038
110392008-04-12 Juanma Barranquero <lekktu@gmail.com>
11040
11041 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
11042 previous change.
11043
110442008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
11045
11046 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
11047 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
11048
110492008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11050
11051 * keymap.h (map_keymap_canonical): Declare.
11052 * xmenu.c (single_keymap_panes): Use it.
11053
110542008-04-11 Glenn Morris <rgm@gnu.org>
11055
11056 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
11057 set the target's value to that of the alias.
11058
110592008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11060
11061 * term.c (set_tty_color_mode): Left over typo.
11062
110632008-04-10 Michael Albinus <michael.albinus@gmx.de>
11064
11065 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
11066 only after check for file name handler functions. Signal, when
11067 native functionality is not supported.
11068 (syms_of_fileio): Declare it unconditionally.
11069
110702008-04-10 Jason Rumney <jasonr@gnu.org>
11071
11072 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
11073 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
11074
11075 * w32.c (logon_network_drive): Also logon to remote drives that
11076 are mapped to drive letters.
11077
110782008-04-10 Glenn Morris <rgm@gnu.org>
11079
11080 * xdisp.c (truncate-partial-width-windows): Doc fix.
11081
110822008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
11083
11084 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
11085 Move functions to minibuffer.el.
11086 (syms_of_fileio): Don't declare them.
11087
110882008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11089
11090 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
11091 (syms_of_minibuf): Remove its initialization.
11092
11093 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
11094
110952008-04-09 Juanma Barranquero <lekktu@gmail.com>
11096
11097 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
11098
110992008-04-09 Jason Rumney <jasonr@gnu.org>
11100
11101 * makefile.w32-in (distclean): Delete makefile too.
11102 (maintainer-clean): New target.
11103
11104 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
11105
11106 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
11107 for new font backend and composite cases.
11108
111092008-04-09 Jan Djärv <jan.h.d@swipnet.se>
11110
11111 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
11112 Most of the code moved to run_timers.
11113 (do_pending_atimers): Call run_timers.
11114 (run_timers): New function.
11115
11116 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
11117 run atimers.
11118
11119 * process.c (wait_reading_process_output): The same as above.
11120
111212008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11122
11123 * minibuf.c (last_exact_completion): Remove variable.
11124 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
11125 (complete_and_exit_1, complete_and_exit_2)
11126 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
11127 (Fdisplay_completion_list, display_completion_list_1)
11128 (Fminibuffer_completion_help, Fself_insert_and_exit)
11129 (Fexit_minibuffer, Fminibuffer_message): Move functions to
11130 minibuffer.el.
11131 (syms_of_minibuf): Remove corresponding initializations.
11132
11133 * keyboard.c (Qdeactivate_mark): New var.
11134 (command_loop_1): Use it to call `deactivate-mark'.
11135 (syms_of_keyboard): Initialize it.
11136
11137 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
11138 to another frame.
11139 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
11140 Don't call set_tty_color_mode.
11141 (store_frame_param): Reset previous_frame rather than call
11142 set_tty_color_mode.
11143 * term.c (set_tty_color_mode): Rewrite.
11144 * dispextern.h (set_tty_color_mode): New type.
11145 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
11146
111472008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
11148
11149 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
11150 for generic chars, which do not exist any more in emacs-unicode.
11151
111522008-04-08 Michael Albinus <michael.albinus@gmx.de>
11153
11154 * coding.c (detect_coding_emacs_mule)
11155 (Ffind_operation_coding_system): Fix typo.
11156
111572008-04-08 Jason Rumney <jasonr@gnu.org>
11158
11159 * w32uniscribe.c (SNAME): Extract only symbol name.
11160
11161 * w32font.h (struct w32_metric_cache): New struct.
11162 (w32font_info): Use it.
11163 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
11164 (CACHE_BLOCKSIZE): New constants.
11165
11166 * w32font.c (Qja, Qko, Qzh): New symbols.
11167 (syms_of_w32font): Initialise them.
11168 (font_matches_spec): Use them to filter by language.
11169 (recompute_cached_metrics): Remove function.
11170 (compute_metrics, clear_cached_metrics): New functions.
11171 (w32font_encode_char): Use them to manage metric cache.
11172 (w32font_text_extents): Cache metrics for all glyphs on demand.
11173 Delay converting glyph indices to WORD until needed.
11174 (w32font_open_internal): Initialize metric cache to empty.
11175 (registry_to_w32_charset): Charset should always be a symbol.
11176 (fill_in_logfont, list_all_matching_fonts): Family should
11177 always be a symbol.
11178
111792008-04-06 Jason Rumney <jasonr@gnu.org>
11180
11181 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
11182 Give up if glyph indices not supported. Use uniscribe obtained
11183 ABC widths for individual metrics. Map glyph clusters back to
11184 characters using fClusterStart flag. Return number of glyphs
11185 produced, not chars processed.
11186 (uniscribe_shape): Map char at FROM to current glyph.
11187
111882008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11189
11190 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
11191 Use SetMenuItemHierarchicalMenu.
11192
111932008-04-05 Jason Rumney <jasonr@gnu.org>
11194
11195 * image.c (pbm_load): Allow color values up to 65535.
11196 Throw an error if max_color_idx is outside the supported range.
11197 Report an error when image size is invalid.
11198 Read two bytes at a time when raw images have max_color_idx above 255.
11199
112002008-04-05 Eli Zaretskii <eliz@gnu.org>
11201
11202 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11203 cFileName a file name that includes `?' characters, use the 8+3
11204 alias in cAlternateFileName instead.
11205
112062008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
11207
11208 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
11209 append "CCL: Quitted" when the CCL program is quitted.
11210 (setup_ccl_program): Initialize ccl->quit_silently to zero.
11211
11212 * ccl.h (struct ccl_program): New member quit_silently.
11213
112142008-04-05 Chong Yidong <cyd@stupidchicken.com>
11215
11216 * search.c (compile_pattern_1): Treat non-nil and non-string of
11217 search-spaces-regexp as nil.
11218
11219 * minibuf.c (Fassoc_string): Tweak docstring.
11220
112212008-04-05 Eli Zaretskii <eliz@gnu.org>
11222
11223 * dired.c (Ffile_attributes): Support inode numbers wider than 32
11224 bits. Remove ugly WINDOWSNT-specific kludge introduced on
11225 2008-03-14 to force inode be positive.
11226
11227 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
11228 _S_* ones, since we now use our own sys/stat.h.
11229 (stat, fstat): Don't mangle the inode number.
11230 (init_user_info): Don't restrict UID and GID to 0-60000 range.
11231
112322008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
11233
11234 * frame.h (struct frame): Give one more bit to `visible' since we use
11235 values larger than 1 to indicate obscured frames on ttys.
11236
11237 * keymap.c (Qkeymap_canonicalize): New var.
11238 (Fmap_keymap_internal): New fun.
11239 (describe_map): Use keymap-canonicalize.
11240
11241 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
11242 (Fundo_boundary): Set them.
11243 (syms_of_undo): Initialize them.
11244 (record_point): Use them instead of last_point_position*.
11245 (last_undo_buffer): Change type.
11246
112472008-04-04 Jason Rumney <jasonr@gnu.org>
11248
11249 * w32font.c (w32font_text_extents): Use font's ascent and descent.
11250 (recompute_cached_metrics): Don't set ascent and descent per char.
11251
11252 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
11253 (uniscribe_check_otf): Add GC protection before consing.
11254 Rearrange loop for counting features.
11255
112562008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
11257
11258 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
11259 buffer with byte-size of source buffer.
11260
112612008-04-03 Chong Yidong <cyd@stupidchicken.com>
11262
11263 * callint.c (Fcall_interactively): Handle temporary region even
11264 when shift-select-mode is off.
11265
112662008-04-03 Jason Rumney <jasonr@gnu.org>
11267
11268 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
11269
112702008-04-03 Kenichi Handa <handa@m17n.org>
11271
11272 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
11273 (CATEGORY_MASK_UTF_16): Likewise.
11274 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
11275 binary file.
11276 (detect_coding): Add null-byte detection for a binary file.
11277 (detect_coding_system): Likewise.
11278
112792008-04-03 Jason Rumney <jasonr@gnu.org>
11280
11281 * w32uniscribe.c: New file.
11282
11283 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
11284
11285 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
11286
11287 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
11288 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
11289 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
11290 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
11291 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
11292 (Qphonetic): New symbols.
11293 (syms_of_w32font): Initialize them.
11294 (font_supported_scripts): Use them.
11295 (w32font_list_family): List all charsets.
11296 (w32font_text_extents, recompute_cached_metrics): Fix metric
11297 calculations.
11298 (w32_enumfont_pattern_entity): Make full_type a DWORD.
11299 Give opentype fonts their own format.
11300 (font_matches_spec): New arguments backend and logfont.
11301 Handle :otf spec for uniscribe backend.
11302 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
11303 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
11304
11305 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
11306 font backend.
11307 (globals_of_w32fns): Initialize uniscribe font backend.
11308
11309 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
11310 dependencies.
11311 (w32uniscribe.$(O)): New file to build.
11312 (FONT_OBJ): Include w32uniscribe.$(O).
11313 (LIBS): Add uniscribe libraries.
11314
11315 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
11316
113172008-04-02 Chong Yidong <cyd@stupidchicken.com>
11318
11319 * callint.c (Vshift_select_mode): New var.
11320 (Finteractive): Document new ^ spec.
11321 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11322 is present.
11323
11324 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11325 (command_loop_1): Avoid running the direct display versions of
11326 forward-char and backward-char if shift-selection may occur.
11327 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11328 shift-translation takes place.
11329
11330 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11331 avoid clobbering by define-minor-mode.
11332
11333 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11334 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11335
11336 * syntax.c (Fforward_word): Add ^ interactive spec.
11337
11338 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11339 (Fscroll_right): Add ^ interactive spec.
11340
113412008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11342
11343 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11344
11345 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11346
11347 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11348
113492008-03-31 Juri Linkov <juri@jurta.org>
11350
11351 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11352
113532008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11354
11355 * gtkutil.c (xg_set_geometry): Fix indentation.
11356 (xg_resize_outer_widget): Remove.
11357 (x_wm_size_hint_off): Fix indentation.
11358 (xg_frame_set_char_size): Call flush_and_sync after
11359 gtk_window_resize.
11360 (x_wm_set_size_hint): Pass NULL as geometry window to
11361 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11362 Add menu bar and tool bar height to base height.
11363 (xg_update_frame_menubar, free_frame_menubar)
11364 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11365 (update_frame_tool_bar, free_frame_tool_bar):
11366 Change xg_resize_outer_widget to xg_frame_set_char_size.
11367
113682008-03-30 Michael Albinus <michael.albinus@gmx.de>
11369
11370 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11371 (Fdbus_call_method): New parameter TIMEOUT.
11372 (dbus-send-signal): Optimize UNGCPRO call.
11373
113742008-03-29 Juri Linkov <juri@jurta.org>
11375
11376 * window.c (Fdisplay_buffer): Move call to
11377 Vsplit_window_preferred_function out of conditions that check
11378 if window is eligible for vertical splitting.
11379 When Vsplit_window_preferred_function is non-nil, call it and use
11380 its non-nil return value as window. Otherwise, continue doing
11381 vertical splitting using Fsplit_window with arg horflag=nil.
11382 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11383 default value from `split-window' to nil.
11384
113852008-03-29 Juri Linkov <juri@jurta.org>
11386
11387 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11388 for interactive code letters 'b' and 'B'.
11389
113902008-03-29 Eli Zaretskii <eliz@gnu.org>
11391
11392 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11393 multibyte string.
11394
113952008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11396
11397 * keyboard.c (pending_funcalls): New var.
11398 (timer_check): Run it.
11399 (syms_of_keyboard): Initialize it.
11400 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11401 (Vdelete_terminal_functions): New vars.
11402 (syms_of_terminal): Initialize them.
11403 (Fdelete_terminal): Run delete-terminal-functions.
11404 * xdisp.c (safe_eval): Rewrite.
11405 (safe_call2): New fun.
11406 * frame.c (Qdelete_frame_functions): New var.
11407 (syms_of_frame): Initialize it.
11408 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11409 * lisp.h (safe_call2, pending_funcalls): Declare.
11410
114112008-03-28 Andreas Schwab <schwab@suse.de>
11412
11413 * indent.c (Fmove_to_column): Move declaration before statements.
11414
114152008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11416
11417 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11418 (struct frame): Use bit fields for boolean vars.
11419
11420 * process.c (server_accept_connection): Simplify naming.
11421 (emacs_get_tty_pgrp): Use SDATA.
11422
11423 * coding.c (decode_coding_object): Fix last change.
11424
114252008-03-27 Jason Rumney <jasonr@gnu.org>
11426
11427 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11428
114292008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11430
11431 * charset.c (Fdefine_charset_internal): Change the way of
11432 registering charsets in Vcharset_order_list.
11433 (syms_of_charset): Make the charset `eight-bit' supplementary.
11434
114352008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11436
11437 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11438 operations, to avoid having the difference between pointers
11439 overflow.
11440
114412008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11442
11443 * indent.c (check_display_width): New fun.
11444 (scan_for_column): Use it.
11445
11446 * data.c (syms_of_data): Mark most-positive-fixnum and
11447 most-negative-fixnum as constants.
11448
11449 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11450
11451 * indent.c (scan_for_column): Extract from current_column_1.
11452 Merge with the same code from Fmove_to_column.
11453 (current_column_1, Fmove_to_column): Use it.
11454
114552008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11456
11457 * keymap.c (map_keymap_internal): New fun.
11458 (map_keymap): Use it.
11459 (Fmap_keymap_internal): New fun.
11460 (Fmap_keymap): Remove left-out test from before make_save_value.
11461
11462 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11463
11464 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11465 Use XCAR/XCDR.
11466
11467 * process.h (struct Lisp_Process): Remove filter_multibyte.
11468 * process.c (QCfilter_multibyte): Remove.
11469 (setup_process_coding_systems): Don't use filter_multibyte.
11470 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11471 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11472 (Fset_process_filter_multibyte): Change the coding-system to
11473 approximate the previous behavior.
11474 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11475 coding-system.
11476
11477 * coding.c (decode_coding_object): When not decoding into a buffer,
11478 obey the coding system's preference of (uni|multi)byte.
11479
114802008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11481
11482 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11483 every char is changed and has a different byte-length.
11484 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11485 Fix int -> EMACS_INT.
11486
114872008-03-23 David Hansen <david.hansen@gmx.net>
11488
11489 * dbusbind.c (xd_read_message): Remove extra copying of message
11490 strings. Check for NULL `interface' or `member'.
11491
114922008-03-22 Eli Zaretskii <eliz@gnu.org>
11493
11494 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11495 cFileName a file name that includes `?' characters, use the 8+3
11496 alias in cAlternateFileName instead.
11497
114982008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11499
11500 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11501
115022008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11503
11504 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11505 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11506 work on current_buffer only instead (that was already the case
11507 for some of the code anyway).
11508 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11509 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11510 (SET_PT, SET_PT_BOTH): Adjust.
11511 * intervals.h (set_point, temp_set_point, set_point_both)
11512 (temp_set_point_both): Remove redundant declarations.
11513
115142008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11515
11516 * fileio.c (Finsert_file_contents):
11517 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11518 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11519 when buffer != current_buffer anyway.
11520
115212008-03-20 Andreas Schwab <schwab@suse.de>
11522
11523 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11524 as default.
11525
115262008-03-19 Jason Rumney <jasonr@gnu.org>
11527
11528 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11529 (syms_of_w32fns): Initialize them.
11530 (HOURGLASS_ID): New constant.
11531 (x_window_to_frame): Don't check hourglass_window.
11532 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11533 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11534 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11535 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11536 Only change the cursor if hourglass is not active.
11537 (Fx_create_frame): Initialize frame's current_cursor.
11538 (hourglass_atimer): Remove.
11539 (hourglass_started): New function.
11540 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11541 (show_hourglass): Adapt to w32, changing argument to frame.
11542
11543 * w32term.h (struct w32_output): Remove hourglass_window.
11544 Add current_cursor.
11545
11546 * eval.c (call_debugger, Fsignal):
11547 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11548 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11549 (Fexecute_extended_command, cancel_hourglass_unwind):
11550 * minibuf.c (read_minibuf):
11551 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11552
115532008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11554
11555 * window.c (run_funs): New fun.
11556 (run_window_configuration_change_hook): Use it to run the buffer-local
11557 and the global part of the hook.
11558
11559 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11560 (unwind_format_mode_line): Restore selected window.
11561 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11562
115632008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11564
11565 * editfns.c (Fchar_equal): Check they are valid characters.
11566
11567 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11568
115692008-03-17 Andreas Schwab <schwab@suse.de>
11570
11571 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11572 against a charset.
11573
11574 * lisp.h (Fbuffer_list): Declare.
11575
115762008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11577
aac0c6e3
MR
11578 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11579 handlebox_widget is != 0.
11580
115812008-03-16 Juri Linkov <juri@jurta.org>
11582
11583 * callint.c (Fcall_interactively): For interactive code letters
11584 'b' and 'B' put the buffer list into the list of default "future"
11585 values of the minibuffer.
11586
115872008-03-16 Andreas Schwab <schwab@suse.de>
11588
11589 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11590 modifiers.
11591
11592 * regex.c (re_match_2_internal): Correct matching of a charset
11593 against latin-1 characters.
11594
115952008-03-16 Kenichi Handa <handa@m17n.org>
11596
11597 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11598 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11599 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11600 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11601 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11602 CHAR_STRING_ADVANCE.
11603 (produce_chars): Fix for the case that the source and the
11604 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11605 instead of CHAR_STRING_ADVANCE.
11606 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11607 STRING_CHAR_ADVANCE.
11608
116092008-03-15 Andreas Schwab <schwab@suse.de>
11610
11611 * regex.c (re_match_2_internal): Correct matching of eight bit
11612 characters in unibyte strings.
11613
116142008-03-15 Martin Rudalics <rudalics@gmx.at>
11615
11616 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11617 at end of range when it coincides with the end of the buffer.
11618
116192008-03-14 Eli Zaretskii <eliz@gnu.org>
11620
11621 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11622
11623 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11624
116252008-03-14 Jason Rumney <jasonr@gnu.org>
11626
11627 * editfns.c (initial_tz): New variable.
11628 (syms_of_editfns): Initialize it.
11629 (Fset_time_zone_rule): Set it when first called.
11630 Use it when TZSTRING is nil.
11631
11632 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11633 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11634 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11635 (globals_of_w32fns): Initialize them.
11636 (compute_tip_xy): Use them to position tooltips.
11637
116382008-03-14 Glenn Morris <rgm@gnu.org>
11639
11640 * emacs.c (main): Revert previous change.
11641 (standard_args): Revert -internal-script back to -scriptload,
11642 and remove the long-option form.
11643
116442008-03-13 Glenn Morris <rgm@gnu.org>
11645
11646 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11647 Remove option -enable-font-backend.
11648
116492008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11650
11651 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11652
116532008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11654
11655 * xterm.c (x_connection_closed): For GTK: If this is the last
11656 terminal just exit without closing the display.
11657
116582008-03-11 Jason Rumney <jasonr@gnu.org>
11659
11660 * w32font.c (w32font_full_name): Use floor to round.
11661
f0131492 116622008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11663
11664 * sound.c (alsa_configure): Declare vol at beginning of block.
11665
11666 * fontset.c (Ffontset_info): Remove extra semicolon.
11667
116682008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11669
11670 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11671 size of resulting string.
11672
116732008-03-10 Jason Rumney <jasonr@gnu.org>
11674
11675 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11676
116772008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11678
11679 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11680 Don't pretend as if characters with display property haven't been
11681 consumed for string-replacing-string case.
11682
116832008-03-08 Kim F. Storm <storm@cua.dk>
11684
11685 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11686 (get_next_display_element, next_element_from_string)
11687 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11688
116892008-03-08 Andreas Schwab <schwab@suse.de>
11690
11691 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11692
116932008-03-06 Jason Rumney <jasonr@gnu.org>
11694
11695 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11696 when charset not specified. Only translate ANSI to unicode when
11697 font_type is truetype.
11698 (w32font_coverage_ok): New function.
11699 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11700
117012008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11702
11703 * lread.c (Fread_char): Resolve modifiers.
11704 (Fread_char_exclusive): Likewise.
11705
11706 * character.c (char_resolve_modifier_mask): New function.
11707 (char_string): Use char_resolve_modifier_mask.
11708 (Fchar_resolve_modifiers): New function.
11709 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11710 function.
11711
117122008-03-04 Jason Rumney <jasonr@gnu.org>
11713
11714 * makefile.w32-in: Always include w32font.c in the build.
11715 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11716
117172008-03-04 Andreas Schwab <schwab@suse.de>
11718
11719 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11720 (versionclean): Likewise.
11721
117222008-03-04 Juanma Barranquero <lekktu@gmail.com>
11723
11724 * .cvsignore: Add oo.
11725
117262008-03-03 Andreas Schwab <schwab@suse.de>
11727
11728 * coding.c (decode_coding_object): Inhibit gap shrinking while
11729 decoding in place.
11730
117312008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11732
11733 * w32term.c: Remove unused include "gnu.h".
11734 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11735
11736 * gnu.h: Rename to ...
11737 * emacs-icon.h: ... this.
11738 * xterm.c: Use emacs-icon.h instead of gnu.h.
11739 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11740
117412008-03-03 Juanma Barranquero <lekktu@gmail.com>
11742
11743 * w32font.c: Include math.h.
11744
117452008-03-03 Jason Rumney <jasonr@gnu.org>
11746
11747 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11748 Compute options separately.
11749 (w32font_open_internal): Set glyph_idx before caching metrics.
11750
11751 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11752 Define if system headers don't.
11753 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11754 (w32font_encode_char): Don't declare here.
11755
11756 * w32font.c (Quniscribe, QCformat): New symbols.
11757 (syms_of_w32font): Define them.
11758 (w32font_has_char): Indicate uncertainty.
11759 (w32font_encode_char): Encode as glyph point. Make static.
11760 (recompute_cached_metrics): New function.
11761 (w32font_open_internal): Use it. Set font to use glyph points
11762 initially. Set format based on type of font.
11763 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11764 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11765 on it. Set format based on information available here.
11766 (add_font_entity_to_list): Identify backend based on opentype_only.
11767
117682008-03-02 Andreas Schwab <schwab@suse.de>
11769
11770 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11771
11772 * coding.c (decode_coding_big5, produce_chars):
11773 Fix typos in last change.
11774
117752008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11776
11777 * gnu.h: New icon.
11778
117792008-03-02 Kenichi Handa <handa@m17n.org>
11780
11781 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11782 `dos', don't decode '\r' if that is the last in the source.
11783 (decode_coding_utf_16, decode_coding_emacs_mule)
11784 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11785 (decode_coding_raw_text, decode_coding_charset): Likewise.
11786 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11787
117882008-03-01 Jason Rumney <jasonr@gnu.org>
11789
11790 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11791
117922008-03-01 Kim F. Storm <storm@cua.dk>
11793
11794 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11795
117962008-03-01 Jason Rumney <jasonr@gnu.org>
11797
11798 * w32font.c (w32font_full_name): New function.
11799 (w32font_open_internal): Use it.
11800
118012008-03-01 Kim F. Storm <storm@cua.dk>
11802
11803 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11804
118052008-03-01 Jason Rumney <jasonr@gnu.org>
11806
11807 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11808
118092008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11810
11811 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11812 xg_frame_resized when the event is for the edit widget.
11813
11814 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11815
11816 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11817 set_char_size.
11818 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11819 operations on widgets here. Just set frame size if needed.
11820 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11821 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11822 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11823 the whole frame.
11824 (xg_create_tool_bar): Move attachment of the tool bar to
11825 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11826 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11827
118282008-03-01 Jason Rumney <jasonr@gnu.org>
11829
11830 * w32fns.c (w32_msg_pump): Disable debug code.
11831
118322008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11833
11834 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11835
118362008-02-29 Chong Yidong <cyd@stupidchicken.com>
11837
11838 * xdisp.c (next_overlay_string): Don't set
11839 overlay_strings_at_end_processed_p if we're currently reading from
11840 a display string.
11841
118422008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11843
11844 * xdisp.c (get_overlay_strings_1): Fix typo.
11845
118462008-02-29 Chong Yidong <cyd@stupidchicken.com>
11847
11848 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11849
118502008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11851
11852 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11853
11854 * xdisp.c (display_mode_element): Cancel the previous change.
11855 (decode_mode_spec): Likewise.
11856 (handle_auto_composed_prop): Don't make composition if it->string
11857 is a string.
11858
118592008-02-27 Kim F. Storm <storm@cua.dk>
11860
11861 * lisp.h (GLYPH): Change type from int to struct with separate char
11862 and face_id members.
11863 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11864 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11865 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11866 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11867 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11868 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11869 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11870 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11871 handle new Lisp glyph code encoding, either an integer or a cons.
11872
11873 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11874 (GLYPH_ALIAS): Delete.
11875 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11876 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11877 (GLYPH_FROM_CHAR): Replace macro by ...
11878 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11879
11880 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11881 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11882 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11883 (GLYPH_INVALID_P): New macro.
11884 (spec_glyph_lookup_face): Update prototype.
11885
11886 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11887 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11888 new glyph code encoding.
11889 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11890 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11891
11892 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11893 Adapt to new glyph type and new glyph code encoding.
11894
11895 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11896
11897 * indent.c (current_column, current_column_1, Fmove_to_column)
11898 (compute_motion): Adapt to new glyph code encoding.
11899
11900 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11901
119022008-02-27 Chong Yidong <cyd@stupidchicken.com>
11903
11904 * process.c (wait_reading_process_output): Check for window
11905 changes caused by timers.
11906 Suggested by Johan Bockgård.
11907
119082008-02-27 Glenn Morris <rgm@gnu.org>
11909
11910 * emacs.c (USAGE1): Add `--disable-font-backend'.
11911
119122008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11913
11914 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11915 is made to the buffer.
11916
119172008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11918
11919 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11920 (face_at_string_position):
11921 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11922 (face_at_string_position):
11923 * xdisp.c (display_string, next_overlay_change):
11924 * buffer.h (overlays_at):
11925 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
11926 Update callers.
11927
119282008-02-26 Chong Yidong <cyd@stupidchicken.com>
11929
11930 * editfns.c (Fformat): Doc fix.
11931
119322008-02-26 Juanma Barranquero <lekktu@gmail.com>
11933
11934 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
11935 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
11936 (Ffont_otf_alternates, Fquery_font): Doc fixes.
11937
119382008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11939
11940 * buffer.c (Fbuffer_swap_text): New function.
11941 (syms_of_buffer): Defsubr it.
11942
119432008-02-25 Chong Yidong <cyd@stupidchicken.com>
11944
11945 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
11946
119472008-02-25 Jason Rumney <jasonr@gnu.org>
11948
11949 * w32font.c (w32font_draw): Draw one character at a time when padding.
11950
119512008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11952
11953 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
11954 Handle a nil arg. Use run_window_configuration_change_hook.
11955 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
11956 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
11957 Use run_window_configuration_change_hook.
11958
119592008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11960
11961 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
11962 1-pixel width.
11963
119642008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11965
11966 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
11967 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
11968 if the glyph in the font is zero pixel with.
11969
11970 * dispextern.h (struct glyph_string): New member padding_p.
11971
11972 * w32font.c (w32font_draw): Pay attention to s->padding_p.
11973
11974 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
11975
11976 * xfont.c (xfont_draw): Pay attention to s->padding_p.
11977
11978 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
11979
11980 * font.c: If the font driver doesn't have `shape' function, return Qnil.
11981
119822008-02-25 Jason Rumney <jasonr@gnu.org>
11983
11984 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
11985
119862008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
11987
11988 Allow fine-grained image-cache flushing.
11989 * dispextern.h (struct image): Add `dependencies' field.
11990 (clear_image_caches): Change arg to Lisp_Object.
11991 * image.c (make_image): Initialize `dependencies' field.
11992 (clear_image_cache): Change arg to allow fine-grained flushing.
11993 Perform the flush even if image-cache-eviction-delay is nil.
11994 (clear_image_caches): Change arg to Lisp_Object.
11995 (Fclear_image_cache): Expand meaning of the argument.
11996 (mark_image): Mark `dependencies' field.
11997 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
11998 (lface_hash): Use XHASH rather than XFASTINT.
11999 (face_at_buffer_position): Fix int -> EMACS_INT position.
12000 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
12001 (select_frame_for_redisplay): Remove code duplication.
12002 (redisplay_internal): Adapt arg to call to clear_image_caches.
12003
120042008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
12005
12006 * s/vms4-0.h:
12007 * s/vms4-2.h:
12008 * s/vms4-4.h:
12009 * s/vms5-5.h: Remove, unused.
12010
12011 * s/irix5-2.h:
12012 * s/irix6-0.h:
12013 * s/riscos5.h:
12014 * s/mach-bsd4-3.h:
12015 * m/mips4.h: Remove files for obsolete systems.
12016
12017 * Makefile.in:
12018 * filelock.c:
12019 * unexmips.c:
12020 * m/hp9000s300.h:
12021 * m/iris4d.h:
12022 * s/aix3-1.h:
12023 * s/hpux.h:
12024 * s/msdos.h:
12025 * s/usg5-0.h:
12026 * s/usg5-2-2.h:
12027 * s/usg5-2.h:
12028 * s/usg5-3.h: Remove references to obsolete variables.
12029
12030 * s/irix5-0.h: Remove, move all the contents ...
12031 * s/irix6-5.h: ... here. Simplify.
12032 * config.in: Regenerate.
12033
120342008-02-24 Jason Rumney <jasonr@gnu.org>
12035
12036 * w32term.c (x_draw_glyph_string_background): Clear the background
12037 manually when cleartype is in use.
12038 (x_draw_glyph_string_foreground): Draw text transparently when
12039 cleartype is in use.
12040
12041 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
12042 a font into it unless we have to.
12043
120442008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12045
12046 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
12047 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 12048
aac0c6e3
MR
120492008-02-18 Jason Rumney <jasonr@gnu.org>
12050
12051 * w32fns.c (Fw32_shell_execute): Encode parameters.
12052
120532008-02-09 Eli Zaretskii <eliz@gnu.org>
12054
12055 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
12056
120572008-02-05 Juanma Barranquero <lekktu@gmail.com>
12058
12059 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
12060
120612008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
12062
12063 * xterm.c (x_set_offset): Don't change the gravity if
12064 CHANGE_GRAVITY is -1.
12065
120662008-02-23 Chong Yidong <cyd@stupidchicken.com>
12067
12068 * fileio.c (auto_save_error_occurred): New var.
12069 (auto_save_error): Set it.
12070 (Fdo_auto_save): Don't overwrite the error message if an auto-save
12071 error occurred.
12072
120732008-02-23 Eli Zaretskii <eliz@gnu.org>
12074
12075 * w32.c (globals_of_w32): Add initializations for
12076 g_b_init_get_sid_sub_authority and
12077 g_b_init_get_sid_sub_authority_count.
12078
120792008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
12080
12081 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
12082 (font_parse_xlfd): Use them for sanity check.
12083 (Finternal_set_font_style_table): Make sure the table is bijective.
12084
12085 Consolidate the image_cache to the terminal struct.
12086 * termhooks.h (P_): Remove redundant def.
12087 (struct terminal): New field `image_cache'.
12088 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
12089 of FRAME_X_IMAGE_CACHE.
12090 * xterm.h (struct x_display_info): Remove image_cache field.
12091 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12092 * w32term.h (struct w32_display_info): Remove image_cache field.
12093 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12094 * macterm.h (struct mac_display_info): Remove image_cache field.
12095 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12096 * xterm.c (x_term_init):
12097 * w32term.c (w32_term_init):
12098 * macterm.c (mac_term_init): Set the image_cache in the terminal.
12099 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
12100 Remove declarations.
12101 (clear_image_caches, mark_image_cache): New declarations.
12102 * xfaces.c (clear_face_cache):
12103 * xdisp.c (redisplay_internal): Use clear_image_caches.
12104 * image.c (clear_image_cache): Don't check that a frame is on
12105 a window-system before checking if it shares the same cache.
12106 (clear_image_caches): New function.
12107 (Fclear_image_cache): Use it.
12108 (mark_image): Move from allo.c.
12109 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
12110 * alloc.c (mark_image, mark_image_cache): Move to image.c.
12111 (mark_object): Don't call mark_image_cache for frames.
12112 (mark_terminals): Call mark_image_cache.
12113
12114 * lisp.h (Fdelete_terminal): Declare.
12115
12116 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
12117 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
12118 wrong_type_argument.
12119
121202008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
12121
12122 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
12123 malayalam.el, and tamil.el. Add sinhala.el.
12124
121252008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
12126
12127 * xterm.c (x_connection_closed): Consolidate identical tests.
12128 (x_delete_terminal): Don't crash if called via x_connection_closed.
12129
121302008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
12131
12132 * xdisp.c (decode_mode_spec): New arg string.
12133 (display_mode_element): Adjust for the above change.
12134
121352008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12136
12137 * callint.c (Fcall_interactively): Use AREF.
12138
121392008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
12140
12141 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
12142
121432008-02-18 Jan Djärv <jan.h.d@swipnet.se>
12144
12145 * xfns.c (Fx_show_tip): Set string to " " if empty.
12146
121472008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
12148
12149 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
12150 with Qt.
12151
121522008-02-17 Kenichi Handa <handa@m17n.org>
12153
12154 * ftfont.c (ftfont_shape): Return Lispy number.
12155
12156 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
12157 for GCs.
12158 (Finternal_set_font_selection_order): Call font_update_sort_order
12159 only when enable_font_backend is set.
12160 (realize_x_face): Set face->font_info to that of default face only
12161 when enable_font_backend is set.
12162
12163 * xdisp.c (handle_composition_prop): Set it->c to the fist
12164 character of the composed region.
12165 (fill_composite_glyph_string): Set base_face->font_info to
12166 s->font_info. Get a face for ascii from base_face->ascii_face.
12167 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
12168 with a face already decided.
12169 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
12170 non-negative.
12171 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
12172 call font_prepare_composition unconditionally.
12173
12174 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
12175
12176 * xterm.h (struct x_display_info): New member font.
12177
12178 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
12179 (x_set_mouse_face_gc, x_new_font): Likewise.
12180 (x_term_init): Setup display_info->font.
12181 (x_delete_terminal): Free display_info->font.
12182
12183 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
12184
12185 * ftxfont.c (ftxfont_default_fid): Delete it.
12186 (ftxfont_open): Set xfont->fid to 0.
12187 (ftxfont_end_for_frame): Clear data specific to the frame and the
12188 font-driver.
12189
12190 * xftfont.c (xftfont_default_fid): Delete it.
12191 (xftfont_open): Set xfont->fid to 0.
12192
12193 * fontset.c (FONTSET_OBJLIST): New macro.
12194 (fontset_find_font): Update font-object list of the fontset.
12195 (free_realized_fontset): New function.
12196 (free_face_fontset): Call free_realized_fontset.
12197 (Ffont_info): Call font_close_object only when enable_font_backend
12198 is set.
12199
12200 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
12201 [HAVE_NTGUI]: Include w32term.h.
12202 [MAC_OS]: Include macterm.ch.
12203 (font_otf_ValueRecord): Use make_number.
12204 (font_finish_cache): Fix handling of reference count.
12205 (font_clear_cache): Update num_fonts.
12206 (font_open_entity): Update smallest_char_width and
12207 smallest_font_height of the frame.
12208 (font_close_object): Update num_fonts.
12209 (Fclear_font_cache): Fix finding the target cache data.
12210
122112008-02-16 Glenn Morris <rgm@gnu.org>
12212
12213 * fontset.c (Finternal_char_font): Fix compilation warning.
12214
122152008-02-16 Eli Zaretskii <eliz@gnu.org>
12216
12217 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
12218 instead of char arrays. Enlarge the size of array passed to
12219 get_token_information.
12220
12221 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
12222 warnings.
12223
122242008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
12225
12226 * .gdbinit: Don't set `args', it breaks gdb --args.
12227
122282008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
12229
12230 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
12231 within a narrowed buffer.
12232
122332008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
12234
12235 * coding.c (decode_coding_object, encode_coding_object):
12236 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
12237
122382008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
12239
12240 * coding.c (coding_set_destination): Use BEG_BYTE rather than
12241 hardcoding 1.
12242 (detect_coding_system):
12243 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
12244 (string_char_to_byte, string_byte_to_char, insert_from_gap):
12245 * insdel.c (insert_from_gap):
12246 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
12247 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
12248 (string_to_multibyte):
12249 * character.c (chars_in_text, multibyte_chars_in_text):
12250 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
12251
12252 * character.h (FETCH_STRING_CHAR_ADVANCE)
12253 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
12254 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
12255 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
12256
12257 * casefiddle.c (casify_region): Only call after-change and composition
12258 functions on the part of the region that was changed.
12259
12260 * keyboard.c (read_avail_input):
12261 * frame.c (Fdelete_frame): Call Fdelete_terminal.
12262
122632008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12264
12265 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
12266 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
12267
122682008-02-11 Juanma Barranquero <lekktu@gmail.com>
12269
12270 * w32menu.c (push_submenu_start, push_submenu_end)
12271 (push_left_right_boundary, push_menu_pane, push_menu_item):
12272 * keyboard.c (read_key_sequence): Don't pass args with side effects
12273 to AREF, it fails when compiling with -DENABLE_CHECKING.
12274
122752008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
12276
12277 * Makefile.in (${lispsource}international/charprop.el):
12278 Delete this target.
12279
12280 * search.c (boyer_moore): Fix incorrect synching of the trunk and
12281 emacs-unicode-2.
12282
122832008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12284
12285 * terminal.c (Fdelete_terminal): Clean up the `force' path.
12286
122872008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12288
12289 * frame.c (Qnoelisp): New symbol.
12290 (syms_of_frame): Initialize it.
12291 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
12292 harmless Elisp code, from a strong `force' from x_connection_closed.
12293 * frame.h (Qnoelisp): Declare.
12294 * xterm.c (x_connection_closed): Pass `noelisp'.
12295
12296 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
12297 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
12298 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
12299 rather than `int' for the type of `type'.
12300
123012008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
12302
12303 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
12304
12305 * Makefile.in (GNUC): Remove support for gcc-1.x.
12306
123072008-02-10 Richard Stallman <rms@gnu.org>
12308
12309 * lisp.h (ASET): Use AREF, not ASLOT.
12310
123112008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12312
12313 * lisp.h (ASET): Check bounds.
12314
123152008-02-10 Glenn Morris <rgm@gnu.org>
12316
12317 * buffer.c (mode-name): Doc fix.
12318
123192008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12320
12321 * Makefile.in:
12322 * emacs.c:
12323 * gmalloc.c:
12324 * keyboard.c:
12325 * lisp.h:
12326 * m/ibm370aix.h:
12327 * process.c:
12328 * regex.c:
12329 * s/hpux.h:
12330 * sysdep.c:
12331 * sysselect.h:
12332 * systty.h:
12333 * unexec.c:
12334 * w32term.c:
12335 * xsmfns.c:
12336 * xterm.c: Remove code that deals with obsolete variables.
12337
12338 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12339
12340 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12341 nothing else needs it anymore.
12342
123432008-02-09 Eli Zaretskii <eliz@gnu.org>
12344
12345 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12346 instead of unibyte_char_to_multibyte.
12347
123482008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12349
12350 * s/gnu-linux.h: Remove commented out code.
12351
12352 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12353
12354 * Makefile.in: Update what RMS says about using autoconf.
12355 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12356 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12357 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12358 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12359
123602008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12361
12362 * keymap.c (Fkey_description): Move side effect outside of macro call.
12363
12364 * xfaces.c (Finternal_make_lisp_face):
12365 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12366
12367 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12368 (syms_of_fontset): Use ASET.
12369
12370 * fns.c (concat): Move side effect outside of macro call.
12371 (hash_clear): Use ASET.
12372
123732008-02-08 Richard Stallman <rms@gnu.org>
12374
12375 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12376 If FORCE, and frame has a surrogate minibuffer for another frame,
12377 delete the other frame first.
12378
123792008-02-07 Timo Savola <timo.savola@iki.fi>
12380
12381 * xterm.c (x_detect_focus_change): Handle embed client message.
12382 (handle_one_xevent): Ditto.
12383 (handle_one_xevent): If embedded and we get a button press/release,
12384 request focus.
12385 (xembed_set_info, xembed_send_message): New functions.
12386 (x_make_frame_visible): Call xembed_set_info if embedded.
12387 (x_make_frame_invisible): Call xembed_set_info if embedded.
12388 (x_term_init): Initialize Xatom_XEMBED.
12389 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12390 (x_iconify_frame): Ditto.
12391
12392 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12393 (enum xembed_info, enum xembed_message, enum xembed_focus)
12394 (enum xembed_modifier, enum xembed_accelerator): New.
12395 (xembed_set_info, xembed_send_message): Declare.
12396 (FRAME_X_EMBEDDED_P): New.
12397
12398 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12399 gtk_plug_new.
12400
12401 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12402 window ID of a frame.
12403 (x_window): Reparent frame if embedded.
12404 (Fx_create_frame): Don't set border width if embedded.
12405
12406 * emacs.c (USAGE3): Add --parent-id.
12407 (standard_args): Ditto.
12408
124092008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12410
12411 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12412
124132008-02-07 Jim Meyering <meyering@redhat.com>
12414
12415 Use "do...while (0)", not "if (1)...else" in macro definitions.
12416 The latter provokes a warning from gcc about the empty else, when
12417 followed by ";". Also, without that trailing semicolon, it would
12418 silently swallow up any following statement.
12419 * syntax.h (SETUP_SYNTAX_TABLE)
12420 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12421 * buffer.h (DECODE_POSITION): Likewise.
12422 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12423 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12424 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12425 (FETCH_CHAR_ADVANCE): Likewise.
12426 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12427
124282008-02-07 Jim Meyering <meyering@redhat.com>
12429
12430 * lread.c [lint]: Don't include <sys/inode.h>.
12431
124322008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12433
12434 * xselect.c (x_handle_dnd_message):
12435 * xmenu.c (digest_single_submenu, xmenu_show):
12436 * xdisp.c (with_echo_area_buffer_unwind_data)
12437 (format_mode_line_unwind_data, unwind_format_mode_line)
12438 (display_menu_bar):
12439 * eval.c (Ffetch_bytecode):
12440 * doc.c (store_function_docstring):
12441 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12442 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12443 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12444
124452008-02-07 Kenichi Handa <handa@m17n.org>
12446
12447 * ftxfont.c (ftxfont_open): Don't set
12448 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12449
12450 * ftfont.c (ftfont_open): Fix previous change.
12451
124522008-02-06 Jason Rumney <jasonr@gnu.org>
12453
12454 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12455 Use cached metrics for ASCII characters.
12456 (w32font_open_internal): Don't set font's owning_frame.
12457 Cache metrics for ASCII characters.
12458
12459 * w32font.h (struct w32font_info): Add ascii_metrics.
12460 Remove owning_frame.
12461
124622008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12463
12464 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12465 to negative value.
12466
12467 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12468
12469 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12470
12471 * charset.c (syms_of_charset): Set QCtest and Qeq.
12472
124732008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12474
12475 * process.c (Fstart_process):
12476 * callproc.c (Fcall_process): Handle the case where
12477 Funhandled_file_name_directory returns nil.
12478
12479 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12480 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12481 * font.c (check_gstring): Use them and AREF to access the vector before
12482 we know it's really a gstring.
12483 (Ffont_shape_text): Fix typo.
46e722a9 12484 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
12485
12486 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12487 Declare.
12488
12489 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12490
124912008-02-05 Jason Rumney <jasonr@gnu.org>
12492
12493 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12494 Set smallest_font_height and smallest_char_width in display info.
12495
124962008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12497
12498 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12499
125002008-02-05 Miles Bader <miles@gnu.org>
12501
12502 * xfaces.c (get_lface_attributes, merge_named_face)
12503 (lookup_named_face, lookup_derived_face, realize_named_face):
12504 Revert 2008-02-01 change by cyd@stupidchicken.com.
12505
125062008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12507
12508 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12509 fallback fonts.
12510 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12511
125122008-02-04 Jason Rumney <jasonr@gnu.org>
12513
12514 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12515 set full_name.
12516 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12517
125182008-02-03 Jason Rumney <jasonr@gnu.org>
12519
12520 * makefile.w32-in (OBJ1): Include font.o here.
12521 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12522
125232008-02-02 Jason Rumney <jasonr@gnu.org>
12524
12525 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12526
125272008-02-01 Jason Rumney <jasonr@gnu.org>
12528
12529 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12530
12531 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12532
125332008-02-01 Andreas Schwab <schwab@suse.de>
12534
12535 * Makefile.in (shortlisp, lisp): Update for rename of
12536 ../lisp/language/myanmar.el.
12537
125382008-02-01 Chong Yidong <cyd@stupidchicken.com>
12539
12540 * xfaces.c (get_lface_attributes): Delete function.
12541 (merge_named_face, lookup_named_face, lookup_derived_face)
12542 (realize_named_face): Call lface_from_face_name directly, and use
12543 the fact that merge_face_vectors does not alter its FROM argument.
12544
125452008-02-01 Jason Rumney <jasonr@gnu.org>
12546
12547 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12548 input in the default locale. Handle non-Unicode multibyte input.
12549
125502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12551
12552 * fontset.c (reorder_font_vector): Exclude nil elements from the
12553 font group. Don't try multiple fonts.
12554 (fontset_font): Adjust for the above change.
12555 (Finternal_char_font): Return nil if the found font doesn't
12556 contain the character ch.
12557
12558 * Makefile.in (lisp, shortlisp): Add cham.el.
12559
125602008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12561
12562 * font.h (FONTP): Make it return 1 also for a font-object.
12563
12564 * .gdbinit (xfontset): New function.
12565
12566 * font.c (font_find_for_lface): Check if the character C is
12567 supported or not only for the first font.
12568
12569 * fontset.c (reorder_font_vector): Fix typo.
12570 (fontset_find_font): Don't add a font-spec specifying a script.
12571 Use 0 (not Qt) for the indication of empty font-group. Change the
12572 format of RFONT-DEF. Return Qt if no font in the font-group
12573 support the character.
12574 (fontset_font): Adjust for the above change. If no font was
12575 found the character, remember that.
12576 (face_for_char): Adjust for the change of RFONT-DEF.
12577 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12578 no font for the target.
12579 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12580
125812008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12582
12583 * font.c (font_load_for_face): Handle the case that the font in
12584 face->lface is a string.
12585
125862008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12587
12588 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12589
125902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12591
12592 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12593 Fix previous change. If the frame is not on a window system,
12594 signal an error.
12595
125962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12597
12598 * coding.c (decode_coding_object, encode_coding_object): Adjust
12599 marker positions after conversion.
12600
12601 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12602
126032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12604
12605 * font.c (font_find_for_lface): Fix the handling of the return
12606 value of font_has_char.
12607 (Ffont_shape_text): Fix previous change.
12608
12609 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12610 (fontset_ref_and_range): Delete it.
12611 (fontset_find_font): Call char_table_ref_and_range instead of
12612 FONTSET_REF_AND_RANGE.
12613 (make_fontset): Don't setup font groups of Latin here.
12614 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12615 (new_fontset_from_font): Make the specified font the default for
12616 all Latin characters.
12617
126182008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12619
12620 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12621 is on a window system before accessing the fontset of the frame.
12622
126232008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12624
12625 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12626
12627 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12628 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12629
12630 * font.c (Ffont_shape_text): If the font driver doesn't have a
12631 shaper function, make zero-width glyphs to have at least one-pixel
12632 width. Fix setting of `to' field of glyphs.
12633
126342008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12635
12636 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12637 glyphs.
12638
12639 * font.h (struct font_driver): Improve docstring of member `shape'.
12640
126412008-02-01 Kenichi Handa <handa@m17n.org>
12642
12643 * composite.c (syms_of_composite): Fix docstring of
12644 auto-composition-function.
12645
12646 * font.h (LGLYPH_SIZE): New macro.
12647
12648 * font.c (Ffont_fill_gstring): Stop filling when a character not
12649 supported by the font is found.
12650 (Ffont_shape_text): When a shape callback function returns nil,
12651 try at most two more times with larger gstring.
12652 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12653
12654 * xdisp.c (handle_auto_composed_prop): Change the argument to
12655 auto-composition-function.
12656
12657 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12658 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12659 Lispy glyph and store it in the lgstring.
12660
12661 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12662
12663 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12664
126652008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12666
12667 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12668
12669 * fontset.c (Vfont_encoding_charset_alist): New variable.
12670 (syms_of_fontset): DEFVAR it.
12671 (reorder_font_vector, fontset_find_font): Optimize for the case of
12672 no need of reordering.
12673 (face_for_char): Map the charset property by
12674 Vfont_encoding_charset_alist.
12675
126762008-02-01 Jason Rumney <jasonr@gnu.org>
12677
12678 * w32font.c (logfonts_match): Don't check adstyle here.
12679 (font_matches_spec): Check here against physical font instead.
12680 (add_font_entity_to_list): Avoid some substitutions.
12681
12682 * font.c (font_parse_fcname): Default weight and slant to normal.
12683 (font_score): Prefer normal fonts if weight or slant unspecified.
12684 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12685 match freetype scores.
12686
126872008-02-01 Jason Rumney <jasonr@gnu.org>
12688
12689 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12690 font, as it may have been deleted.
12691 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12692 most common hyphenless variation.
12693 (logfonts_match): Check generic family.
12694 (font_matches_spec): Don't check generic family here.
12695 (fill_in_logfont): Set generic family based on adstyle.
12696
12697 * w32font.h (w32font_get_cache): Update declaration.
12698
126992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12700
12701 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12702
12703 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12704 If none of the new drivers are available, call font_update_drivers
12705 with the old drivers.
12706
12707 * w32font.c (w32font_get_cache): Adjust the argument type.
12708
12709 * xfont.c (xfont_get_cache): Adjust the argument type.
12710
12711 * font.h (struct font_driver): Change argument type of get_cache.
12712
12713 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12714
12715 * font.c (Ffont_get): Fix arguments to Fassoc.
12716 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12717 (font_clear_cache): New function.
12718 (font_list_entities, font_matching_entity): Use font_get_cache.
12719 (font_update_drivers): Call font_clear_cache when finishing a driver.
12720
12721 * fontset.c (fontset_find_font): Fix previous change.
12722
127232008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12724
12725 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12726 dpyinfo->font_table.
12727 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12728 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12729
12730 * font.c (font_at): Handle the case that the arg C is negative.
12731 Handle the unibyte case.
12732 (Ffont_at): Call font_at with the arg C -1.
12733
12734 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12735 the position here, and call font_at with the arg C -1.
12736 Don't check the range of the existing composition at the point.
12737
127382008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12739
12740 * fontset.c (fontset_add): New args charset_id and family.
12741 Change caller.
12742 (load_font_get_repertory, fontset_find_font): Assume that
12743 font_spec is always a font-spec object.
12744 (Fset_fontset_font): Always store a font-spec object in a fontset.
12745
12746 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12747 instead of get_property_and_range.
12748
127492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12750
12751 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12752 (xftfont_open): Don't keep locking face.
12753 (xftfont_close): Don't unlock face.
12754 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12755
12756 * fontset.c (fontset_find_font): Don't prefer a font of
12757 supplementary charset.
12758
127592008-02-01 Kenichi Handa <handa@m17n.org>
12760
12761 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12762 script, langsys_tag to langsys, new member script.
12763 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12764 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12765 listing to the script specified in that property. Fix arg to
12766 OTF_check_features.
12767
127682008-02-01 Jason Rumney <jasonr@gnu.org>
12769
12770 * w32font.h: New file.
12771
12772 * w32font.c: Include it.
12773 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12774 (w32font_open): Set owning_frame.
12775 (w32font_text_extents): Use owning_frame.
12776 (struct font_callback_data): Add opentype_only field.
12777 (add_font_entity_to_list): Use it to filter fonts.
12778 Don't check against full name.
12779 (w32font_list_internal): New function.
12780 (w32font_list): Use it.
12781 (w32font_match_internal): New function.
12782 (w32font_match): Use it.
12783 (w32font_open_internal): New function.
12784 (w32font_open): Use it.
12785 (w32font_get_cache, w32font_close, w32font_has_char)
12786 (w32font_encode_char, w32font_text_extents, w32font_draw):
12787 Make non-static.
12788
12789 * makefile.w32-in (w32font.o): Depend on w32font.h.
12790
127912008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12792
12793 * charset.c (Fdefine_charset_internal): Record a supplementary
12794 charset at the tail of Vcharset_order_list.
12795
12796 * font.c (Ffont_shape_text): Fix the return value.
12797
12798 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12799
12800 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12801
128022008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12803
12804 * ftfont.c (struct OpenTypeSpec): New struct.
12805 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12806 (ftfont_get_open_type_spec): New function.
12807 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12808
12809 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12810
128112008-02-01 Jason Rumney <jasonr@gnu.org>
12812
12813 * w32font.c (add_font_entity_to_list): Compare only the beginning
12814 of full name.
12815
128162008-02-01 Kenichi Handa <handa@m17n.org>
12817
12818 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12819 Never return HANDLED_RECOMPUTE_PROPS.
12820
128212008-02-01 Kenichi Handa <handa@m17n.org>
12822
12823 * font.c (font_gstring_produce): Delete it.
12824
12825 * composite.h (COMPOSITION_METHOD):
12826 Handle COMPOSITION_WITH_GLYPH_STRING.
12827
128282008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12829
12830 * xfont.c (Qx): Delete.
12831 (syms_of_xfont): Don't initialize Qx.
12832
12833 * composite.h (enum composition_method):
12834 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12835
128362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12837
12838 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12839 (choose_face_font): Accept new form of font-spec.
12840
12841 * frame.h (font_driver_list): Declare it unconditionally.
12842 (struct frame): Define members font_driver_list and font_data_list
12843 unconditionally.
12844
12845 * fontset.c: Include "font.h" unconditionally.
12846 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12847 (Fset_fontset_font): Accept a font-spec object.
12848
12849 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12850 PIXEL_SIZE part a wild card.
12851
12852 * dispextern.h (struct glyph_string): Define members clip and
12853 num_clips unconditionally.
12854 (struct face): Define members font_info and extra unconditionally.
12855
12856 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12857 ftfont_info only when HAVE_LIBOTF is defined.
12858
128592008-02-01 Andreas Schwab <schwab@suse.de>
12860
12861 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12862 and end.
12863
128642008-02-01 Jason Rumney <jasonr@gnu.org>
12865
12866 * w32font.c (w32font_driver): Add new fields.
12867
128682008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12869
12870 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12871 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12872 (LIBES): Add @M17N_FLT_CFLAGS@.
12873
12874 * composite.c (compose_text): Don't treat the new style
12875 composition specially.
12876
12877 * emacs.c (main): Call syms_of_font unconditionally.
12878
12879 * font.h (FONT_ENTITY_NOT_LOADABLE)
12880 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12881 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12882 (struct font_driver): New member shape.
12883 (font_registry_charsets): Extern it.
12884 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12885 (font_otf_capability, font_drive_otf): Delete their externs.
12886
12887 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12888 (font_charset_alist, font_registry_charsets): Move from xfont.c
12889 and rename.
12890 (font_prop_validate_otf): New function.
12891 (font_property_table): Register it for QCotf.
12892 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12893 (font_drive_otf): Delete.
12894 (font_prepare_composition): New arg F. Adjust for the change of
12895 lispy gstring.
12896 (font_find_for_lface): New arg C.
12897 (font_load_for_face): Adjust for the change of font_find_for_lface.
12898 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12899 lispy gstring.
12900 (Ffont_shape_text): New function.
12901 (Fopen_font): If the font size is not given, use 12-pixel.
12902 (Ffont_at): New arg STRING.
12903 (syms_of_font): Initalize font_charset_alist.
12904 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12905 conditionally.
12906
12907 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12908 fonts of the same font-spec. Change the format of RFONT-DEF.
12909 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12910 Adjust for the change of RFONT-DEF.
12911 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12912
12913 * ftfont.h: New file.
12914
12915 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12916 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12917 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12918 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12919 font_otf_capability and font_drive_otf, set ftfont_shape.
12920 (ftfont_list): Adjust for the change of :otf property value.
12921 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12922 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12923 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
12924 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12925 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
12926 (otf_gstring, gstring, m17n_flt_initialized): New variables.
12927
12928 * w32term.c (x_draw_composite_glyph_string_foreground):
12929 Adjust for the change of lispy gstring.
12930
12931 * xdisp.c (handle_composition_prop): Adjust for the change of
12932 lispy gstring. Call a function for auto-composition with the
12933 third arg it->window.
12934 (fill_composite_glyph_string): Adjust for the change of lispy string.
12935 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
12936
12937 * xfaces.c (set_font_frame_param): Adjust for the change of
12938 font_find_for_lface.
12939
12940 * xfont.c (x_font_charset_alist): Move to font.c and rename.
12941 (xfont_registry_charsets): Likewise. Change caller.
12942 (syms_of_xfont): Don't handle x_font_charset_alist.
12943
12944 * xftfont.c: Include "ftfont.h".
12945 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12946 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12947 (xftfont_close) [HAVE_LIBOTF]: Close otf.
12948 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12949 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
12950 Set xftfont_driver.shape to xftfont_shape.
12951
12952 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12953 the change of lispy gstring.
12954
129552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12956
12957 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
12958
129592008-02-01 Jason Rumney <jasonr@gnu.org>
12960
12961 * w32font.c (w32font_draw): Fill background manually.
12962
129632008-02-01 Jason Rumney <jasonr@gnu.org>
12964
12965 * font.c (Qfontp): Remove unused symbol.
12966 (QCantialias): New symbol.
12967 (syms_of_font): Define it.
12968 (font_property_table): Set a validator for QCantialias.
12969
12970 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
12971 Define if not already.
12972 (QCfamily): Share with xfaces.c.
12973 (Qstandard, Qsubpixel, Qnatural): New symbols.
12974 (syms_of_w32font): Define them. Don't define QCfamily here.
12975 (w32_antialias_type, lispy_antialias_type): New functions.
12976 (w32_enumfont_pattern_entity): New arg requested_font.
12977 Set antialias parameter if non-default was requested.
12978 (fill_in_logfont): Fill in lfQuality if :antialias specified.
12979
129802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12981
12982 * lread.c (read1): Undo the previous change.
12983
129842008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
12985
12986 * frame.c (Fdelete_frame): Call font_update_drivers only when
12987 USE_FONT_BACKEND is defined.
12988
129892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12990
12991 * font.h (struct font_bitmap): New member bits_per_pixel.
12992 (struct font_driver): New members start_for_frame and end_for_frame.
12993 (struct font_data_list): New struct.
12994 (font_put_frame_data, font_get_frame_data): Extern them.
12995
12996 * frame.h (struct frame): New member font_data_list.
12997
12998 * font.c (font_update_drivers): Call driver->start_for_frame and
12999 driver->end_for_frame at proper timings.
13000 (font_put_frame_data, font_get_frame_data): New functions.
13001 (Ffont_spec): Add usage in the docstring.
13002
13003 * frame.c (make_frame): Initialize f->font_data_list to NULL.
13004 (Fdelete_frame): Call font_update_drivers.
13005
13006 * xftfont.c (struct xftface_info): Delete the member xft_draw.
13007 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
13008 (xftfont_get_xft_draw): New function.
13009 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
13010 (xftfont_end_for_frame): New function.
13011 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
13012
13013 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
13014 Change argument. Cache GCs in the per-frame data.
13015 (struct ftxfont_frame_data): New struct.
13016 (ftxfont_draw_bitmap): New arg gc_fore and flush.
13017 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
13018 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
13019 (ftxfont_end_for_frame): New function.
13020 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
13021
13022 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
13023
130242008-02-01 Kenichi Handa <handa@m17n.org>
13025
13026 * xselect.c (Vselection_coding_system)
13027 (Vnext_selection_coding_system): Delete them.
13028 (syms_of_xselect): Don't declare selection-coding-system and
13029 next-selection-coding-system. They are declared in select.el.
13030
130312008-02-01 Jason Rumney <jasonr@gnu.org>
13032
13033 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
13034
13035 * w32fns.c: Include imm.h.
13036 (get_composition_string_fn, get_ime_context_fn): New optional
13037 system functions.
13038 (globals_of_w32fns): Load them from imm32.dll.
13039 (ignore_ime_char): New flag.
13040 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
13041 WM_IME_ENDCOMPOSITION messages.
13042
13043 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
13044 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
13045
130462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13047
13048 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
13049 (READCHAR_REPORT_MULTIBYTE): New macro.
13050 (readchar): New 2nd arg MULTIBYTE.
13051 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
13052 Make symbol's name multibyte according to the multibyteness of the
13053 source.
13054
130552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13056
13057 * xfaces.c (face_for_overlay_string): Call lookup_face with
13058 correct arguments (fix of synching with the trunk).
13059
130602008-02-01 Kenichi Handa <handa@m17n.org>
13061
13062 * font.c (font_prop_validate_symbol, font_prop_validate_style)
13063 (font_prop_validate_non_neg, font_prop_validate_spacing):
13064 Delete argument prop_index.
13065 (font_property_table): Change arguments to validater. Change Callers.
13066 (font_lispy_object): Delete.
13067 (font_at): Use font_find_object instead fo font_lispy_object.
13068
130692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13070
13071 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
13072 and file names.
13073
130742008-02-01 Jason Rumney <jasonr@gnu.org>
13075
13076 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
13077 (font_matches_spec): Remove debug output.
13078 (add_font_entity_to_list): Avoid using substituted fonts.
13079
130802008-02-01 Jason Rumney <jasonr@gnu.org>
13081
13082 * doc.c (Fsnarf_documentation):
13083 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
13084
130852008-02-01 Miles Bader <miles@gnu.org>
13086
13087 * dispextern.h (struct glyph_row): Only define "clip" field if
13088 HAVE_WINDOW_SYSTEM is defined.
13089
130902008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13091
13092 Fix up multi-tty merge.
13093
13094 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
13095 and indentation.
13096
13097 * xfaces.c (free_realized_face, clear_face_gcs):
13098 Include font_done_for_face in the input_blocked section, just in case.
13099
13100 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
13101 (get_char_face_and_encoding): Undo last change and remove the *other*
13102 duplicate definition (i.e. keep the one that's better scoped and that
13103 includes code for the font-backend).
13104
13105 * terminal.c (create_terminal): Default keyboard_coding to
13106 `no-conversion' and terminal_coding to `undecided'.
13107
13108 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
13109
13110 * fontset.c (free_realized_fontsets): Check that the table entry does
13111 contain a fontset before trying to compare it to `base'.
13112
13113 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
13114 syms_of_charset, and syms_of_coding earlier because init_window_once
13115 now needs Vcoding_system_hash_table to be setup.
13116
13117 * coding.h (default_buffer_file_coding): Remove.
13118
13119 * coding.c (default_buffer_file_coding): Remove.
13120 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
13121 than ->symbol, and use the terminal-local coding system.
13122 (syms_of_coding): Don't setup the coding-systems that are not
13123 terminal-local.
13124 (Fdefine_coding_system_internal): Use XCAR/XCDR.
13125
13126 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
13127 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
13128
13129 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
13130 in chartab.c and were re-added here by mistake.
13131 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
13132
13133 * doc.c (Fsnarf_documentation):
13134 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
13135 src to etc.
13136
13137 * ChangeLog.10: Add mistakenly removed entry.
13138
131392008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
13140
13141 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
13142
131432008-02-01 Miles Bader <miles@gnu.org>
13144
13145 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
13146 Add extra args to FACE_FOR_CHAR.
13147
131482008-02-01 Kenichi Handa <handa@m17n.org>
13149
13150 * keymap.c (where_is_internal_1): If key is a cons, store the copy
13151 in sequence.
13152
13153 * chartab.c (map_sub_char_table, map_char_table): If the range
13154 contains just one character, call the function with that character
13155 even if the depth is not 3.
13156
131572008-02-01 Jason Rumney <jasonr@gnu.org>
13158
13159 * w32font.c (w32font_text_extents): Calculate metrics for the
13160 whole string.
13161
131622008-02-01 Jason Rumney <jasonr@gnu.org>
13163
13164 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
13165
131662008-02-01 Jason Rumney <jasonr@gnu.org>
13167
13168 * w32term.c (x_set_glyph_string_clipping): Use
13169 get_glyph_string_clip_rects.
13170 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13171 Adjust for the change of struct glyph_string.
13172
13173 * w32font.c (w32font_draw): Do clipping here.
13174
131752008-02-01 Kenichi Handa <handa@m17n.org>
13176
13177 * xftfont.c (xftfont_draw): Adjust for the change of struct
13178 glyph_string.
13179
13180 * xterm.c (x_set_glyph_string_clipping): Use
13181 get_glyph_string_clip_rects.
13182 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13183 Adjust for the change of struct glyph_string.
13184
13185 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
13186 the resulting clip(s}.
13187 (expose_overlaps): Add arg r. Change callers. Set it to
13188 row->clip temporarily.
13189 (expose_window): Redraw rows overlapping the exposed area.
13190
13191 * dispextern.h (struct glyph_row): New member clip.
13192 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
13193 clip_height, new member clip, and num_clips.
13194
131952008-02-01 Kenichi Handa <handa@m17n.org>
13196
13197 * data.c (Fchar_or_string_p): Fix docstring.
13198
131992008-02-01 Kenichi Handa <handa@m17n.org>
13200
13201 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
13202 create a temporary XftDraw object.
13203
132042008-02-01 Kenichi Handa <handa@m17n.org>
13205
13206 * font.c (Ffontp): Fix docstring.
13207
13208 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
13209 strong evidence of ISO-2022.
13210
132112008-02-01 Kenichi Handa <handa@m17n.org>
13212
13213 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
13214 SYNTAX_ENTRY_FOLLOW_PARENT.
13215
132162008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13217
13218 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
13219 its type.
13220 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
13221 Update to the new type of weak_hash_tables and next_weak.
13222
13223 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
13224 a plain C pointer to Lisp_Hash_Table.
13225
13226 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
13227 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
13228 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
13229 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
13230 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
13231 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
13232 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
13233 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
13234 (GC_EQ): Remove since they've been identical to their non-GC_
13235 alter-egos ever since the markbit was eradicated.
13236
13237 * alloc.c:
13238 * buffer.c:
13239 * buffer.h:
13240 * data.c:
13241 * fileio.c:
13242 * filelock.c:
13243 * fns.c:
13244 * frame.h:
13245 * lisp.h:
13246 * macterm.c:
13247 * print.c:
13248 * process.c:
13249 * w32fns.c:
13250 * w32menu.c:
13251 * w32term.c:
13252 * xfns.c:
13253 * xmenu.c:
13254 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
13255
132562008-02-01 Kenichi Handa <handa@m17n.org>
13257
13258 * chartab.c (map_sub_char_table): Make it work for the top-level
13259 char-table. Fix handling of parent char-table.
13260 (map_char_table): Adjust for the above change.
13261
132622008-02-01 Jason Rumney <jasonr@gnu.org>
13263
13264 * w32font.c (Qgdi): Rename from Qw32.
13265
132662008-02-01 Jason Rumney <jasonr@gnu.org>
13267
13268 * w32bdf.c (get_quoted_string): Make function static.
13269
132702008-02-01 Kenichi Handa <handa@m17n.org>
13271
13272 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
13273 bigger ascent and descent than those of the font, use them as
13274 font's ascent and descent.
13275
132762008-02-01 Kenichi Handa <handa@m17n.org>
13277
13278 * Makefile.in (${lispsource}international/charprop.el): Move this
13279 target within "#ifdef HAVE_UNIDATA" and "#endif".
13280
132812008-02-01 Kenichi Handa <handa@m17n.org>
13282
13283 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
13284 (shortlisp): Add ../lisp/language/tai-viet.el.
13285
132862008-02-01 Ulrich Mueller <ulm@gentoo.org>
13287
13288 * Makefile.in (${lispsource}international/charprop.el): Depend on
13289 temacs${EXEEXT}.
13290
132912008-02-01 Jason Rumney <jasonr@gnu.org>
13292
13293 * w32font.c (w32font_close): Delete the GDI font object.
13294
13295 * w32menu.c: Include character.h.
13296
13297 * w32proc.c: Likewise.
13298
13299 * w32select.c: Likewise.
13300
13301 * makefile.w32-in (w32proc.o): Depend on character.h.
13302
133032008-02-01 Jason Rumney <jasonr@gnu.org>
13304
13305 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
13306
13307 * w32menu.c (syms_of_w32menu): Likewise.
13308
13309 * w32proc.c (syms_of_ntproc): Likewise.
13310
13311 * w32select.c (syms_of_w32select): Likewise.
13312
13313 * w32term.c (syms_of_w32term): Likewise.
13314
133152008-02-01 Jason Rumney <jasonr@gnu.org>
13316
13317 * w32font.c (w32font_draw): Delete brush after using it.
13318
133192008-02-01 Jason Rumney <jasonr@gnu.org>
13320
13321 * w32font.c (w32font_open): Don't set font_idx.
13322 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13323 to font settings.
13324 (w32font_draw): Fill background explicitly.
13325
133262008-02-01 Jason Rumney <jasonr@gnu.org>
13327
13328 * w32term.c (w32_initialize): Don't call w32font_initialize.
13329
13330 * w32font.c (w32font_info): Remove subranges.
13331 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13332 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13333 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13334 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13335 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13336 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13337 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13338 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13339 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13340 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13341 New symbols.
13342 (font_callback_data): New struct.
13343 (w32font_list, w32font_match): Use it.
13344 (w32font_open): Don't populate subranges.
13345 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13346 (w32font_encode_char): Always return unicode code-point as-is.
13347 (w32font_text_extents): Supply a transformation matrix to
13348 GetGlyphOutline. Never look up by glyph index. Avoid looping
13349 twice. Use unicode version of GetTexExtentPoint32 instead of
13350 glyph index version.
13351 (set_fonts_frame): Remove.
13352 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13353 set frame parameter. Use backward compatible fake foundries.
13354 Save generic family in extra slot under QCfamily. Make width slot
13355 constant. Save QCspacing value. Save list of scripts instead of
13356 binary subranges.
13357 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13358 (add_font_entity_to_list): Use font_callback_data struct. Filter
13359 unwanted fonts.
13360 (add_one_font_entity_to_list): Use font_callback_data struct.
13361 (w32_registry): Default to iso10646_1.
13362 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13363 string font registries. Don't fill in font name if it is a generic
13364 family name, fill family instead. Use spacing, family and script
13365 extra info to fill pitch, family and charset fields.
13366 (list_all_matching_fonts): Use font_callback_data struct.
13367 (unicode_range_for_char): Remove.
13368 (font_supported_scripts): New function.
13369 (w32font_initialize): Remove.
13370 (syms_of_w32font): Update which symbols are defined.
13371
133722008-02-01 Jason Rumney <jasonr@gnu.org>
13373
13374 * font.c (font_pixel_size): Reverse assq_no_quit args.
13375
13376 * w32term.h (FONT_WIDTH): Report max width, not average.
13377 (FONT_MAX_WIDTH): Remove.
13378 (FONT_AVG_WIDTH): New macro.
13379
13380 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13381 redefinition of FONT_WIDTH.
13382
13383 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13384 (w32_cache_char_metrics): Use FONT_WIDTH.
13385
13386 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13387
133882008-02-01 Jason Rumney <jasonr@gnu.org>
13389
13390 * w32font.c (w32font_open): Make lfHeight negative.
13391
13392 * w32fns.c (x_default_font_parameter): Use new style font name.
13393 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13394
133952008-02-01 Jason Rumney <jasonr@gnu.org>
13396
13397 * w32font.c (QCsubranges): New symbol.
13398 (w32font_open, w32font_has_char): Get subranges from subproperty
13399 of extra.
13400 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13401 (syms_of_w32font): Define :subranges symbol.
13402
13403 * font.c (font_put_extra): Expose externally.
13404
13405 * font.h (font_put_extra): Move declaration from font.c.
13406
13407 * font.c (Ffont_get): Use font driver to determine otf capability.
13408 (adjust_anchor): Check if driver defines anchor_point before using.
13409
13410 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13411 (w32font_draw): Use options.
13412 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13413 Fix detection of truetype fonts.
13414 (registry_to_w32_charset): Handle charsets other than iso8859-1
13415 expressed as lisp symbols.
13416 (w32_registry): Express charset as lisp symbol.
13417 (fill_in_logfont): Reverse pixel and point height logic.
13418 Don't set width here. Set quality to default.
13419
13420 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13421 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13422
13423 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13424 Remove redundant loop and allocation.
13425
13426 * makefile.w32-in (font.o, w32font.o): New objects.
13427 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13428 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13429
13430 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13431 STORE_XCHARB a valid l-value.
13432
13433 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13434 calculations for non-Truetype fonts.
13435 (x_draw_glyph_string): Sync with xterm.c.
13436 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13437 Remove redundant code.
13438 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13439
13440 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13441 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13442
13443 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13444 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13445
13446 * w32font.c: New file for w32 font backend.
13447
134482008-02-01 Kenichi Handa <handa@m17n.org>
13449
13450 * term.c: Don't include "buffer.h" twice.
13451
134522008-02-01 Kenichi Handa <handa@m17n.org>
13453
13454 * character.c (Funibyte_string): New function.
13455 (syms_of_character): Defsubr it.
13456
134572008-02-01 Jason Rumney <jasonr@gnu.org>
13458
13459 * w32term.c [USE_FONT_BACKEND]:
13460 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13461 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13462 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13463 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13464 (x_free_frame_resources): Sync with xterm.c.
13465
134662008-02-01 Andreas Schwab <schwab@suse.de>
13467
13468 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13469 char-table size.
13470
134712008-02-01 Kenichi Handa <handa@m17n.org>
13472
13473 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13474
134752008-02-01 Kenichi Handa <handa@m17n.org>
13476
13477 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13478 font_otf_gpos, add font_drive_otf.
13479
13480 * fontset.c (fontset_find_font): Pay attention to font size
13481 specified for a font.
13482 (reorder_font_vector): Check contents of font_def.
13483
13484 * font.c (struct otf_list): Delete it.
13485 (otf_list): Make it a lisp variable.
13486 (otf_open): Use lispy otf_list.
13487 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13488 (check_otf_features): New function.
13489 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13490 New functions.
13491 (font_drive_otf): New function merging font_otf_gsub and
13492 font_otf_gpos.
13493 (font_open_for_lface): New arg spec. Change argument order.
13494 (font_load_for_face): Adjust for the change of font_open_for_lface.
13495 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13496 Ffont_otf_gpos.
13497 (syms_of_font): Staticpro otf_list. Delete defsubr of
13498 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13499
13500 * xfaces.c (set_font_frame_param): Adjust for the change of
13501 font_open_for_lface.
13502
13503 * font.h (font_open_for_lface): Adjust prototype.
13504 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13505 member otf_drive.
13506 (font_otf_gsub, font_otf_gpos): Delete externs.
13507 (font_drive_otf): Extern it.
13508
135092008-02-01 Kenichi Handa <handa@m17n.org>
13510
13511 * font.c (font_at): If the window W is not on a window system,
13512 return Qnil.
13513
13514 * coding.c (produce_chars, encode_coding): Don't call
13515 insert_from_gap if no characters to produce.
13516
135172008-02-01 Kenichi Handa <handa@m17n.org>
13518
13519 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13520 Fclear_face_cache.
13521
13522 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13523
135242008-02-01 Miles Bader <miles@gnu.org>
13525
13526 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13527 Parse "--disable-font-backend" option.
13528 (standard_args): Add "--disable-font-backend" option.
13529
135302008-02-01 Kenichi Handa <handa@m17n.org>
13531
13532 * fontset.c (fontset_find_font): New function.
13533 (fontset_font): Use fontset_find_font.
13534 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13535 Register the specified font for all Latin characters.
13536 (new_fontset_from_font): Register the specified font for all Latin
13537 characters.
13538 (dump_fontset): For a realized fontset, include the base fontset
13539 name in the returned vector.
13540
135412008-02-01 Kenichi Handa <handa@m17n.org>
13542
13543 * character.h (CHAR_STRING): Cast C to unsigned on calling
13544 char_string.
13545
13546 * character.c (char_string): Type of arg C changed to unsigned.
13547 Signal an error if C is an invalid character code.
13548
13549 * editfns.c (general_insert_function, Fchar_to_string):
13550 Use CHARACTERP, not INTEGERP.
13551
135522008-02-01 Kenichi Handa <handa@m17n.org>
13553
13554 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13555 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13556
13557 * regex.c (analyse_first): Fix for multibyte characters in "case
13558 charset:" and "case categoryspec:".
13559
135602008-02-01 Andreas Schwab <schwab@suse.de>
13561
13562 * Makefile.in (LIBES): Move standard libraries to the end.
13563
135642008-02-01 Kenichi Handa <handa@m17n.org>
13565
13566 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13567 nonzero, don't shrink the buffer nextb.
13568
13569 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13570
13571 * coding.c (coding_alloc_by_making_gap): New arg offset.
13572 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13573 offset.
13574 (decode_coding_iso_2022): Update coding->safe_charsets.
13575 (decode_coding_gap): Temporarily set
13576 current_buffer->text->inhibit_shrinking to 1.
13577
135782008-02-01 Kenichi Handa <handa@m17n.org>
13579
13580 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13581 indexing into elements of s->cmp and s->char2b.
13582
135832008-02-01 Juanma Barranquero <lekktu@gmail.com>
13584
13585 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13586
135872008-02-01 Kenichi Handa <handa@m17n.org>
13588
13589 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13590 target_multibyte instead of multibyte.
13591 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13592 (bcmp_translate): Change the argument name from multibyte to
13593 target_multibyte.
13594
135952008-02-01 Kenichi Handa <handa@m17n.org>
13596
13597 These changes are to compile a regexp into a pattern that can be
13598 used both for multibyte and unibyte targets.
13599
13600 * Makefile.in (search.o): Depend on charset.h.
13601
13602 * character.c (multibyte_char_to_unibyte_safe): New function.
13603
13604 * search.c: Include "charset.h".
13605 (compile_pattern_1): Delete argument multibyte. Don't set
13606 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13607 (compile_pattern): Don't compare cp->buf.target_multibyte.
13608 Compare cp->buf.charset_unibyte.
13609 (compile_pattern): Set cp->buf.target_multibyte.
13610
13611 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13612
13613 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13614
13615 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13616 multibyte. Change callers.
13617 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13618 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13619 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13620 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13621 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13622 (regex_compile): Make the compiled pattern usable both for
13623 multibyte and unibyte targets.
13624 (analyse_first): Make the fastmap usable both for multibyte and
13625 unibyte targets.
13626 (TRANSLATE_VIA_MULTIBYTE): Delete.
13627 (re_match_2_internal): Pay attention to the case that the
13628 multibyteness of bufp and target may be different.
13629
136302008-02-01 Kenichi Handa <handa@m17n.org>
13631
13632 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13633 empty box occupy at least one column width.
13634
136352008-02-01 Miles Bader <miles@gnu.org>
13636
13637 * Makefile.in: Remove redundant HAVE_XFT clause.
13638
136392008-02-01 Kenichi Handa <handa@m17n.org>
13640
13641 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13642
136432008-02-01 Kenichi Handa <handa@m17n.org>
13644
13645 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13646 being nil.
13647
136482008-02-01 Kenichi Handa <handa@m17n.org>
13649
13650 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13651
136522008-02-01 Kenichi Handa <handa@m17n.org>
13653
13654 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13655
136562008-02-01 Kenichi Handa <handa@m17n.org>
13657
13658 * search.c (simple_search): Fix previous change.
13659
136602008-02-01 Kenichi Handa <handa@m17n.org>
13661
13662 * xftfont.c (ftfont_font_format): Extern declaration.
13663
13664 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13665
13666 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13667 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13668
13669 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13670 (ftfont_font_format): Fix previous change.
13671
13672 * font.h (Ffont_xlfd_name): EXFUN it.
13673
13674 * font.c (font_parse_xlfd): Fix the array size of `f'.
13675 (register_font_driver): Use EQ to compare driver->type.
13676
13677 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13678 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13679 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13680
136812008-02-01 Kenichi Handa <handa@m17n.org>
13682
13683 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13684 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13685
136862008-02-01 Kenichi Handa <handa@m17n.org>
13687
13688 * xfont.c (xfont_open): Set font->format.
13689
13690 * xftfont.c (xftfont_open): Set font->format.
13691
13692 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13693 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13694 (ftfont_open): Set font->format.
13695 (ftfont_font_format): New function.
13696
13697 * font.h (struct font): New member format.
13698
13699 * font.c (Qopentype): New variable.
13700 (syms_of_font): Defsym it.
13701 (Fquery_font): Change the format of the last element of the return
13702 value.
13703
137042008-02-01 Kenichi Handa <handa@m17n.org>
13705
13706 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13707 last resort.
13708
137092008-02-01 Kenichi Handa <handa@m17n.org>
13710
13711 * coding.c (detect_coding_charset): Fix detection of multi-byte
13712 charset.
13713
137142008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13715
13716 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13717
137182008-02-01 Kenichi Handa <handa@m17n.org>
13719
13720 * xdisp.c (get_next_display_element): Set it->face_id for the
13721 first component of a composition.
13722 (x_produce_glyphs): Check if the font is changed or not for composition.
13723
137242008-02-01 Kenichi Handa <handa@m17n.org>
13725
13726 * fontset.c (Qlatin): New variable.
13727 (syms_of_fontset): Define it as a lisp symbol.
13728 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13729
137302008-02-01 Kenichi Handa <handa@m17n.org>
13731
13732 * font.c (font_unparse_fcname): Pay attention to the case that
13733 some of font property is a null string.
13734
137352008-02-01 Kenichi Handa <handa@m17n.org>
13736
13737 * term.c: Include "composite.h".
13738 (encode_terminal_code): Output all components of composition.
13739 Check the size of encode_terminal_src.
13740 (produce_glyphs): For composition, call produce_composite_glyph.
13741 (append_composite_glyph, produce_composite_glyph): New functions.
13742
13743 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13744 is not found, get font_info from the current ascii face.
13745
137462008-02-01 Kenichi Handa <handa@m17n.org>
13747
13748 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13749 buffer-file-name to Qnil before calling insert_from_buffer.
13750
13751 * font.c (font_unparse_fcname): Pay attention to the case that
13752 foundry is a null string.
13753
137542008-02-01 Kenichi Handa <handa@m17n.org>
13755
13756 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13757
13758 * font.c (Qunicode_sip): New variable.
13759 (syms_of_font): Declare it as a Lisp symbol.
13760
13761 * font.h (Qunicode_sip): Extern it.
13762
137632008-02-01 Kenichi Handa <handa@m17n.org>
13764
13765 * composite.c (get_composition_id): Pay attention to TAB component.
13766
13767 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13768 TAB. Adjust for the change of s->char2b which always points to
13769 the first element of allocated memory.
13770
13771 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13772
13773 * xdisp.c (handle_composition_prop): Set it->c to the first
13774 non-TAB component.
13775 (fill_composite_glyph_string): Change argument.
13776 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13777 (x_produce_glyphs): Fix handling of left/right padding.
13778
137792008-02-01 Kenichi Handa <handa@m17n.org>
13780
13781 * coding.c (detect_coding_system): Fix for handling off
13782 inhibit_iso_escape_detection. Fix for the case that no coding
13783 system is defined for a specific coding category.
13784
137852008-02-01 Kenichi Handa <handa@m17n.org>
13786
13787 * font.c (font_matching_entity): Delete unused local var.
13788
13789 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13790 opening a font.
13791
13792 * fileio.c (Finsert_file_contents): On recovering a file, assume
13793 Unix-like eol.
13794 (choose_write_coding_system): On auto-saving a file, force
13795 Unix-like eol.
13796
13797 * coding.c (setup_coding_system): Fix setting of
13798 coding->common_flags based on eol_type.
13799 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13800 inherit from it.
13801
138022008-02-01 Kenichi Handa <handa@m17n.org>
13803
13804 * alloc.c (NSTATICS): Increas to 0x600.
13805
138062008-02-01 Kenichi Handa <handa@m17n.org>
13807
13808 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13809 (ftfont_list): Don't check :name property.
13810 (ftfont_match): New function.
13811 (ftfont_pattern_entity): If the pattern doesn't contain
13812 FC_SPACING, don't assume FC_MONO.
13813
13814 * font.h (struct font_driver): New member `match'.
13815 (font_update_drivers): Adjust prototype.
13816
13817 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13818 property of FONT.
13819 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13820 them unconditionally.
13821 (font_matching_entity): New function.
13822 (font_open_by_name): Try font_matching_entity if exact match is
13823 not found.
13824 (font_update_drivers): Delete the arg FONT. Return a list of
13825 actually used backends. Don't free faces, font caches here.
13826 Don't store data in frame parameters. Don't call x_set_font.
13827 (Ffont_spec): Store :name property as is.
13828 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13829 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13830 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13831 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13832 Call font->driver->otf_gsub instead of font_otf_gsub.
13833
13834 * frame.c (x_set_font_backend): Do more works that were done in
13835 font_update_drivers before.
13836
13837 * xfont.c (xfont_match): New function.
13838 (xfont_driver): Set xfont_driver.match to xfont_match.
13839 (xfont_draw): Set font in GC if necessary.
13840
13841 * ftxfont.c (ftxfont_match): New function.
13842 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13843
13844 * xftfont.c (xftfont_match): New function.
13845 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13846
138472008-02-01 Kenichi Handa <handa@m17n.org>
13848
13849 * font.h (struct font): New member scalable.
13850 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13851 (font_otf_gsub): Adjust prototype.
13852
13853 * font.c (font_otf_capability): Fix handling of the default langsys.
13854 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13855 Check the contents of SPEC.
13856 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13857 (check_gstring): New function.
13858 (REPLACEMENT_CHARACTER): New macro.
13859 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13860 glyph codes of GSTRING.
13861 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13862 (font_prepare_composition): Set cmp->glyph_len.
13863 (font_open_entity): Set font->scalable.
13864 (Ffont_get): Handle :otf property.
13865 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13866 functions.
13867 (Fquery_font): Use font->font.full_name.
13868 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13869 Sfont_otf_alternates.
13870
13871 * ftfont.c (ftfont_open): Set font->font.full_name and
13872 font->font.name properly. Fix calculation of font->font.height
13873 and font->min_width.
13874
13875 * ftxfont.c (ftxfont_create_gcs): New function.
13876 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13877 (ftxfont_draw_backgrond): Fix filling region.
13878 (ftxfont_default_fid): New function.
13879 (ftxfont_open): Set xfont->fid to the return value of
13880 ftxfont_default_fid.
13881 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13882 (ftxfont_done_face): Free only GCs that are created by
13883 ftxfont_create_gcs.
13884 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13885
13886 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13887 Clip to src->width, etc (not src->clip_XXX).
13888
13889 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13890 FontBackend frame parameter.
13891
138922008-02-01 Kenichi Handa <handa@m17n.org>
13893
13894 * font.h (struct font_driver_list): New member `on'.
13895 (Fclear_font_cache): EXFUN it.
13896 (font_update_drivers): Extern it.
13897
13898 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13899 (font_list_entities): Check driver_list->on.
13900 (register_font_driver): Initalize `on' member to 0.
13901 (font_update_drivers): New function.
13902 (Fclear_font_cache): Check driver_list->on.
13903
13904 * frame.h (Qfont_backend): Extern it.
13905 (x_set_font_backend): Extern it.
13906
13907 * frame.c (Qfont_backend): New variable.
13908 (frame_parms): New element for font-backend.
13909 (x_set_font_backend): New function.
13910
13911 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13912 FontBackend frame parameter.
13913 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13914 x_set_font_backend.
13915
13916 * xfont.c (xfont_list): Don't try listing by :name property if the
13917 name is not for XLFD.
13918
139192008-02-01 Kenichi Handa <handa@m17n.org>
13920
13921 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13922 (LGLYPH_SET_TO): New macros.
13923 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
13924 element of G is vector or not.
13925 (font_at): Extern it.
13926
13927 * font.c: Include window.h.
13928 (font_lispy_object): New function.
13929 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
13930 end of valid glyph.
13931 (font_close_object): Fix getting (struct font *).
13932 (font_at): New function.
13933 (Ffont_get): If FONT is a font-object, get entity from it.
13934 (Ffont_make_gstring): Initialize elements of glyphs with nil.
13935 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
13936 range check.
13937 (Ffont_at): New function.
13938 (syms_of_font): Defsubr Sfont_at.
13939
13940 * xdisp.c (it_props): Move the entry for Qauto_composed to just
13941 before the entry for Qcomposition.
13942 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
13943 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
13944 the font in gstring.
13945 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
13946 LGLYPH_FORM (g) to detect the end of valid glyph.
13947 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
13948 we are composing with gstring.
13949
13950 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
13951 Check if adjustment is vector or not.
13952
13953 * Makefile.in (font.o): Make it depends on window.h.
13954
139552008-02-01 Kenichi Handa <handa@m17n.org>
13956
13957 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
13958 adjustment is vector or not.
13959
139602008-02-01 Miles Bader <miles@gnu.org>
13961
13962 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
13963
139642008-02-01 Kenichi Handa <handa@m17n.org>
13965
13966 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
13967 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
13968 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
13969
13970 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
13971 (DEVICE_DELTA): Fix typo.
13972 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
13973 LGLYPH format.
13974
13975 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13976 the change of LGLYPH format.
13977
139782008-02-01 Kenichi Handa <handa@m17n.org>
13979
13980 * ftfont.c (ftfont_list): Fix typo.
13981 (ftfont_build_basic_charsets): Don't include letters with diacritics.
13982
139832008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13984
13985 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
13986
13987 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
13988 xftface_info is non-NULL.
13989
139902008-02-01 Jan Djärv <jan.h.d@swipnet.se>
13991
13992 * ftfont.c (ftfont_list): Move misplaced #endif.
13993
139942008-02-01 Kenichi Handa <handa@m17n.org>
13995
13996 * ftfont.c (ftfont_list): Pay attention to the case that
13997 FC_CAPABILITY is not defined.
13998
139992008-02-01 Kenichi Handa <handa@m17n.org>
14000
14001 * xftfont.c (xftfont_open): Set charset related members to -1.
14002
14003 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
14004 QCname.
14005 (ftfont_open): Set charset related members to -1.
14006
14007 * fontset.c (Votf_script_alist): New variable.
14008 (syms_of_fontset): Initialize it.
14009 (fontset_font): Delete unused variable.
14010
14011 * fontset.h (Votf_script_alist): Extern it.
14012
14013 * font.c (font_find_for_lface): Optimize code.
14014
14015 * font.h (font_close_object, font_merge_old_spec): Extern them.
14016
140172008-02-01 Kenichi Handa <handa@m17n.org>
14018
14019 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
14020 (syms_of_font): Initialize them.
14021 (font_pixel_size): Allow float value in dpi.
14022 (font_prop_validate_type): Delete.
14023 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
14024 Change caller.
14025 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
14026 (font_prop_validate_extra): Delete.
14027 (font_prop_validate_spacing): New function.
14028 (font_property_table): Add elements for all known properties.
14029 (get_font_prop_index): Rename from check_font_prop_name. New
14030 argument FROM. Change caller.
14031 (font_prop_validate): Validate all known properties.
14032 (font_put_extra): Delete argument force. Change caller.
14033 (font_expand_wildcards): Make it static. Fix the way of shrinking
14034 the possible range.
14035 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
14036 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
14037 Change caller.
14038 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
14039 (font_parse_fcname): Delete argument merge. Fix parsing of point
14040 size. Don't validate properties values here. Change caller.
14041 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
14042 (font_open_by_name): Delete unused variable.
14043 (Ffont_spec): Likewise. Validate property values.
14044 (Ffont_match_p): New function.
14045
14046 * font.h (QCscalable): Extern it.
14047 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
14048
14049 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
14050
14051 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
14052 (xfont_list_pattern): New function.
14053 (xfont_list): Use xfont_list_pattern.
14054
140552008-02-01 Kenichi Handa <handa@m17n.org>
14056
14057 * font.h (Flist_fonts): EXFUN it.
14058
140592008-02-01 Jason Rumney <jasonr@gnu.org>
14060
14061 * w32term.c (w32_initialize): Add back smoothing_type and
14062 smoothing_enabled definitions.
14063
140642008-02-01 Kenichi Handa <handa@m17n.org>
14065
14066 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
14067 s->face->font on determining underline position.
14068
140692008-02-01 Kenichi Handa <handa@m17n.org>
14070
14071 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
14072 (font_has_char): Accept font-object too.
14073 (font_find_for_lface): Try at first with a size specified in face.
14074
140752008-02-01 Kenichi Handa <handa@m17n.org>
14076
14077 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
14078 font_open_by_name.
14079
140802008-02-01 Kenichi Handa <handa@m17n.org>
14081
14082 * font.h (QCspacing, QCdpi): Extern them.
14083 (enum font_spacing): New enum.
14084 (FONT_PIXEL_SIZE_QUANTUM): New macro.
14085
14086 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
14087 (QCspacing, QCdpi): New variables.
14088 (syms_of_font): Initialize them.
14089 (font_pixel_size): New function.
14090 (font_put_extra): New function.
14091 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
14092 in FONT_EXTRA.
14093 (font_parse_fcname): Handle enumerated values (e.g. bold).
14094 Fix handling font size. Add QCname property that contains only
14095 unknown properties.
14096 (font_score): Change argument. Change caller. Pay attention to
14097 FONT_PIXEL_SIZE_QUANTUM.
14098 (font_sort_entites, font_list_entities, font_find_for_lface)
14099 (font_open_for_lface, font_open_by_name): Fix handling of font size.
14100 (Ffont_spec): Add QCname property that contains only unknown properties.
14101
14102 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
14103 include weight in listing pattern, instead check weight of each
14104 listed font. Don't include scalable in pattern. Pay attention to
14105 FONT_PIXEL_SIZE_QUANTUM.
14106
141072008-02-01 Kenichi Handa <handa@m17n.org>
14108
14109 * font.c (font_parse_fcname): Fix parsing of point-size.
14110 (font_unparse_fcname): Produce symbolic names for style properties.
14111 (font_list_entities): Handle float size correctly.
14112 (font_open_by_name): Prefer `normal' property values if the name
14113 doesn't specify them.
14114
14115 * fontset.c (Finternal_char_font): Use font_get_name, not
14116 Ffont_xlfd_name.
14117
14118 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
14119 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
14120 pattern. Don't force scalable.
14121
14122 * xftfont.c (xftfont_open): For generating a name, start from
14123 96-byte buffer.
14124
141252008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14126
14127 * frame.h (x_new_fontset2): Fix prototype.
14128
141292008-02-01 Kenichi Handa <handa@m17n.org>
14130
14131 * font.h (struct font_driver): Delete member parse_name.
14132 (font_match_p, font_get_spec, font_parse_fcname)
14133 (font_unparse_fcname): Extern them.
14134 (font_get_name): Adjust prototype.
14135
14136 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
14137 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
14138 (font_expand_wildcards): Fix handling ENCODING field. Avoid
14139 unnecessary checks for weight, slant, and swidth.
14140 (font_parse_fcname): New function.
14141 (font_unparse_fcname): New function.
14142 (font_parse_name): New function.
14143 (font_match_p): New function.
14144 (font_get_name): Change return value to Lisp string.
14145 (font_get_spec): New function.
14146 (Qunspecified, Qignore_defface): Don't extern them.
14147 (font_find_for_lface): Assume that LFACE is fully specified.
14148 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
14149 object, use it for FACE.
14150 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
14151 driver->parse_name.
14152 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
14153
14154 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
14155 prototype.
14156
14157 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
14158 argument F. Don't call Fnew_fontset. Instead, directly call
14159 make_fontset.
14160
14161 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
14162
14163 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
14164 of x_new_fontset2.
14165
14166 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
14167 (Qsans__serif): New variables.
14168 (ftfont_generic_family_list): New variable.
14169 (syms_of_ftfont): Initialize the above variables.
14170 (ftfont_pattern_entity): Delete argument NAME.
14171 (ftfont_list_generic_family): New function.
14172 (ftfont_parse_name): Delete this function.
14173 (ftfont_list): Try generic family only when FcFontList found no font.
14174 (ftfont_list_family): Fix args to FcObjectSetBuild.
14175
14176 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
14177 object in attrs[LFACE_FONT_INDEX].
14178 (set_lface_from_font_name): Cancel all changes for font-backend.
14179 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
14180 function.
14181 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
14182 font object in QCfont attribute.
14183 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
14184 (realize_default_face) [USE_FONT_BACKEND]: Call
14185 set_lface_from_font_and_fontset.
14186
14187 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
14188 "fixed", and signal error here if no suitable font was found.
14189
14190 * xfont.c (xfont_parse_name): Delete this function.
14191
14192 * xftfont.c (xftfont_open): Change coding style of error
14193 handling. Generate fontconfig's fontname pattern.
14194
14195 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
14196 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
14197
14198 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
14199 Both args FONTSET and FONT_OBJECT must be existing ones.
14200
142012008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14202
14203 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
14204
142052008-02-01 Kenichi Handa <handa@m17n.org>
14206
14207 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
14208
14209 * font.h (struct font): Fix typo.
14210
14211 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
14212 XLFD_XXX_INDEX.
14213 (enum xlfd_field_mask): New enum.
14214 (intern_font_field): Changed argument. Change caller. If digits
14215 are followed by non-digits, return a symbol.
14216 (font_expand_wildcards): New function.
14217 (font_parse_xlfd): Fix wildcard handling.
14218 (Ffont_spec): If :name is specified, reflect the info in the other
14219 properties.
14220
14221 * ftfont.c (ftfont_pattern_entity): Fix typo.
14222 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
14223 locale.
14224
142252008-02-01 Kenichi Handa <handa@m17n.org>
14226
14227 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
14228
14229 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
14230 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
14231 registry doesn't specify encoding part.
14232 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
14233 (font_open_by_name): At first try parsing the name.
14234 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
14235 as Lisp symbols.
14236
14237 * fontset.c (reorder_font_vector): Pay attention to the case that
14238 the 3rd element of font_def is nil.
14239 (fontset_font): For the default fontset, append one more fontset
14240 elements for a script-based font specification. Don't add script
14241 attribute on finding a font.
14242 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
14243 font name.
14244 (fontset_ascii_font): If a font can't be opened, return nil.
14245
14246 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
14247 (ftfont_pattern_entity): New function.
14248 (ftfont_get_cache): Assume that freetype_font_cache is already
14249 initialized.
14250 (ftfont_list): Handle the case that a file is specified in font
14251 name. Use ftfont_pattern_entity to generate entities.
14252 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
14253 (syms_of_ftfont): Initialize freetype_font_cache.
14254
14255 * xftfont.c (xftfont_open): Make the font name fontconfig's
14256 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
14257 (xftfont_close): Free font->font.name if not NULL.
14258
14259 * xfont.c (xfont_list): If script is specified for a font, return
14260 null_vector.
14261 (xfont_list_family): Declare argument type.
14262
14263 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
14264 name, set LFACE_FONT (lface) to nil.
14265
14266 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
14267 return Qnil.
14268
142692008-02-01 Kenichi Handa <handa@m17n.org>
14270
14271 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
14272 (standard_args): Add "-enable-font-backend".
14273
142742008-02-01 Kenichi Handa <handa@m17n.org>
14275
14276 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
14277 (struct xftdraw_list, xftdraw_list): Delete them.
14278 (register_xftdraw, check_xftdraw): Delete them.
14279 (xftfont_prepare_face): Don't call register_xftdraw.
14280 (xftfont_done_face): Don't call check_xftdraw.
14281 (xftfont_draw): Get background color only when with_background is
14282 nonzero.
14283
14284 * xfont.c (xfont_encode_char): Fix calculation of char2b.
14285
142862008-02-01 Kenichi Handa <handa@m17n.org>
14287
14288 These changes are for the new font handling codes.
14289
14290 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
14291 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
14292 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
14293 (FONTSRC, FONTOBJ): New variables.
14294 (obj): Add $(FONTOBJ).
14295 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
14296 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
14297 @LIBOTF_LIBS@.
14298 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
14299 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
14300
14301 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
14302
14303 * character.h (Vscript_representative_chars): Extern it.
14304
14305 * character.c (Vscript_representative_chars): New variable.
14306 (syms_of_character): Declare it as a Lisp variable.
14307
14308 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
14309 enable_font_backend is nonzero, accept the composition method
14310 COMPOSITION_WITH_GLYPH_STRING.
14311
14312 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
14313 enumeration COMPOSITION_WITH_GLYPH_STRING.
14314
14315 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
14316 members clip_x, clip_y, clip_width, and clip_height.
14317 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14318
14319 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14320 --enable-font-backend. Call syms_of_font.
14321
14322 * fns.c (assoc_no_quit): New function.
14323
14324 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14325 (face_for_font, new_fontset_from_font)
14326 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14327
14328 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14329 (fontset_font, fontset_ascii, face_for_char)
14330 (make_fontset_for_ascii_face, Ffont_info)
14331 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14332 is nonzero, use font-backend mechanism.
14333 (find_font_encoding): Make it non-static.
14334 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14335 New functions.
14336
14337 * frame.h (struct frame): New members resx and resy.
14338 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14339 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14340
14341 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14342 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14343
14344 * lisp.h (assoc_no_quit): Extern it.
14345
14346 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14347 Through out the file, use FONT_INFO_FROM_FACE instead of
14348 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14349 rif->per_char_metric.
14350 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14351 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14352 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14353 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14354 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14355 nonzero, use font-backend mechanism.
14356 (get_per_char_metric): New function.
14357
14358 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14359 (set_lface_from_font_name)
14360 (set_font_frame_param, free_realized_face)
14361 (prepare_face_for_display, clear_face_gcs)
14362 (Finternal_set_font_selection_order, realize_x_face)
14363 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14364 font-backend mechanism.
14365 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14366 (load_face_font) [USE_FONT_BACKEND]: Abort.
14367 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14368 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14369
14370 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14371 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14372 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14373 nonzero, register all available font drivers. Call
14374 x_default_font_parameter for deciding a font.
14375 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14376
14377 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14378 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14379 (x_set_glyph_string_clipping_exactly)
14380 (x_compute_glyph_string_overhangs)
14381 (x_draw_glyph_string_foreground)
14382 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14383 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14384 enable_font_backend is nonzero, use font-backend mechanism.
14385 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14386
143872008-02-01 Kenichi Handa <handa@m17n.org>
14388
14389 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14390 system_eol_type.
14391 (syms_of_coding): Initialize system_eol_type.
14392
14393 * process.c (Fset_process_coding_system): Inherit system's eol
14394 format if necessary.
14395
143962008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14397
14398 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14399
144002008-02-01 Kenichi Handa <handa@m17n.org>
14401
14402 * coding.c (decode_eol): Pay attention to buffer relocation in
14403 del_range_2.
14404 (decode_coding): Call decode_eol before restoring undo_list.
14405
144062008-02-01 Kenichi Handa <handa@m17n.org>
14407
14408 * charset.c (Fdefine_charset_internal): Fix setting of
14409 emacs_mule_bytes.
14410
144112008-02-01 Kenichi Handa <handa@m17n.org>
14412
14413 * keyboard.c (read_char): Check if C is a character or not before
14414 looking up Vkeyboard_translate_table.
14415
144162008-02-01 Kenichi Handa <handa@m17n.org>
14417
14418 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14419 condition to terminate the loop.
14420
144212008-02-01 Kenichi Handa <handa@m17n.org>
14422
14423 * coding.c (produce_composition): Compare charbuf[i] instead of
14424 args[i] against 0.
14425 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14426
144272008-02-01 Kenichi Handa <handa@m17n.org>
14428
14429 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14430 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14431 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14432 detect_coding.
14433 (emacs_mule_char): Handle old style (Emacs 20) component character
14434 of a composition.
14435 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14436 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14437 composition rule.
14438 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14439
144402008-02-01 Kenichi Handa <handa@m17n.org>
14441
14442 * coding.c (encode_coding_ccl): Allocate destination dynamically
14443 when necessary.
14444
144452008-02-01 Kenichi Handa <handa@m17n.org>
14446
14447 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14448 the loop. When quitted, show a proper error message.
14449
144502008-02-01 Kenichi Handa <handa@m17n.org>
14451
14452 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14453 src->clip_head and src->clip_tail temporarily instead of src->hl.
14454
14455 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14456 character sequence.
14457 (Fccl_execute_on_string): Use ASET, not XSET.
14458
144592008-02-01 Kenichi Handa <handa@m17n.org>
14460
14461 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14462
144632008-02-01 Kenichi Handa <handa@m17n.org>
14464
14465 * coding.c (decode_coding): Fix the condition of terminating the
14466 decoding loop.
14467
144682008-02-01 Kenichi Handa <handa@m17n.org>
14469
14470 * data.c (Faset): On setting a character bigger than 255 in a
14471 unibyte string, signal an error instead of make the string multibyte.
14472
144732008-02-01 Kenichi Handa <handa@m17n.org>
14474
14475 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14476 made by a mapping table.
14477
144782008-02-01 Kenichi Handa <handa@m17n.org>
14479
14480 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14481 not.
14482 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14483 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14484
14485 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14486 s->face is NULL or not.
14487
144882008-02-01 Kenichi Handa <handa@m17n.org>
14489
14490 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14491 (x_draw_glyph_string): Fix drawing of right_overhang and
14492 left_overhang around/on cursor.
14493
14494 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14495
144962008-02-01 Kenichi Handa <handa@m17n.org>
14497
14498 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14499
145002008-02-01 Kenichi Handa <handa@m17n.org>
14501
14502 * coding.c (Fdefine_coding_system_internal)
14503 (Fdefine_coding_system_alias): Avoid a duplicated element in
14504 Vcoding_system_alist.
14505
145062008-02-01 Kenichi Handa <handa@m17n.org>
14507
14508 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14509
14510 * coding.c (Qcoding_system_define_form): New variable.
14511 (syms_of_coding): Intern and staticpro it.
14512 (Fcoding_system_p): Check Qcoding_system_define_form.
14513 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14514
14515 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14516 Fcoding_system_p.
14517 (CHECK_CODING_SYSTEM): If ID is not available, call
14518 Fcheck_coding_system.
14519 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14520 Try also Fcheck_coding_system.
14521
145222008-02-01 Kenichi Handa <handa@m17n.org>
14523
14524 * coding.c (code_conversion_restore): GCPRO arg.
14525
145262008-02-01 Kenichi Handa <handa@m17n.org>
14527
14528 * character.c (lisp_string_width): Check multibyteness of STRING.
14529
145302008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14531
14532 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14533 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14534 (decode_mac_font_name): Use decode_coding_c_string instead of
14535 decode_coding.
14536 (x_load_font): Initialize fontp->fontset to -1. Set
14537 fontp->encoding_type.
14538
145392008-02-01 Kenichi Handa <handa@m17n.org>
14540
14541 * search.c (search_buffer): Give up BM search on case-fold-search
14542 if one of a target character has a case-equivalence of different
14543 byte length even if that target charcter is an ASCII.
14544 (simple_search): Fix calculation of byte length of matched text.
14545 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14546
145472008-02-01 Kenichi Handa <handa@m17n.org>
14548
14549 * coding.c (decode_coding): Fix handling of invalid bytes.
14550
145512008-02-01 Kenichi Handa <handa@m17n.org>
14552
14553 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14554 Unicode characters.
14555
145562008-02-01 Kenichi Handa <handa@m17n.org>
14557
14558 * coding.c (encode_coding_object): If a pre-write-conversion
14559 function makes a new buffer, kill it.
14560
145612008-02-01 Kenichi Handa <handa@m17n.org>
14562
14563 * coding.c (QCascii_compatible_p): New variable.
14564 (syms_of_coding): Initialize it.
14565 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14566 calling string_char.
14567 (record_conversion_result): Add `default:' case.
14568 (coding_charset_list): Delete unused variable `coding_type'.
14569 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14570 property in the plist of the coding system.
14571 (Fcoding_system_put): Check QCascii_compatible_p.
14572
145732008-02-01 Miles Bader <miles@gnu.org>
14574
14575 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14576 removed calculation of frame `f', as it's now used.
14577
145782008-02-01 Kenichi Handa <handa@m17n.org>
14579
14580 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14581 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14582 (UNIDATA): New variable.
14583 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14584 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14585 $(RUN_TEMACS) unconditionally.
14586
145872008-02-01 Kenichi Handa <handa@m17n.org>
14588
14589 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14590 (admindir): New variable.
14591 ($(lispsource)international/charprop.el): New target.
14592
145932008-02-01 Miles Bader <miles@gnu.org>
14594
14595 * character.c (chars-in-region): Remove obsolete function.
14596 (syms_of_character): Remove its initialization.
14597
145982008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14599
14600 * w32select.c (validate_coding_system)
14601 (setup_windows_coding_system): New functions.
14602 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14603 setup_windows_coding_system.
14604 (setup_config, Fw32_get_clipboard_data): Use
14605 validate_coding_system.
14606 (Fx_selection_exists): Move call to setup_config to a place
14607 where signals are allowed.
14608
14609 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14610 (Fcheck_coding_system): Add declarations.
14611
146122008-02-01 Kenichi Handa <handa@m17n.org>
14613
14614 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14615
146162008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14617
14618 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14619 string as the second argument for x_new_fontset.
14620
146212008-02-01 Kenichi Handa <handa@m17n.org>
14622
14623 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14624 (encode_coding_object): Use safe_call instead of call2.
14625
146262008-02-01 Kenichi Handa <handa@m17n.org>
14627
14628 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14629
14630 * Makefile.in (lisp): Include charprop.el.
14631
146322008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14633
14634 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14635 Not sure if it's unnecessary.
14636
146372008-02-01 Steven Tamm <steventamm@mac.com>
14638
14639 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14640 some possibly unnecessary fontset checking code that crashed
14641 when creating a new frame.
14642
146432008-02-01 Kenichi Handa <handa@m17n.org>
14644
14645 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14646 lookup_face.
14647
14648 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14649
14650 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14651
146522008-02-01 Kenichi Handa <handa@m17n.org>
14653
14654 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14655 (coding_charset_list): New function.
14656
14657 * coding.h (coding_charset_list): Extern it.
14658
146592008-02-01 Kenichi Handa <handa@m17n.org>
14660
14661 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14662 concatenation of family and registry.
14663
146642008-02-01 Kenichi Handa <handa@m17n.org>
14665
14666 * character.h (BYTE8_STRING): Fix typo.
14667
14668 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14669 string to multibyte (sync to HEAD).
14670
14671 * casefiddle.c (casify_region): Handle changes in byte-length
14672 using replace_range_2 (sync to HEAD).
14673
146742008-02-01 Andreas Schwab <schwab@suse.de>
14675
14676 * chartab.c (map_char_table): GCPRO table and arg.
14677
146782008-02-01 Kenichi Handa <handa@m17n.org>
14679
14680 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14681 already at limit.
14682
146832008-02-01 Kenichi Handa <handa@m17n.org>
14684
14685 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14686 instead of fast_c_string_match_ignore_case.
14687 (find_font_encoding): Change argument to Lisp_Object. Use
14688 fast_string_match_ignore_case instead of
14689 fast_c_string_match_ignore_case. Change caller.
14690
146912008-02-01 Kenichi Handa <handa@m17n.org>
14692
14693 * xdisp.c (get_next_display_element): In unibyte case, decide to
14694 display in octal form by checking a character by
14695 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14696
14697 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14698
14699 * character.c (unibyte_has_multibyte_table): New variable.
14700
14701 * character.h (unibyte_has_multibyte_table): Extern it.
14702 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14703
147042008-02-01 Kenichi Handa <handa@m17n.org>
14705
14706 * coding.c (encode_coding_iso_2022): Fix handling of charset
14707 annotation.
14708
147092008-02-01 Kenichi Handa <handa@m17n.org>
14710
14711 * coding.c (setup_coding_system): If coding_system is nil, use
14712 Qundecided.
14713 (Fterminal_coding_system): Return nil if terminal coding system is
14714 `undecided'.
14715 (syms_of_coding): Define coding-system `undecided' here. Setup
14716 terminal_coding as `undecided'.
14717
147182008-02-01 Kenichi Handa <handa@m17n.org>
14719
14720 * xdisp.c (message_dolog, set_message_1): Call
14721 unibyte_char_to_multibyte with arg type int.
14722
14723 * lread.c (read1): Fix reading of a char-table.
14724
14725 * print.c (print_object): Include sub char-table in circularities
14726 detection.
14727
147282008-02-01 Kenichi Handa <handa@m17n.org>
14729
14730 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14731 Append the found sequences in car of ARGS instead of prepending.
14732
147332008-02-01 Kenichi Handa <handa@m17n.org>
14734
14735 * fileio.c (report_file_error): Make a unibyte string from
14736 strerror (errorno).
14737 (Fsubstitute_in_file_name): Fix the arg to
14738 unibyte_char_to_multibyte. It is evaluated twice.
14739
147402008-02-01 Kenichi Handa <handa@m17n.org>
14741
14742 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14743
147442008-02-01 Kenichi Handa <handa@m17n.org>
14745
14746 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14747 BOM is not found.
14748 (detect_coding, detect_coding_system): Optimization for ISO-2022
14749 when no 8-bit data is found.
14750
147512008-02-01 Jason Rumney <jasonr@gnu.org>
14752
14753 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14754
147552008-02-01 Kenichi Handa <handa@m17n.org>
14756
14757 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14758 CHARS.
14759
147602008-02-01 Steven Tamm <steventamm@mac.com>
14761
14762 * macterm.c (mac_encode_char): Add charset argument and update
14763 to use encoding_type.
14764 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14765 switch to pure fontset.
14766 (decode_mac_font_name): Temporarily remove decoding.
14767 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14768 (x_load_font): Temporarily remove encoding.
14769
147702008-02-01 Kenichi Handa <handa@m17n.org>
14771
14772 * xfaces.c (Fface_font): If frame is not on a window system,
14773 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14774 refer to face->font.
14775 (split_font_name_into_vector, build_font_name_from_vector)
14776 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14777 when HAVE_WINDOW_SYSTEM is defined.
14778
147792008-02-01 Kenichi Handa <handa@m17n.org>
14780
14781 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14782 (x_produce_glyphs): Fix setting of members of cmp in case
14783 cmp->glyph_len is zero.
14784
14785 * fontset.c (Fset_fontset_font): Fix docstring.
14786 (Ffontset_info): Make it backward compatible. New arg ALL.
14787
147882008-02-01 Kim F. Storm <storm@cua.dk>
14789
14790 * process.c (read_process_output): Grow decoding_buf when needed;
14791 this could cause a crash in allocate_string and compact_small_strings.
14792
147932008-02-01 Kenichi Handa <handa@m17n.org>
14794
14795 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14796
147972008-02-01 Kenichi Handa <handa@m17n.org>
14798
14799 * coding.c (setup_coding_system): Set coding->common_flags
14800 correctly for raw-text.
14801 (consume_chars): On encoding unibyte text by raw-text, don't check
14802 multibyte form.
14803 (encode_coding): On encoding by raw-text, never use translation tables.
14804
14805 * fileio.c (e_write): Short cut for the case of no encoding.
14806
148072008-02-01 Kenichi Handa <handa@m17n.org>
14808
14809 * coding.c (detect_coding, detect_coding_system): Delete unused
14810 variables.
14811
148122008-02-01 Kenichi Handa <handa@m17n.org>
14813
14814 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14815 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14816
148172008-02-01 Kenichi Handa <handa@m17n.org>
14818
14819 * coding.c (Ffind_coding_systems_region_internal): Include
14820 raw-text and no-conversion in the result.
14821
148222008-02-01 Kenichi Handa <handa@m17n.org>
14823
14824 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14825 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14826 FONT_DEF.
14827 (font_def_arg, add_arg, from_arg, to_arg): New args.
14828 (set_fontset_font): Change argument.
14829 (Fset_fontset_font): Fix for the case that TARGET is a script
14830 name and charset name.
14831 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14832
148332008-02-01 Kenichi Handa <handa@m17n.org>
14834
14835 * fontset.c (fontset_font): Rename from fontset_face. Change return
14836 value.
14837 (face_suitable_for_char_p, face_for_char): Adjust for the change
14838 of fontset_font.
14839 (make_fontset_for_ascii_face): Fix setting of the fontset element
14840 for ASCII.
14841 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14842 to get a font name.
14843 (Ffontset_info): Adjust for the change of fontset_font.
14844
14845 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14846
14847 * character.h (LEADING_CODE_LATIN_1_MIN)
14848 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14849
148502008-02-01 Kenichi Handa <handa@m17n.org>
14851
14852 * editfns.c (check_translation): New function.
14853 (Ftranslate_region_internal): Handle M:N mapping.
14854
148552008-02-01 Kenichi Handa <handa@m17n.org>
14856
14857 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14858
148592008-02-01 Kenichi Handa <handa@m17n.org>
14860
14861 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14862 goto invalid_code.
14863 (decode_coding_iso_2022): Fix handling of invalid designation.
14864
14865 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14866 after calling code_conversion_save.
14867
148682008-02-01 Kenichi Handa <handa@m17n.org>
14869
14870 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14871
14872 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14873
14874 * fontset.c: Include "intervals.h".
14875 (fontset_face): Fix comparing of Lisp_Objects.
14876 (free_face_fontset, new_fontset_from_font_name): Fix
14877 Lisp_Object/int mixup.
14878
14879 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14880
14881 * coding.c: Add many prototypes for static functions.
14882 (get_translation_table): Allow max_lookup to be NULL.
14883 (decode_coding, Ffind_coding_systems_region_internal)
14884 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14885 get_translation_table with max_lookup NULL.
14886
148872008-02-01 Kenichi Handa <handa@m17n.org>
14888
14889 * coding.c (get_translation_table): Declare it as Lisp_Object.
14890 (LOOKUP_TRANSLATION_TABLE): New macro.
14891 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14892 instead of CHAR_TABLE_REF.
14893
148942008-02-01 Kenichi Handa <handa@m17n.org>
14895
14896 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14897 annotation data format.
14898 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14899 Change arguments FROM and TO to single argument NCHARS. Change caller.
14900 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14901 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14902 (decode_coding_ccl, decode_coding_charset): Pay attention to
14903 coding->charbuf_used.
14904 (get_translation): New function.
14905 (produce_chars): New arguments translation_table and last_block.
14906 Translate characters here. Return number of carryover chars.
14907 Change caller.
14908 (produce_composition): New argument pos. Change caller.
14909 Adjust for the change of annotation data format.
14910 (produce_charset, produce_annotation): Likewise.
14911 (decode_coding, encode_coding): Don't call translate_chars.
14912 (consume_chars): New arg translation_table. Change caller.
14913 (translate_chars): Delete.
14914 (syms_of_coding): Make translation-table's number of extra slots 2.
14915
149162008-02-01 Kenichi Handa <handa@m17n.org>
14917
14918 * search.c (simple_search): Fix setting this_pos_byte in backward
14919 search.
14920
14921 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14922 byte sequence.
14923 (detect_coding_ccl): Fix setting of the variable valids.
14924
149252008-02-01 Kenichi Handa <handa@m17n.org>
14926
14927 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
14928
14929 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
14930
14931 * editfns.c (Ftranslate_region_internal): Rename from
14932 Ftranslate_region. Accept a char-table in TABLE.
14933 (syms_of_editfns): Defsubr Stranslate_region_internal.
14934
14935 * xfaces.c (set_lface_from_font_name): If a font is specified for
14936 a frame, generate a fontset from the font.
14937 (build_scalable_font_name): If the scalable font is requested for
14938 a specific size, don't change that size.
14939 (try_font_list): Try a scalable font also in the case that a
14940 pattern string is specified.
14941
149422008-02-01 Kenichi Handa <handa@m17n.org>
14943
14944 * xfaces.c (Fface_font): New optional arg CHARACTER.
14945
149462008-02-01 Kenichi Handa <handa@m17n.org>
14947
14948 * charset.h (CHARSET_OFFSET): New macro.
14949
149502008-02-01 Kenichi Handa <handa@m17n.org>
14951
14952 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
14953
14954 * fontset.c (fontset_face): Handle the case that repertory is a
14955 char-table.
14956 (find_font_encoding): Return nil for unknown encoding.
14957 (Fset_fontset_font): Ignore a font of unknown encoding.
14958
149592008-02-01 Kenichi Handa <handa@m17n.org>
14960
14961 * keymap.c (describe_vector): Handle default value of a char table.
14962
14963 * fontset.c (fontset_face): Handle fallback fonts correctly.
14964 (Ffontset_info): Return infomation about fallback fonts.
14965
149662008-02-01 Kenichi Handa <handa@m17n.org>
14967
14968 * fontset.c (FONTSET_DEFAULT): New macro.
14969 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
14970 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
14971 the case that it is nil.
14972 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
14973 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
14974
14975 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
14976 subset or superset.
14977
149782008-02-01 Kenichi Handa <handa@m17n.org>
14979
14980 * emacs.c (main): Call init_charset after syms_of_XXX.
14981
14982 * charset.c (Vcharset_map_directory): Delete.
14983 (Vcharset_map_path): New variable.
14984 (load_charset_map_from_file): Use Vcharset_map_path instead.
14985 (init_charset): Initialize Vcharset_map_path.
14986 (syms_of_charset): Delete declaration of "charset-map-directory",
14987 add declaration of "charset-map-path".
14988
149892008-02-01 Kenichi Handa <handa@m17n.org>
14990
14991 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
14992 ASCII only string.
14993
14994 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
14995
14996 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
14997 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
14998
149992008-02-01 Kenichi Handa <handa@m17n.org>
15000
15001 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
15002
15003 * coding.c (QCmnemonic, QCdefalut_char)
15004 (QCdecode_translation_table, QCencode_translation_table)
15005 (QCpost_read_conversion, QCpre_write_conversion): New variables.
15006 (get_translation_table): Return a list of translation tables if
15007 necessary.
15008 (decode_coding): Call get_translation_table with ENCODEP 0.
15009 (char_encodable_p): If translation_table is non-nil, always call
15010 translate_char.
15011 (Fdefine_coding_system_internal): Accept list of translation
15012 tables as :encode-translation-table and :decode-translation-table.
15013 (Fcoding_system_put): New function.
15014 (syms_of_coding): Declare new symbols. Defsubr
15015 Scoding_system_put.
15016 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
15017 typically JISX0212.
15018
15019 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
15020 when the charset is superset type.
15021
15022 * character.c (translate_char): Accept list of translation tables.
15023
150242008-02-01 Kenichi Handa <handa@m17n.org>
15025
15026 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
15027 (CODING_ATTR_TRANS_TBL): New macro.
15028
15029 * coding.c (get_translation_table): New function.
15030 (translate_chars): Fix the bug of skipping annotation data.
15031 (decode_coding, encode_coding): Utilize get_translation_table.
15032 (char_encodable_p, Funencodable_char_position): Translate char if
15033 necessary.
15034 (Ffind_coding_systems_region_internal)
15035 (Fcheck_coding_systems_region): Setup translation table for encode
15036 in a coding system attribute vector in advance.
15037 (Fdefine_coding_system_internal): Allow a symbol as translation
15038 table. For shift-jis type coding system, allow 4th charset.
15039
150402008-02-01 Kenichi Handa <handa@m17n.org>
15041
15042 * coding.c (decode_coding_sjis): Check the first byte rigidly.
15043
15044 * xdisp.c (get_next_display_element): Pass -1 as POS to
15045 FACE_FOR_CHAR if displaying a C-string.
15046
150472008-02-01 Kenichi Handa <handa@m17n.org>
15048
15049 * composite.c (get_composition_id): Handle xoff and yoff in a
15050 composition rule.
15051
15052 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
15053 (struct composition): New member lbearing and rbearing.
15054
15055 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
15056 (x_get_glyph_overhangs): Handle a composition glyph.
15057 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
15058
15059 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
15060 composition glyph.
15061
150622008-02-01 Kenichi Handa <handa@m17n.org>
15063
15064 * print.c: Include charset.h.
15065 (Vprint_charset_text_property): New variable.
15066 (Qdefault): Extern it.
15067 (PRINT_STRING_NON_CHARSET_FOUND)
15068 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
15069 (print_check_string_result): New variable.
15070 (print_check_string_charset_prop): New function.
15071 (print_prune_charset_plist): New variable.
15072 (print_prune_string_charset): New function.
15073 (print_object): Call print_prune_string_charset if
15074 Vprint_charset_text_property is not t.
15075 (print_interval): Print nothing if interval->plist is nil.
15076 (syms_of_print): Declare Vprint_charset_text_property as a lisp
15077 variable. Init and staticpro print_prune_charset_plist.
15078
150792008-02-01 Kenichi Handa <handa@m17n.org>
15080
15081 * fontset.c (new_fontset_from_font_name): Use the specified font
15082 for all characters in the new fontset.
15083
15084 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15085 OBJECT args.
15086
15087 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
15088 OBJECT args for composition too.
15089
15090 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15091 OBJECT args.
15092
150932008-02-01 Kenichi Handa <handa@m17n.org>
15094
15095 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
15096
15097 * fontset.c (reorder_font_vector): Adjust for the change of
15098 FONT_DEF format.
15099 (fontset_face): New arg id. Change caller.
15100 (face_for_char): New args pos and object.
15101 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
15102 (fs_query_fontset): Check NAME by Fassoc too.
15103 (Fset_fontset_font): Allow non-XLFD font name.
15104 (Ffontset_info): Adjust for the change of FONT_DEF format.
15105
15106 * fontset.h (face_for_char): Adjust prototype.
15107
15108 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
15109 (append_space, extend_face_to_end_of_line)
15110 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15111 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
15112
15113 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
15114 POS and OBJECT args.
15115
15116 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
15117 POS and OBJECT args.
15118
151192008-02-01 Jason Rumney <jasonr@gnu.org>
15120
15121 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
15122 of GlobalAlloc'ed memory.
15123
151242008-02-01 Kenichi Handa <handa@m17n.org>
15125
15126 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
15127
15128 * charset.h (charset_table_used): Delete extern.
15129
15130 * charset.c (charset_table_used): Make it static.
15131 (map_charset_chars): Fix args to c_function with.
15132
15133 * chartab.c (map_sub_char_table_for_charset): Fix args to
15134 c_function with.
15135
15136 * coding.h (enum coding_result_code): Delete
15137 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
15138
15139 * coding.c (Qinsufficient_source, Qinconsistent_eol)
15140 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
15141 (Vlast_code_conversion_error): New variables.
15142 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
15143 (ONE_MORE_BYTE): Record error if any instead of signaling an
15144 error. If non-ASCII multibyte char is found, return the negative
15145 value of the code. All callers changed to check it.
15146 (ONE_MORE_BYTE_NO_CHECK): Likewise.
15147 (record_conversion_result): New function. Change all codes setting
15148 coding->result to call this function.
15149 (detect_coding_utf_8, decode_coding_utf_8)
15150 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
15151 Don't use the local variable incomplete.
15152 (emacs_mule_char): Change the second arg to `const'.
15153 (decode_coding): Fix of flushing out unprocessed data.
15154 (make_conversion_work_buffer): Fix making of a work buffer.
15155 (decode_coding_object): Return coding->dst_object.
15156
15157 * fontset.c (set_fontset_font): Fix args.
15158
15159 * lisp.h (CHARACTERBITS): Define as 22.
15160
15161 * process.c (send_process): Be sure to set coding->src_multibyte.
15162
15163 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
15164
151652008-02-01 Kenichi Handa <handa@m17n.org>
15166
15167 * xdisp.c (handle_auto_composed_prop): Give limit to
15168 Fnext_single_char_property_change.
15169
151702008-02-01 Kenichi Handa <handa@m17n.org>
15171
15172 * composite.c (syms_of_composite): Don't make the composition hash
15173 table weak.
15174
15175 * fontset.c (Fset_fontset_font): Fix docstring.
15176
15177 * lisp.h (detect_coding_system): Adjust prototype.
15178
15179 * fileio.c (kill_workbuf_unwind): Delete this function.
15180 (Finsert_file_contents): Adjust the call of detect_coding_system.
15181 Get conversion_buffer by code_conversion_save. Use the macro
15182 CODING_MAY_REQUIRE_DECODING. After decoding, update
15183 coding_system.
15184
15185 * coding.h (make_conversion_work_buffer): Delete extern.
15186 (code_conversion_save): Extern it.
15187
15188 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
15189 (CODING_GET_INFO): Delete argument eol_type. Change callers.
15190 (decode_coding_utf_8): Don't do eol converion.
15191 (detect_coding_utf_16): Check coding->src_chars, not
15192 coding->src_bytes. Add heuristics for those that have no signature.
15193 (decode_coding_emacs_mule, decode_coding_iso_2022)
15194 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15195 Don't do eol converion.
15196 (adjust_coding_eol_type): Return a new coding system.
15197 (detect_coding): Don't detect eol. Fix for utf-16 detection.
15198 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
15199 each change.
15200 (decode_coding): Pay attention to undo_list. Do eol conversion for
15201 all types of coding-systems (if necessary).
15202 (Vcode_conversion_work_buf_list): Delete it.
15203 (Vcode_conversion_reused_workbuf): Rename from
15204 Vcode_conversion_reused_work_buf.
15205 (Vcode_conversion_workbuf_name): New variable.
15206 (reused_workbuf_in_use): New variable.
15207 (make_conversion_work_buffer): Delete the arg DEPTH.
15208 (code_conversion_restore): Change argument to cons.
15209 (code_conversion_save): Delete the argument BUFFER. Change callers.
15210 (detect_coding_system): New argument src_chars. Change callers.
15211 Fix for utf-16 detection.
15212 (init_coding_once): Don't use ISO_carriage_return.
15213 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
15214 reused_workbuf_in_use.
15215
152162008-02-01 Kenichi Handa <handa@m17n.org>
15217
15218 * keymap.c (store_in_keymap): Pay attention to the case that idx
15219 is a cons specifying a character range.
15220
152212008-02-01 Kenichi Handa <handa@m17n.org>
15222
15223 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
15224 HANDLED_RECOMPUTE_PROPS.
15225
15226 * coding.c (Fdefine_coding_system_internal): Fix checking of
15227 ascii compatibility.
15228
152292008-02-01 Kenichi Handa <handa@m17n.org>
15230
15231 * charset.c (find_charsets_in_text): Delete unused locale variable.
15232 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
15233
15234 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
15235 Resync charset_list to Vemacs_mule_charset_list.
15236
15237 * keymap.c (store_in_keymap): Pay attention to the case that idx
15238 is a cons specifying a character range.
15239
152402008-02-01 Kenichi Handa <handa@m17n.org>
15241
15242 * composite.c (update_compositions): Bind inhibit-read-only, etc
15243 to t before calling remove-list-of-text-properties.
15244
15245 * print.c (print_object): Always print ASCII chars as is.
15246
152472008-02-01 Kenichi Handa <handa@m17n.org>
15248
15249 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
15250
15251 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
15252 is a char table.
15253
152542008-02-01 Kenichi Handa <handa@m17n.org>
15255
15256 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
15257
152582008-02-01 Kenichi Handa <handa@m17n.org>
15259
15260 * xfaces.c (set_lface_from_font_name): Fix for the case that
15261 FONTNAME is not fontset name.
15262
152632008-02-01 Kenichi Handa <handa@m17n.org>
15264
15265 * fns.c (base64_encode_1): Fix previous change.
15266
152672008-02-01 Kenichi Handa <handa@m17n.org>
15268
15269 * fontset.c (set_fontset_font): New function.
15270 (Fset_fontset_font): If a font is specified for a charset, use
15271 map_charset_chars to store the font spec in a fontset.
15272
152732008-02-01 Kenichi Handa <handa@m17n.org>
15274
15275 * fontset.c (fontset_face): Create a fallback fontset on demand.
15276 (make_fontset): Don't create a fallback fontset here.
15277 (free_face_fontset): Free a fallback fontset (if any) too.
15278 (n_auto_fontsets): Delete this variable.
15279 (auto_fontset_alist): New variable.
15280 (new_fontset_from_font_name): Check auto_fontset_alist.
15281 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
15282 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
15283 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
15284 Defsubr Sfontset_list_all.
15285
152862008-02-01 Kenichi Handa <handa@m17n.org>
15287
15288 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
15289
152902008-02-01 Kenichi Handa <handa@m17n.org>
15291
15292 * fontset.c (Fnew_fontset): Check NAME more rigidly.
15293
152942008-02-01 Kenichi Handa <handa@m17n.org>
15295
15296 * editfns.c (Fgoto_char): Fix docstring.
15297
152982008-02-01 Kenichi Handa <handa@m17n.org>
15299
15300 * insdel.c (insert_from_gap): Adjust intervals correctly.
15301
153022008-02-01 Jason Rumney <jasonr@gnu.org>
15303
15304 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
15305 (pfnGetFontUnicodeRanges): New dynamically loaded function.
15306 (w32_initialize): Try to load it.
15307 (x_get_font_repertory): Use it if available.
15308 (w32_encode_char): Add shortcut for unicode output.
15309
15310 * w32fns.c (w32_load_system_font): Default charset to -1.
15311 (x_to_w32_charset): Match all fonts for unicode.
15312 (w32_to_x_charset): New parameter matching. Don't return partial
15313 or wildcard charsets.
15314 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
15315 (w32_codepage_for_font): Return CP_UNICODE for unicode.
15316 (w32_to_x_font): Match charset to real charset.
15317 (enum_font_cb2): Always list unicode versions.
15318
15319 * makefile.w32-in (temacs): Increase EMHEAP.
15320
153212008-02-01 Jason Rumney <jasonr@gnu.org>
15322
15323 * w32term.c (w32_encode_char): New charset parameter.
15324 font_info.encoding becomes encoding_type.
15325 (x_get_font_repertory): New function. Warning: stub only!
15326 (x_new_font): Return quickly if font already set.
15327 (x_new_fontset): fontsetname parameter is Lisp_Object.
15328 Use new fs_query_fontset. Try new_fontset_from_font_name.
15329 Use fontset_name for return value.
15330
15331 * w32term.h: Declare x_get_font_repertory.
15332
15333 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15334 place of find_charset_in_text. Use encode_coding_object in place
15335 of encode_coding.
15336 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15337 decode_coding.
15338
15339 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15340 of x_new_fontset.
15341 (w32_load_system_font): Initialize charset as unicode.
15342 font_info.encoding becomes encoding_type.
15343 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15344 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15345 (syms_of_w32fns): Set get_font_repertory_func.
15346
15347 * w32console.c: Include character.h. Use terminal_encode_buffer
15348 from term.c.
15349 (write_glyphs): Use new version of encode_terminal_code. Use
15350 encode_coding_object in place of encode_coding.
15351
15352 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15353 encoding becomes encoding_type.
15354
15355 * term.c (terminal_encode_buffer): Make externally visible.
15356
15357 * makefile.w32-in: Add character.h dependancies.
15358 (character.o, chartab.o): New targets.
15359
153602008-02-01 Kenichi Handa <handa@m17n.org>
15361
15362 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15363 CODING_ID_EOL_TYPE.
15364
153652008-02-01 Andreas Schwab <schwab@suse.de>
15366
15367 * coding.c (produce_chars): Revert last change.
15368
153692008-02-01 Kenichi Handa <handa@m17n.org>
15370
15371 * charset.h (charset_unicode): Extern it.
15372
15373 * charset.c (string_xstring_p): Check by (C >= 0x100).
15374 (find_charsets_in_text): Change format of the arc CHARSETS. New
15375 arg MULTIBYTE.
15376 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15377 change of find_charsets_in_text.
15378 (Fsplit_char): Fix doc. Never return unknown.
15379
15380 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15381
15382 * coding.c (Fdefine_coding_system_alias): Update
15383 Vcoding_system_list.
15384
15385 * fontset.c (load_font_get_repertory): Pay attention to the case
15386 that ENCODING of a font is specified by a char-table.
15387
15388 * xterm.c (x_get_font_repertory): Handle the case that the
15389 encoding of font is other than Unicode.
15390
153912008-02-01 Kenichi Handa <handa@m17n.org>
15392
15393 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15394 if a character is encodable by the terminal coding system. If
15395 not, produces proper number of `?'s. Update
15396 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15397 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15398
153992008-02-01 Kenichi Handa <handa@m17n.org>
15400
15401 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15402 variables.
15403 (encode_terminal_code): Change argument. Encode multiple
15404 characters at once. Store the result of encoding in
15405 terminal_encode_buffer.
15406 (write_glyphs, insert_glyphs): Adjust for the change of
15407 encode_terminal_code.
15408 (term_init): Initialize terminal_encode_buffer and
15409 terminal_encode_buf_size.
15410
15411 * coding.c (consume_chars): If coding->src_object is nil, don't
15412 check annotation.
15413
154142008-02-01 Kenichi Handa <handa@m17n.org>
15415
15416 * character.c (char_string): Use ASCII_CHAR_P instead of
15417 SINGLE_BYTE_CHAR_P.
15418
154192008-02-01 Kenichi Handa <handa@m17n.org>
15420
15421 * xdisp.c (handle_auto_composed_prop): Check if the last
15422 characters of auto-composed region is newly composed with the
15423 following characters.
15424 (handle_composition_prop): Fix checking of point being inside
15425 composition.
15426
154272008-02-01 Kenichi Handa <handa@m17n.org>
15428
15429 * fns.c (concat): Don't change multibyteness of the result by
15430 concatenating an 8-bit character.
15431
15432 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15433 multibyteness of the result when newelt is an 8-bit character.
15434
154352008-02-01 Dave Love <fx@gnu.org>
15436
15437 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15438 EMACS_INT.
15439
15440 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15441
15442 * xfaces.c (face_numeric_value): Declare dim size_t.
15443 (Finternal_lisp_face_equal_p): Remove unused f.
15444
15445 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15446 (MATRIX_ROW): Remove unused vars.
15447 (draw_glyphs, x_insert_glyphs, fast_find_position)
15448 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15449 byte/char counts.
15450
15451 * regex.c (regex_compile): Remove unused var.
15452
15453 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15454
15455 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15456 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15457
15458 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15459
15460 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15461
15462 * fileio.c (Fwrite_region): Remove unused var.
15463
15464 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15465 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15466
15467 * composite.c (Fremove_list_of_text_properties): Declare.
15468
15469 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15470 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15471 (coding_inherit_eol_type): Remove unused attrs.
15472 (detect_coding): Cast arg of detect_eol.
15473
15474 * charset.c (syms_of_charset): Remove unused var p.
15475 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15476 byte/char counts.
15477
15478 * casetab.c (set_case_table): Remove unused var.
15479
15480 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15481 unused vars.
15482
154832008-02-01 Dave Love <fx@gnu.org>
15484
15485 * xterm.c (x_bitmap_mask): Declare.
15486
154872008-02-01 Dave Love <fx@gnu.org>
15488
15489 * xterm.c (x_term_init): Fix type error.
15490
15491 * lisp.h: Add Funibyte_char_to_multibyte.
15492
15493 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15494 (Fset_coding_system_priority): Doc fix.
15495
15496 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15497
15498 * indent.c (check_composition): Make start and end EMACS_INT.
15499
15500 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15501
15502 * xdisp.c (handle_composition_prop, check_point_in_composition):
15503 Make buffer positions EMACS_INT.
15504
15505 * composite.c (find_composition, run_composition_function)
15506 (update_compositions, Ffind_composition_internal): Make buffer
15507 positions EMACS_INT.
15508
15509 * composite.h (find_composition, update_compositions): Make
15510 position args EMACS_INT.
15511
15512 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15513
15514 * intervals.c (get_property_and_range):
15515 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15516
15517 * unexalpha.c: Don't include varargs.h.
15518
155192008-02-01 Dave Love <fx@gnu.org>
15520
15521 * coding.h (ENCODE_UTF_8): New.
15522
15523 * Makefile.in (gtkutil.o): Depend on coding.h.
15524
15525 * coding.c (Fset_coding_system_priority): Doc fix.
15526
155272008-02-01 Kenichi Handa <handa@m17n.org>
15528
15529 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15530 the case of auto saving.
15531
155322008-02-01 Andreas Schwab <schwab@suse.de>
15533
15534 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15535 `range' from GC.
15536
155372008-02-01 Kenichi Handa <handa@m17n.org>
15538
15539 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15540
155412008-02-01 Kenichi Handa <handa@m17n.org>
15542
15543 * fileio.c (choose_write_coding_system): Return a decided coding system.
15544 (Fwrite_region): Set Vlast_coding_system_used to the return value
15545 of choose_write_coding_system.
15546
155472008-02-01 Kenichi Handa <handa@m17n.org>
15548
15549 * charset.c (Fset_charset_priority): Pay attention to duplicated
15550 arguments.
15551
15552 * coding.c (QCcategory): New variable.
15553 (syms_of_coding): Defsym it. Set all elements of
15554 Vcoding_category_table and their symbol values.
15555 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15556 coding-category-XXX, and coding-category-list.
15557 (Fdefine_coding_system_internal): Add category in the plist.
15558
155592008-02-01 Kenichi Handa <handa@m17n.org>
15560
15561 * callproc.c (Fcall_process): Handle carryover correctly.
15562
15563 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15564 (raw_text_coding_system): Check NILP (coding_system).
15565 (coding_inherit_eol_type): Check NILP (coding_system) and
15566 NILP (parent).
15567 (consume_chars): Fix for the case of raw-text.
15568
15569 * process.c (read_process_output): Handle carryover correctly.
15570
155712008-02-01 Dave Love <fx@gnu.org>
15572
15573 * regex.c (re_search_2): Fix last change.
15574
155752008-02-01 Kenichi Handa <handa@m17n.org>
15576
15577 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15578 target_multibyte. Even in a unibyte case, return a converted
15579 multibyte char.
15580 (GET_CHAR_AFTER): New macro.
15581 (PATFETCH): Translate via multibyte char.
15582 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15583 (SETUP_MULTIBYTE_RANGE): New macro.
15584 (regex_compile): Setup compiled code so that its multibyteness
15585 matches that of a target. Fix the handling of "[X-YZ]" using
15586 SETUP_MULTIBYTE_RANGE.
15587 (analyse_first) <charset>: For filling fastmap for all multibyte
15588 characters, don't check by BASE_LEADING_CODE_P.
15589 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15590 the same as RE_MULTIBYTE_P (bufp) now.
15591 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15592 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15593 (TRANSLATE_VIA_MULTIBYTE): New macro.
15594 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15595 It is the same as RE_MULTIBYTE_P (bufp) now.
15596 <exactn>: Translate via multibyte.
15597 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15598 translate it.
15599 <charset, charset_not>: Fetch a character by
15600 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15601 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15602 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15603 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15604 by GET_CHAR_AFTER.
15605 (bcmp_translate): Likewise.
15606
15607 * search.c (compile_pattern): Check the member target_multibyte,
15608 not the member multibyte of buf.
15609
15610 * lread.c (read1): While reading a string, set force_singlebyte
15611 and force_multibyte correctly.
15612
15613 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15614 up of unibyte_to_multibyte_table.
15615
156162008-02-01 Kenichi Handa <handa@m17n.org>
15617
15618 * coding.c (setup_coding_system): If coding has
15619 post-read-conversion or pre-write-conversion, set
15620 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15621 respectively.
15622 (decode_coding_gap): Run post-read-conversion if any.
15623
15624 * fileio.c (Finsert_file_contents): Even if we read into a
15625 unibyte buffer, check if we must decode the result or not.
15626
156272008-02-01 Kenichi Handa <handa@m17n.org>
15628
15629 * coding.c (make_conversion_work_buffer): Change the work buffer
15630 name to the same one as that of Emacs 21.
15631
156322008-02-01 Kenichi Handa <handa@m17n.org>
15633
15634 * coding.h (make_conversion_work_buffer): Adjust prototype.
15635 (code_conversion_restore): Don't extern it.
15636
15637 * coding.c (detected_mask): Delete unused variable.
15638 (decode_coding_iso_2022): Pay attention to the byte sequence of
15639 CTEXT extended segment, and retain those bytes as is.
15640 (decode_coding_ccl): Delete unused variable `valids'.
15641 (setup_coding_system): Delete unused variable `category'.
15642 (consume_chars): Delete unused variable `category'. Make it work
15643 for non-multibyte case.
15644 (make_conversion_work_buffer): Change argument.
15645 (saved_coding): Delete unused variable.
15646 (code_conversion_restore): Don't check saved_coding->destination.
15647 (code_conversion_save): New function.
15648 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15649 instead of record_unwind_protect.
15650 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15651 (detect_coding_system): Delete unused variable `mask'.
15652 (Fdefine_coding_system_internal): Delete unused variable id.
15653
15654 * fileio.c (kill_workbuf_unwind): New function.
15655 (Finsert_file_contents): On replacing, call
15656 make_conversion_work_buffer with correct args, and call
15657 record_unwind_protect with the first arg kill_workbuf_unwind.
15658
15659 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15660
156612008-02-01 Kenichi Handa <handa@m17n.org>
15662
15663 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15664 (fontset_add): Fix for the case that TO is less than TO1.
15665 (Ffontset_info): Don't use fallback fontset on checking the
15666 default fontset.
15667 (dump_fontset): New function for debugging.
15668
15669 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15670 coding_type is Qcharset.
15671
156722008-02-01 Kenichi Handa <handa@m17n.org>
15673
15674 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15675 (map_char_table): Don't inherit the value from the parent on
15676 initializing VAL. Adjust for the above change.
15677
156782008-02-01 Kenichi Handa <handa@m17n.org>
15679
15680 * coding.c (Qsignature, Qendian): Delete these variables.
15681 (syms_of_coding): Don't initialize them.
15682 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15683 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15684 detect_info->found.
15685 (decode_coding_utf_16): Don't detect BOM here.
15686 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15687 is NOT utf_16_without_bom.
15688 (setup_coding_system): For a coding system of type utf-16, check
15689 if the attribute :endian is Qbig or not (not nil or not), and set
15690 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15691 (detect_coding): If coding type is utf-16 and BOM detection is
15692 required, detect it.
15693 (Fdefine_coding_system_internal): For a coding system of type
15694 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15695
156962008-02-01 Kenichi Handa <handa@m17n.org>
15697
15698 * coding.c (coding_set_source): Fix for the case that the current
15699 buffer is different from coding->src_object.
15700 (decode_coding_object): Don't use the conversion work buffer if
15701 DST_OBJECT is a buffer.
15702
157032008-02-01 Dave Love <fx@gnu.org>
15704
15705 * lread.c (read_emacs_mule_char) [len==2]: Index
15706 emacs_mule_charset correctly.
15707
157082008-02-01 Dave Love <fx@gnu.org>
15709
15710 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15711 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15712 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15713 treated specially.)
15714 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15715 (detected_mask): Remove Big5 bits.
15716
157172008-02-01 Kenichi Handa <handa@m17n.org>
15718
15719 The following changes are to make the font rescaling facility
15720 compatible with Emacs 21.
15721
15722 * xfaces.c (Vface_font_rescale_alist): Rename from
15723 Vface_resizing_fonts.
15724 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15725 (font_rescale_ratio): Rename from font_resizing_ratio.
15726 (split_font_name): Set font->rescale_ratio.
15727 (better_font_p): Pay attention to font->rescale_ratio.
15728 (build_scalable_font_name): Likewise. Change RESX, and RESY
15729 fields.
15730 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15731
157322008-02-01 Kenichi Handa <handa@m17n.org>
15733
15734 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15735 (Qutf_16_le): Remove these variables.
15736 (syms_of_coding): Don't DEFSYM them.
15737 (decode_coding_utf_16): Fix handling of BOM.
15738 (encode_coding_utf_16): Fix handling of BOM.
15739
157402008-02-01 Kenichi Handa <handa@m17n.org>
15741
15742 * fileio.c (Finsert_file_contents): On replacing, before decoding
15743 the file into the work buffer, set point of the work buffer to the end.
15744
157452008-02-01 Dave Love <fx@gnu.org>
15746
15747 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15748
157492008-02-01 Dave Love <fx@gnu.org>
15750
15751 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15752 and fix C types.
15753
157542008-02-01 Kenichi Handa <handa@m17n.org>
15755
15756 * xdisp.c (SKIP_GLYPHS): New macro.
15757 (set_cursor_from_row): Pay attention to string display properties.
15758
15759 * category.c (copy_category_entry): Fix for the case that RANGE
15760 is an integer.
15761
15762 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15763
15764 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15765
157662008-02-01 Kenichi Handa <handa@m17n.org>
15767
15768 * charset.c (Fcharset_id_internal): New function.
15769 (syms_of_charset): Defsubr it.
15770
15771 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15772 with the last arg charset_list acquired from coding.
15773 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15774 the attribute coding_attr_ccl_valids.
15775
15776 * coding.h (enum define_coding_ccl_arg_index): Set the first
15777 member coding_arg_ccl_decoder to coding_arg_max.
15778
15779 * ccl.h (ccl_driver): Adjust prototype.
15780
15781 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15782 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15783 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15784 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15785 last arg Qnil.
15786
157872008-02-01 Kenichi Handa <handa@m17n.org>
15788
15789 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15790 call encode_char.
15791
15792 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15793
157942008-02-01 Dave Love <fx@gnu.org>
15795
15796 * composite.c (syms_of_composite): Make composition_hash_table weak.
15797
157982008-02-01 Kenichi Handa <handa@m17n.org>
15799
15800 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15801 (font_name_registry): Don't extern them.
15802 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15803
15804 * fontset.h (Qfontset): Don't extern it.
15805 (new_fontset_from_font_name): Extern it.
15806
15807 * fontset.c: Give 8 extra slots to fontset objects.
15808 (Qfontset_info): New variable.
15809 (syms_of_fontset): Defsym it.
15810 (FONTSET_FALLBACK): New macro.
15811 (fontset_face): Try also the default fontset.
15812 (make_fontset): Realize a fallback fontset from the default fontset.
15813 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15814 using split_font_name_into_vector and build_font_name_from_vector.
15815 (Fset_fontset_font): Access the elements of font_spec by enum
15816 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15817 name by using split_font_name_into_vector.
15818 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15819 generate a proper font name from the fontset name. Update
15820 Vfontset_alias_alist.
15821 (n_auto_fontsets): New variable.
15822 (new_fontset_from_font_name): New function.
15823 (Ffont_info): Store the information about fonts generated from the
15824 default fontset in the first extra slot of the returned char-table.
15825
15826 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15827 (font_name_registry): Delete function.
15828 (split_font_name_into_vector): New function.
15829 (build_font_name_from_vector): New function.
15830 (font_list): The argument REGISTRY is now a list of registry names.
15831 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15832 specifies an explicit font name, return the name as is. Make a
15833 list of registy names.
15834
15835 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15836 of x_new_fontset.
15837 (Fx_create_frame): Don't call x_new_fontset here. Just use
15838 x_list_fonts to check the existence of fonts.
15839
15840 * xterm.h (x_new_fontset): Adjust prototype.
15841
15842 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15843 string. Use new_fontset_from_font_name to create a fontset from a
15844 font name.
15845
158462008-02-01 Kenichi Handa <handa@m17n.org>
15847
15848 * syntax.c (Vfind_word_boundary_function_table): New name for
15849 Vnext_word_boundary_function_table.
15850 (find-word-boundary-function-table): New name for
15851 next-word-boundary-function-table.
15852
158532008-02-01 Dave Love <fx@gnu.org>
15854
15855 * Makefile.in: Fix some dependencies.
15856
15857 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15858 set it to nil before returning.
15859
15860 * composite.c (update_compositions): Fix type error.
15861
15862 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15863
158642008-02-01 Kenichi Handa <handa@m17n.org>
15865
15866 * xterm.c (x_new_font): Optimize for the case that the font is
15867 already set for the frame.
15868
158692008-02-01 Kenichi Handa <handa@m17n.org>
15870
15871 * chartab.c (char_table_ascii): Check if the char table contents
15872 is sub-char-table or not.
15873 (char_table_set, char_table_set_range): Fix argument to
15874 char_table_ascii.
15875
15876 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15877 (detect_coding_utf_8, detect_coding_utf_16)
15878 (detect_coding_emacs_mule, detect_coding_iso_2022)
15879 (detect_coding_sjis, detect_coding_big5)
15880 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15881 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15882 sequence is valid in this coding system. Change callers.
15883 (MAX_ANNOTATION_LENGTH): New macro.
15884 (ADD_ANNOTATION_DATA): New macro.
15885 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15886 ADD_ANNOTATION_DATA. Change the format of annotation data.
15887 (ADD_CHARSET_DATA): New macro.
15888 (emacs_mule_char): New argument ID. Change callers.
15889 (decode_coding_emacs_mule, decode_coding_iso_2022)
15890 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15891 Produce charset annotation data in coding->charbuf.
15892 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15893 to charset annotation data in coding->charbuf.
15894 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15895 coding->common_flags if the coding system is iso-2022 based and
15896 uses designation.
15897 (produce_composition): Adjust for the new annotation data format.
15898 (produce_charset): New function.
15899 (produce_annotation): Handle charset annotation.
15900 (handle_composition_annotation, handle_charset_annotation): New
15901 functions.
15902 (consume_chars): Handle charset annotation. Utilize the above two
15903 functions.
15904 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15905 buffer, get the deleted text as a string and set
15906 coding->src_object to that string.
15907 (detect_coding, detect_coding_system): Use the new struct
15908 coding_detection_info.
15909
15910 * coding.h (struct coding_detection_info): New structure.
15911 (struct coding_system): Adjust prototype of the member `detector'.
15912 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15913
159142008-02-01 Kenichi Handa <handa@m17n.org>
15915
15916 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15917
159182008-02-01 Dave Love <fx@gnu.org>
15919
15920 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15921 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15922 to new local and nullify apropos_accumulate before returning.
15923 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
15924
159252008-02-01 Kenichi Handa <handa@m17n.org>
15926
15927 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
15928 correctly.
e3eea1fc 15929
aac0c6e3
MR
159302008-02-01 Dave Love <fx@gnu.org>
15931
15932 * fns.c (Flanginfo): Call synchronize_system_time_locale.
15933
159342008-02-01 Kenichi Handa <handa@m17n.org>
15935
15936 The following changes are to make character composition happen
15937 automatically on displaying.
15938
15939 * Makefile.in (lisp, shortlisp): Add composite.elc.
15940
15941 * composite.h (Qauto_composed, Vauto_composition_function)
15942 (Qauto_composition_function): Extern them.
15943
15944 * composite.c (Vcomposition_function_table)
15945 (Qcomposition_function_table): Delete variables.
15946 (Qauto_composed, Vauto_composition_function)
15947 (Qauto_composition_function): New variables.
15948 (run_composition_function): Don't call
15949 compose-chars-after-function.
15950 (update_compositions): Clear `auto-composed' text property.
15951 (compose_chars_in_text): Delete this function.
15952 (syms_of_composite): Staticpro Qauto_composed and
15953 Qauto_composition_function. Declare Vauto_composition_function as
15954 a Lisp variable.
15955
15956 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
15957
15958 * xdisp.c (it_props): Add an entry for Qauto_composed.
15959 (handle_auto_composed_prop): New function.
15960
15961 * xselect.c (selection_data_to_lisp_data): Don't call
15962 compose_chars_in_text.
15963
159642008-02-01 Dave Love <fx@gnu.org>
15965
15966 * keyboard.c (read_char): Modify checking around use of
15967 Vkeyboard_translate_table.
15968
15969 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15970 and fix C types.
15971
159722008-02-01 Kenichi Handa <handa@m17n.org>
15973
15974 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
15975 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
15976 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
15977 the case that the last byte is '\r' correctly.
15978 (decode_coding): Flush out the unprocessed data correctly.
15979 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
15980
159812008-02-01 Dave Love <fx@gnu.org>
15982
15983 * xterm.c (XTread_socket): Fix changes for defined keysyms.
15984 Add XK_ISO... case.
15985 (xaw_scroll_callback): Revert last change.
15986
159872008-02-01 Kenichi Handa <handa@m17n.org>
15988
15989 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
15990
159912008-02-01 Kenichi Handa <handa@m17n.org>
15992
15993 * xfaces.c (Vface_resizing_fonts): New variable.
15994 (struct font_name): New member `resizing_ratio'.
15995 (font_resizing_ratio): New function.
15996 (split_font_name): Set font->resizing_ratio.
15997 (better_font_p): Pay attention to font->resizing_ratio.
15998 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
15999 RESX, and RESY fields.
16000 (try_alternative_families): Try scalable fonts if
16001 Vscalable_fonts_allowed is not Qt.
16002 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
16003
160042008-02-01 Dave Love <fx@gnu.org>
16005
16006 * xterm.c (xaw_scroll_callback): Cast correctly.
16007
160082008-02-01 Dave Love <fx@gnu.org>
16009
16010 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
16011 (lispy_kana_keys): Comment out.
16012 (make_lispy_event) [XK_kana_A]: Comment out.
16013
16014 * xterm.c (xaw_scroll_callback): Cast call_data.
16015 (XTread_socket): Deal with ASCII keysyms.
16016 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
16017
160182008-02-01 Dave Love <fx@gnu.org>
16019
16020 * xterm.c (Vx_keysym_table): New.
16021 (syms_of_xterm): Initialize it.
16022 (XTread_socket): Use it.
16023 From head: Eliminate incorrect optimization that tried to avoid
16024 decoding the output of X*LookupString.
16025 (x_get_font_repertory): Delete charset declaration.
16026
160272008-02-01 Kenichi Handa <handa@m17n.org>
16028
16029 * coding.c (detect_coding_charset): If only ASCII bytes are found,
16030 return 0.
16031 (Fdefine_coding_system_internal): Setup
16032 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
16033
160342008-02-01 Dave Love <fx@gnu.org>
16035
16036 * coding.c (Fcheck_coding_system): Doc fix.
16037
16038 * editfns.c (Finsert_byte): Return a proper value.
16039
160402008-02-01 Kenichi Handa <handa@m17n.org>
16041
16042 * coding.c (decode_coding): Fix args to translate_chars. Pay
16043 attention to Vstandard_translation_table_for_decode.
16044 (encode_coding): Fix args to translate_chars. Pay attention to
16045 Vstandard_translation_table_for_encode.
16046
16047 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
16048 SINGLE_BYTE_CHAR_P.
16049
16050 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
16051 not by SINGLE_BYTE_CHAR_P.
16052
16053 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
16054 SINGLE_BYTE_CHAR_P.
16055
16056 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
16057 SINGLE_BYTE_CHAR_P.
16058
16059 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
16060 by SINGLE_BYTE_CHAR_P.
16061
16062 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
16063 SINGLE_BYTE_CHAR_P.
16064
160652008-02-01 Dave Love <fx@gnu.org>
16066
16067 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
16068
160692008-02-01 Dave Love <fx@gnu.org>
16070
16071 * fns.c (Flanginfo): Fix typo.
16072
16073 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
16074
160752008-02-01 Kenichi Handa <handa@m17n.org>
16076
16077 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
16078 (detect_coding_emacs_mule, detect_coding_iso_2022)
16079 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
16080 incomplete byte sequence. Don't update *mask when correctly detected.
16081 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
16082 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
16083 (detect_coding, detect_coding_system): Adjust for the changes above.
16084
160852008-02-01 Kenichi Handa <handa@m17n.org>
16086
16087 * character.c (char_string): Rename from
16088 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
16089 (string_char): Rename from string_char.
16090
16091 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
16092 if C is greater than MAX_3_BYTE_CHAR.
16093 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
16094 string_char instead of string_char_with_unification.
16095
160962008-02-01 Dave Love <fx@gnu.org>
16097
16098 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
16099
161002008-02-01 Kenichi Handa <handa@m17n.org>
16101
16102 * keymap.c (push_key_description): Pay attention to force_multibyte.
16103
16104 * regex.c (re_search_2): Fix for the case of unibyte buffer.
16105
161062008-02-01 Dave Love <fx@gnu.org>
16107
16108 * charset.c (define_charset_internal): Rename `supprementary'.
16109
16110 * Makefile.in (lisp, shortlisp): Remove latin-N.
16111
161122008-02-01 Dave Love <fx@gnu.org>
16113
16114 * xfns.c (x_window, x_window): Use use_xim.
16115
16116 * xterm.c (use_xim): Initialize.
16117 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
16118 (x_term_init): Maybe set use_xim.
16119
16120 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
16121
161222008-02-01 Kenichi Handa <handa@m17n.org>
16123
16124 * search.c (search_buffer): Fix case-fold-search of multibyte
16125 characters.
16126 (boyer_moore): Rename the last argument to char_high_bits.
16127
161282008-02-01 Kenichi Handa <handa@m17n.org>
16129
16130 * xdisp.c (display_string): Fix for the case of zero width glyph.
16131
16132 * xfns.c (x_set_font): Change the error message of the case that
16133 x_new_fontset returns Qt.
16134
16135 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
16136 (Finternal_set_lisp_face_attribute): Use signal_error for the
16137 error of invalid fontset.
16138
16139 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
16140 fontset, return Qt.
16141
161422008-02-01 Dave Love <fx@gnu.org>
16143
16144 * unexelf.c (unexec): Make .got handling not SGI-specific.
16145
16146 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
16147
16148 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
16149
16150 * keyboard.c (read_key_sequence): Fix type error.
16151
16152 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
16153 type error.
16154
16155 * fontset.c (fontset_add): Return Lisp_Object.
16156
161572008-02-01 Dave Love <fx@gnu.org>
16158
16159 * charset.h (charset_ordered_list_tick): Declare extern.
16160
161612008-02-01 Kenichi Handa <handa@m17n.org>
16162
16163 The following changes (and some of 2008-02-01 changes of mine) are
16164 for handling syntax, category, and case conversion for unibyte
16165 characters by converting them to multibyte on the fly. With these
16166 changes, we don't have to setup syntax and case tables for unibyte
16167 characters in each language environment.
16168
16169 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
16170 multibyte if necessary.
16171
16172 * bytecode.c (Fbyte_code): Likewise.
16173
16174 * character.h (LEADING_CODE_LATIN_1_MIN)
16175 (LEADING_CODE_LATIN_1_MAX): New macros.
16176 (unibyte_to_multibyte_table): Extern it.
16177 (unibyte_char_to_multibyte): New macro.
16178 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
16179 (CHAR_LEADING_CODE): New macro.
16180 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
16181
16182 * character.c (unibyte_to_multibyte_table): New variable.
16183 (unibyte_char_to_multibyte): Move to character.h and define as macro.
16184 (multibyte_char_to_unibyte): If C is an eight-bit character,
16185 convert it to the corresponding byte value.
16186
16187 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
16188 not 1, signals an error. Update the elements of
16189 unibyte_to_multibyte_table.
16190 (init_charset_once): Initialize unibyte_to_multibyte_table.
16191 (syms_of_charset): Define the charset `iso-8859-1'.
16192
16193 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
16194 as is without converting it to unibyte. In a unibyte buffer,
16195 convert C to multibyte before checking the syntax.
16196
16197 * lisp.h (unibyte_char_to_multibyte): Delete extern.
16198
16199 * minibuf.c (Fminibuffer_complete_word): Use the macro
16200 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
16201
16202 * regex.h (struct re_pattern_buffer): New member target_multibyte.
16203
16204 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
16205 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
16206 that is zero, convert an eight-bit char to multibyte.
16207 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
16208 non-emacs case.
16209 (PATFETCH): Convert an eight-bit char to multibyte.
16210 (HANDLE_UNIBYTE_RANGE): New macro.
16211 (regex_compile): Setup the compiled pattern for multibyte chars
16212 even if the given regex string is unibyte. Use PATFETCH_RAW
16213 instead of PATFETCH in many places. To handle `charset'
16214 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
16215 only for ASCII chars.
16216 (analyse_first) <exactn>: Simplify because the compiled pattern
16217 is multibyte.
16218 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
16219 <charset>: Use CHAR_LEADING_CODE to get leading codes.
16220 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
16221 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
16222 multibyte always 1.
16223 (re_search_2): In emacs, set the locale variable multibyte to 1,
16224 otherwise to 0. New local variable target_multibyte. Check it
16225 to decide the multibyteness of STR1 and STR2. If
16226 target_multibyte is zero, convert unibyte chars to multibyte
16227 before translating and checking fastmap.
16228 (TARGET_CHAR_AND_LENGTH): New macro.
16229 (re_match_2_internal): In emacs, set the locale variable multibyte
16230 to 1, otherwise to 0. New local variable target_multibyte. Check
16231 it to decide the multibyteness of STR1 and STR2. Use
16232 TARGET_CHAR_AND_LENGTH to fetch a character from D.
16233 <charset, charset_not>: If multibyte is nonzero, check fastmap
16234 only for ASCII chars. Call bcmp_translate with
16235 target_multibyte, not with multibyte.
16236 <begline>: Declare the local variable C as `unsigned'.
16237 (bcmp_translate): Change the last arg name to target_multibyte.
16238
16239 * search.c (compile_pattern_1): Don't adjust the multibyteness of
16240 the regexp pattern and the matching target. Set cp->buf.multibyte
16241 to the multibyteness of the regexp pattern. Set
16242 cp->but.target_multibyte to the multibyteness of the matching target.
16243 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
16244 FETCH_STRING_CHAR_ADVANCE.
16245 (Freplace_match): Convert unibyte chars to multibyte.
16246
16247 * syntax.c (char_quoted, back_comment, scan_words)
16248 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
16249 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
16250 unibyte chars to multibyte.
16251 (skip_chars): Delete the arg syntaxp, and move the code for
16252 handling syntaxes to skip_syntaxes. Change callers.
16253 Fix the case that the multibyteness of STRING and the current
16254 buffer doesn't match.
16255 (skip_syntaxes): New function.
16256 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
16257 SINGLE_BYTE_CHAR_P.
16258
162592008-02-01 Kenichi Handa <handa@m17n.org>
16260
16261 * xfaces.c (QCfontset): New variable.
16262 (LFACE_FONTSET): New macro.
16263 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
16264 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
16265 (Finternal_set_lisp_face_attribute)
16266 (Finternal_get_lisp_face_attribute): Handle QCfontset.
16267 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
16268 check also LFACE_FONTSET_INDEX.
16269 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
16270 attrs[LFACE_FONT_INDEX].
16271 (syms_of_xfaces): Intern and staticpro QCfontset.
16272
16273 * dispextern.h (enum lface_attribute_index): New member
16274 LFACE_FONTSET_INDEX.
16275
16276 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
16277
162782008-02-01 Kenichi Handa <handa@m17n.org>
16279
16280 * coding.c (coding_set_destination): Fix coding->destination for
16281 the case converting a region.
16282 (encode_coding_utf_8): Encode eight-bit chars as single byte.
16283 (encode_coding_object): Fix coding->dst_pos and
16284 coding->dst_pos_byte for the case converting a region.
16285
16286 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
16287
16288 * character.h (BYTE8_STRING): New macro.
16289
16290 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
16291
162922008-02-01 Kenichi Handa <handa@m17n.org>
16293
16294 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
16295 characters by octal form.
16296
16297 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16298
16299 * buffer.h (_fetch_multibyte_char_len): Delete extern.
16300 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
16301 _fetch_multibyte_char_len.
16302 (FETCH_CHAR_AS_MULTIBYTE): New macro.
16303
16304 * casetab.c (set_canon, set_identity, shuffle): Simplify.
16305
16306 * casefiddle.c (casify_object): Simplify. Handle the case that
16307 the case conversion change the byte length.
16308 (casify_region): Likewise.
16309
16310 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
16311
16312 * character.c (_fetch_multibyte_char_len): Delete this variable.
16313 (syms_of_character): Setup Vprintable_chars.
16314
16315 * editfns.c (Fchar_equal): Fix for the unibyte case.
16316 (Finsert_byte): New function.
16317 (syms_of_editfns): Defsubr it.
16318
16319 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16320 of direct code 0x3ffff.
16321
16322 * search.c (Freplace_match): Fix for the unibyte case.
16323
163242008-02-01 Kenichi Handa <handa@m17n.org>
16325
16326 * lread.c (safe_to_load_p): Fix the logic.
16327
16328 * syntax.c (scan_words): Don't treat characters belonging to
16329 different scripts as constituting a word.
16330
16331 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16332
16333 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16334
16335 * emacs.c (main): In the case of --unibyte, instead of aborting on
16336 finding non-empty buffer, make it unibyte.
16337
163382008-02-01 Kenichi Handa <handa@m17n.org>
16339
16340 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16341 to create a fontset.
16342
163432008-02-01 Dave Love <fx@gnu.org>
16344
16345 * character.c (Funibyte_char_to_multibyte): Doc fix.
16346
16347 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16348
163492008-02-01 Kenichi Handa <handa@m17n.org>
16350
16351 * fontset.c (fontset_add): Make the type `int'.
16352 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16353
16354 * character.c (unibyte_char_to_multibyte)
16355 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16356 charset_unibyte, not charset_primary.
16357
16358 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16359
16360 * charset.c (charset_unibyte): Rename from charset_primary.
16361 (Funibyte_charset): Rename from Fprimary_charset.
16362 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16363 (syms_of_charset): Adjust for the above changes.
16364
16365 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16366 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16367 it->multibyte_p is zero.
16368
16369 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16370 Delete extern.
16371
163722008-02-01 Kenichi Handa <handa@m17n.org>
16373
16374 * coding.c (Fdefine_coding_system_internal): Fix category setting
16375 for a coding system of type iso-2022.
16376
163772008-02-01 Kenichi Handa <handa@m17n.org>
16378
16379 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16380
163812008-02-01 Kenichi Handa <handa@m17n.org>
16382
16383 * syntax.c (Vnext_word_boundary_function_table): New variable.
16384 (next-word-boundary-function-table): Declare it as a Lisp variable
16385 in syms_of_syntax.
16386 (scan_words): Call functions in Vnext_word_boundary_function_table
16387 if any.
16388
16389 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16390
16391 * fontset.c (fs_load_font): If fontp->charset is not negative,
16392 return fontp without setting its members.
16393
163942008-02-01 Dave Love <fx@gnu.org>
16395
16396 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16397
16398 * m/sparc.h (HAVE_ALLOCA): Delete.
16399
16400 * s/irix6-5.h: Don't include strings.h.
16401 (bcopy, bzero, bcmp): Don't undef.
16402
16403 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16404
16405 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16406 (TIOCSIGSEND): Don't test IRIX6.
16407 (bcopy, bzero, bcmp): Define conditionally.
16408
164092008-02-01 Kenichi Handa <handa@m17n.org>
16410
16411 * buffer.c (Qas, Qmake, Qto): New variables.
16412 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16413 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16414
16415 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16416 we are inserting a process output into a multibyte buffer.
16417
16418 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16419 multibyte_char_to_unibyte.
16420
16421 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16422 by the primary charset, make it eight-bit char.
16423 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16424
16425 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16426 (charset_8_bit__control, charset_8_bit_graphic)
16427 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16428 (define_charset_internal): New function.
16429 (syms_of_charset): Call define_charset_internal for pre-defined
16430 charsets.
16431
16432 * charset.h (charset_8_bit): Extern it.
16433
16434 * coding.c (make_conversion_work_buffer): Adjust for the change
16435 of Fset_buffer_multibyte.
16436 (encode_coding_raw_text): Increment p0 in the loop.
16437
16438 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16439
16440 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16441 for the change of Fset_buffer_multibyte.
16442
16443 * fns.c (Fstring_to_multibyte): New function.
16444 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16445
164462008-02-01 Dave Love <fx@gnu.org>
16447
16448 * xfns.c (x_put_x_image): Declare args.
16449
16450 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16451 (try_font_list): Declare an arg.
16452
16453 * xdisp.c (message2_nolog, set_message): Declare an arg.
16454
16455 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16456
16457 * syntax.c (scan_sexps_forward): Declare an arg.
16458
16459 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16460 Declare an arg.
16461
16462 * lisp.h (Fnew_fontset): Declare.
16463
16464 * keymap.c (push_key_description): Call CHARACTERP correctly.
16465
16466 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16467 (face_for_char): Delete unused vars.
16468 (Fset_fontset_font): Doc fix. Delete unused vars.
16469
16470 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16471
16472 * composite.c (update_compositions): Declare arg.
16473
16474 * cm.c (calccost, cmgoto): Declare args.
16475
16476 * charset.c: Remove `emacs' conditional. Doc fixes.
16477 (map_char_table_for_charset): Declare.
16478
16479 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16480
16481 * ccl.c: Remove `emacs' conditional.
16482
164832008-02-01 Kenichi Handa <handa@m17n.org>
16484
16485 The following changes are to allow specifying multiple font
16486 patterns for a character range (specified by script or charset).
16487
16488 * Makefile.in (abbrev.o): Depend on syntax.h.
16489 (xfaces.o): Depend on charset.h.
16490
16491 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16492 SINGLE_BYTE_CHAR_P.
16493
16494 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16495
16496 * character.h (Vchar_script_table): Extern it.
16497
16498 * character.c (Vscript_alist): Delete.
16499 (Vchar_script_table, Qchar_script_table): New variable.
16500 (syms_of_character): Declare Vchar_script_table as a lisp variable
16501 and initialize it.
16502
16503 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16504 have property char-table-extra-slots, make no extra slot.
16505
16506 * dispextern.h (struct face): Delete member `charset'.
16507 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16508 SINGLE_BYTE_CHAR_P.
16509 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16510 Add prototypes.
16511 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16512 (generate_ascii_font_name): Rename from generate_ascii_font.
16513
16514 * fontset.h (get_font_repertory_func): New prototype.
16515 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16516 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16517
16518 * fontset.c (Qprepend, Qappend): New variables.
16519 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16520 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16521 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16522 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16523 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16524 (load_font_get_repertory): New functions.
16525 (fontset_set): Delete.
16526 (fontset_face): New arg FACE. Return face ID, not face.
16527 Complete re-write to handle new fontset structure. Change caller.
16528 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16529 (face_for_char): Don't call lookup_face.
16530 (make_fontset_for_ascii_face): New arg FACE.
16531 (fs_load_font): New arg CHARSET_ID. Don't check
16532 Vfont_encoding_alist here.
16533 (find_font_encoding): New function.
16534 (list_fontsets): Use STRINGP, not ! NILP.
16535 (accumulate_script_ranges): New function.
16536 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16537 re-written to handle new fontset structure.
16538 (Ffontset_font): Return a copy of element.
16539 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16540 docstring of font-encoding-alist.
16541
16542 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16543 (Fset_fotset_font): Fix arguments to 5.
16544
16545 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16546
16547 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16548 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16549 (highlight_trailing_whitespace): Adjust for the change of
16550 lookup_named_face.
16551
16552 * xfaces.c: Include charset.h.
16553 (load_face_font): Delete argument C. Change caller.
16554 (generate_ascii_font_name): Rename from generate_ascii_font.
16555 (font_name_registry): New function.
16556 (cache_face): Store ascii faces before non-ascii faces in buckets.
16557 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16558 Lookup only ascii faces.
16559 (lookup_non_ascii_face): New function.
16560 (lookup_named_face): Delete argument C. Change caller.
16561 (lookup_derived_face): Delete argument C. Change caller.
16562 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16563 a string, just call font_list with it.
16564 (choose_face_font): Delete arguments FACE and C. New arg
16565 FONT_SPEC. Change caller.
16566 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16567 Change caller.
16568 (realize_non_ascii_face): New function.
16569 (realize_x_face): Call load_face_font here.
16570 (realize_tty_face): Delete argument C. Change caller.
16571 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16572 get a face ID.
16573 (dump_realized_face): Don't print charset of FACE.
16574
16575 * xfns.c (x_set_font): Always call x_new_fontset and
16576 store_frame_parameter.
16577 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16578 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16579
16580 * xterm.h (x_get_font_repertory): Extern it.
16581
16582 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16583 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16584 it->multibyte_p is zero.
16585 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16586 (x_new_fontset): If FONTSETNAME doesn't match any existing
16587 fontsets, create a new one.
16588 (x_get_font_repertory): New function.
16589
165902008-02-01 Kenichi Handa <handa@m17n.org>
16591
16592 * coding.c (Ffind_coding_systems_region_internal): Detect an
16593 ASCII only string correctly.
16594
16595 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16596 version is 0.
16597
165982008-02-01 Kenichi Handa <handa@m17n.org>
16599
16600 * lread.c: Include "coding.h".
16601 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16602 (load_each_byte, unread_char): New variables.
16603 (readchar_backlog): Delete.
16604 (readchar): Return a character unless load_each_byte is nonzero.
16605 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16606 cons. If unread_char is not -1, simply return it.
16607 (unreadchar): Handle the case that readcharfun is
16608 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16609 (read_multibyte): Delete.
16610 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16611 (read_emacs_mule_char): New functions.
16612 (Fload): Even if the file doesn't have the extension ".elc", if
16613 safe_to_load_p returns a positive version number, assume that the
16614 file contains bytecompiled code. If the version is less than 22,
16615 load the file while decoding multibyte sequences by emacs-mule.
16616 (readevalloop): Don't use readchar_backlog.
16617 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16618 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16619 (read_escape): Delete the arg BYTEREP.
16620 (read1): Set load_each_byte to 1 temporarily while handling
16621 #@NUMBER. Don't call read_multibyte.
16622 (read_vector): Call Fread with a cons. If readcharfun is
16623 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16624 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16625 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16626 and Qload_force_doc_strings.
16627
166282008-02-01 Kenichi Handa <handa@m17n.org>
16629
16630 * xdisp.c (face_before_or_after_it_pos): Call
16631 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16632
166332008-02-01 Kenichi Handa <handa@m17n.org>
16634
16635 * character.h (TRAILING_CODE_P): New macro.
16636 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16637 (string_char_with_unification): Fix prototype.
16638 (Vscript_alist): Extern it.
16639
16640 * character.c (Vscript_alist): New variable.
16641 (string_char_with_unification, str_as_unibyte)
16642 (string_escape_byte8): Add `const' to local variables.
16643 (syms_of_character): Declare script-alist as a Lisp variable.
16644
16645 * charset.h (Vcharset_ordered_list): Extern it.
16646 (charset_ordered_list_tick): Extern it.
16647 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16648 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16649 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16650 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16651 (Funify_charset): Adjust for the change of Funify_charset.
16652
16653 * charset.c (charset_ordered_list_tick): New variable.
16654 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16655 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16656 deunify intead of unify a charset.
16657 (string_xstring_p): Add `const' to local variables.
16658 (find_charsets_in_text): Add `const' to arguments and local variables.
16659 (encode_char): Adjust for the change of Funify_charset. Fix
16660 detecting of invalid code.
16661 (Fset_charset_priority): Increment charset_ordered_list_tick.
16662 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16663 and TO_CODE.
16664
16665 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16666 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16667 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16668 (decode_coding_ccl, consume_chars)
16669 (Ffind_coding_systems_region_internal)
16670 (Fcheck_coding_systems_region): Add `const' to local variables.
16671
16672 * print.c (print_object): Use octal form for printing the
16673 contents of a bool vector.
16674
166752008-02-01 Dave Love <fx@gnu.org>
16676
16677 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16678 <version == 20>: Refuse to load.
16679
166802008-02-01 Dave Love <fx@gnu.org>
16681
16682 * fns.c: Move coding.h.
16683 (Qcodeset, Qdays, Qmonths): New.
16684 (concat): Use CHARACTERP instead of INTEGERP.
16685 (Flocale_codeset): Delete.
16686 (Flanginfo): New function.
16687 (syms_of_fns): Change accordingly.
16688
16689 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16690
166912008-02-01 Dave Love <fx@gnu.org>
16692
16693 * casetab.c (init_casetab_once, init_casetab_once): Fix
16694 CHAR_TABLE_SET call.
16695
16696 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16697
16698 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16699
16700 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16701 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16702 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16703
16704 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16705
16706 * coding.c (ENCODE_DESIGNATION, decode_eol)
16707 (make_conversion_work_buffer, code_conversion_restore)
16708 (Fdefine_coding_system_internal): Convert Lisp types.
16709 (code_conversion_restore): Use EQ, not ==.
16710 (Fencode_coding_string): Fix code_convert_string call.
16711
16712 * coding.h (code_convert_region): Fix prototype.
16713
16714 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16715
16716 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16717 (Ffontset_info): Convert Lisp types.
16718
16719 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16720
16721 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16722
16723 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16724
16725 * chartab.c: Include "...h", not <...h> in some cases.
16726
16727 * callproc.c (Fcall_process): Remove unused variables.
16728
167292008-02-01 Dave Love <fx@gnu.org>
16730
16731 * coding.c (Fset_coding_system_priority): Allow null arg list.
16732
167332008-02-01 Dave Love <fx@gnu.org>
16734
16735 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16736 (Fself_insert_and_exit): Use CHARACTERP.
16737
16738 * callproc.c (Fcall_process): Remove unused vars.
16739
16740 * xterm.c (XTread_socket): Add extra dead keysyms.
16741
16742 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16743
16744 * dispextern.h: Remove prototypes for redraw_frame,
16745 redraw_garbaged_frames.
16746
16747 * cmds.c (Fself_insert_command): Use CHARACTERP.
16748
16749 * chartab.c (make_sub_char_table): Remove unused var.
16750 (Fset_char_table_default, Fmap_char_table): Doc fix.
16751
16752 * keymap.c (access_keymap): Remove generic char code.
16753 (push_key_description): Use CHARACTERP.
16754
167552008-02-01 Dave Love <fx@gnu.org>
16756
16757 * charset.c: Doc fixes.
16758 (Funify_charset): Extra checking.
16759
167602008-02-01 Dave Love <fx@gnu.org>
16761
16762 * lread.c: Remove some unused variables.
16763 (safe_to_load_p): If safe, return the magic number version byte.
16764 (Fload): Maybe use load-with-code-conversion.
16765
167662008-02-01 Kenichi Handa <handa@m17n.org>
16767
16768 * category.c (Fmodify_category_entry): Don't modify the contents
16769 of category_set for characters out of the range. Avoid
16770 unnecessary modification.
16771
16772 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16773 Vchar_unify_table. The default value of the table is now nil.
16774
16775 * character.c (syms_of_character): Setup Vchar_width_table for
16776 eight-bit-control and raw-byte chars.
16777
16778 * charset.h (enum define_charset_arg_index): Delete
16779 charset_arg_parents and add charset_arg_subset and
16780 charset_arg_superset.
16781 (enum charset_attr_index): Delete charset_parents and add
16782 charset_subset and charset_superset.
16783 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16784 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16785 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16786 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16787 (CHARSET_SUPERSET): New macros.
16788 (charset_work): Extern it.
16789 (ENCODE_CHAR): Use charset_work.
16790 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16791 (map_charset_chars): Extern it.
16792
16793 * charset.c (load_charset_map): Set the default value of encoder
16794 and deunifier char-tables to nil.
16795 (map_charset_chars): Change argument. Change callers. Use
16796 map_char_table_for_charset instead of map_char_table.
16797 (Fmap_charset_chars): New optional args from_code and to_code.
16798 (Fdefine_charset_internal): Adjust for the change of
16799 `define-charset' (:parents -> :subset or :superset).
16800 (charset_work): New variable.
16801 (encode_char, syms_of_charset): Adjust for the change of
16802 Fdefine_charset_internal.
16803 (Ffind_charset_string): Setup the vector `charsets' correctly.
16804
16805 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16806 the previous change.
16807 (char_table_ref_and_range): Adjust for the above change.
16808 (map_sub_char_table_for_charset): New function.
16809 (map_char_table_for_charset): New function.
16810
16811 * keymap.c (describe_vector): Handle a char-table directly here.
16812 (describe_char_table): Delete.
16813
16814 * lisp.h (map_charset_chars): Delete.
16815
168162008-02-01 Dave Love <fx@gnu.org>
16817
16818 * fns.c (count_combining): Comment out (unused).
16819 (Flocale_codeset): New.
16820 (syms_of_fns): Defsubr it.
16821
16822 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16823 (size_t): Remove.
16824
168252008-02-01 Dave Love <fx@gnu.org>
16826
16827 * Makefile.in (chartab.o): Depend on charset.h.
16828
168292008-02-01 Kenichi Handa <handa@m17n.org>
16830
16831 * character.c (syms_of_character): Set the default value of
16832 Vprintable_chars to Qnil.
16833
168342008-02-01 Dave Love <fx@gnu.org>
16835
16836 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16837
168382008-02-01 Kenichi Handa <handa@m17n.org>
16839
16840 * charset.c (load_charset_map): Handle the case that from < to
16841 correctly.
16842
16843 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16844 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16845 Pay attention to raw-8-bit chars.
16846
168472008-02-01 Kenichi Handa <handa@m17n.org>
16848
16849 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16850 It is not bytecompiled now.
16851
16852 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16853 (charset_jisx0208): New variables.
16854 (Fdefine_charset_internal): Setup them if appropriate.
16855 (init_charset_once): Initialize them to -1.
16856
16857 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16858 (charset_jisx0208): Extern them.
16859
16860 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16861 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16862 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16863 (setup_iso_safe_charsets): Fix arguments to Fassq.
16864 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16865 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16866 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16867 (encode_coding_iso_2022): Change the 1st arg to
16868 ENCODE_ISO_CHARACTER to a variable.
16869
168702008-02-01 Kenichi Handa <handa@m17n.org>
16871
16872 * charset.h (enum define_charset_arg_index): New enums
16873 charset_arg_min_code and charset_arg_max_code.
16874 (struct charset): New member char_index_offset.
16875
16876 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16877 Take charset->char_index_offset into account.
16878 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16879 args[charset_arg_max_code]. Setup charset.char_index_offset.
16880 (syms_of_charset): Fix args to Fdefine_charset_internal.
16881
168822008-02-01 Dave Love <fx@gnu.org>
16883
16884 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16885
168862008-02-01 Dave Love <fx@gnu.org>
16887
16888 * coding.c: Doc fixes.
16889 (Fcoding_system_aliases): Fix return value.
16890 (Qmac): Remove (duplicated) definition.
16891
168922008-02-01 Dave Love <fx@gnu.org>
16893
362654a6
JB
16894 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16895 New functions.
aac0c6e3
MR
16896
16897 * character.c (Fstring): Doc fix.
16898
16899 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16900
362654a6 16901 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
16902 (font-encoding-alist): Doc fix.
16903
169042008-02-01 Dave Love <fx@gnu.org>
16905
16906 * term.c (costs_set): Declare static, non-initialized for pcc.
16907 (encode_terminal_code): Remove unused var.
16908
16909 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16910 for K&R.
16911
16912 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16913
16914 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16915 (suffixes): Move out of make_subsidiaries for K&R.
16916
16917 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16918
16919 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16920
169212008-02-01 Dave Love <fx@gnu.org>
16922
16923 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
16924
16925 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
16926
169272008-02-01 Yong Lu <lyongu@asia-infonet.com>
16928
16929 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
16930
16931 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
16932
169332008-02-01 Kenichi Handa <handa@m17n.org>
16934
16935 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
16936 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
16937
169382008-02-01 Kenichi Handa <handa@m17n.org>
16939
16940 * coding.c (decode_coding_charset): Adjust for the change of
16941 Fdefine_coding_system_internal.
16942 (Fdefine_coding_system_internal): For a coding system of
16943 `charset' type, store a list of charset IDs in
16944 `charset_attr_charset_valids' element of coding attributes.
16945
169462008-02-01 Kenichi Handa <handa@m17n.org>
16947
16948 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
16949 (emacs_mule_char): New arg src. Delete arg `composition'. Change
16950 caller. Handle 2-byte and 3-byte charsets correctly.
16951 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
16952 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
16953 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
16954 (DECODE_EMACS_MULE_21_COMPOSITION): Call
16955 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
16956 sequence.
16957 (decode_coding_emacs_mule): Handle composition correctly. Rewind
16958 `src' and `consumed_chars' correctly before calling emacs_mule_char.
16959 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
16960 and alt&rule composition.
16961 (decode_coding_iso_2022): Handle composition correctly.
16962 (init_coding_once): Setup emacs_mule_bytes for private charsets.
16963
16964 * charset.c (Fdefine_charset_internal): Fix bug for the case of
16965 re-defining a charset. If the charset has :emacs-mule-id, setup
16966 emacs_mule_bytes.
16967 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
16968
169692008-02-01 Kenichi Handa <handa@m17n.org>
16970
16971 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
16972 (encode_coding_big5, encode_coding_charset): If coding requires safe
16973 encoding, produce a character specified by
16974 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
16975
169762008-02-01 Dave Love <fx@gnu.org>
16977
16978 * xterm.c (XSetIMValues): Declare.
16979
16980 * process.c: Conditionally include sys/wait.h, pty.h.
16981
16982 * print.c (print_object): Fix print format for 64-bit systems.
16983
16984 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
16985
16986 * buffer.c (emacs_strerror): Declare.
16987
16988 * fontset.c (Fclear_face_cache): Declare.
16989 (accumulate_font_info): Comment-out (unused).
16990 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
16991 variables.
16992
16993 * character.h (string_escape_byte8): Declare.
16994
16995 * charset.c (load_charset_map, load_charset_map_from_file): Remove
16996 unused vars.
16997 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
16998 (Fmap_charset_chars): Doc fix.
16999
17000 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
17001 (Fset_coding_system_priority, Fset_coding_system_priority)
17002 (Fdefine_coding_system_internal): Doc fix.
17003
170042008-02-01 Dave Love <fx@gnu.org>
17005
17006 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
17007
170082008-02-01 Kenichi Handa <handa@m17n.org>
17009
17010 * character.c (string_escape_byte8): Make multibyte string with
17011 correct size.
17012
17013 * charset.c (Fmake_char): Delete unnecessary code.
17014
170152008-02-01 Kenichi Handa <handa@m17n.org>
17016
17017 * xfns.c (x_encode_text): Allocate coding.destination here, and
17018 call encode_coding_object with dst_object Qnil.
17019
17020 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
17021 multibyte form correctly.
17022
17023 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
17024 against Vfont_encoding_alist.
17025
17026 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
17027 handling of charset list.
17028 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
17029 (decode_coding_object): Move point to coding->dst_pos before
17030 calling post-read-conversion function.
17031 (encode_coding_object): Give correct arguments to
17032 pre-write-conversion. Ignore the return value of
17033 pre-write-conversion function. Pay attention to the case that
17034 pre-write-conversion changes the current buffer. If dst_object is
17035 Qt, even if coding->src_bytes is zero, allocate at least one byte
17036 to coding->destination.
17037
17038 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
17039
17040 * charset.c (Fmake_char): Make it more backward compatible.
17041 (Fmap_charset_chars): Fix docstring.
17042
170432008-02-01 Dave Love <fx@gnu.org>
17044
17045 * coding.c: Doc fixes.
17046 (Fdefine_coding_system_alias): Use names, not symbols, in
17047 coding-system-alist.
17048
170492008-02-01 Kenichi Handa <handa@m17n.org>
17050
17051 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
17052 of calling free_realized_face.
17053
170542008-02-01 Yong Lu <lyongu@asia-infonet.com>
17055
17056 * charset.c (read_hex): Don't treat SPC as a comment starter.
17057 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
17058 (Fdecode_char): Fix typo.
17059
170602008-02-01 Kenichi Handa <handa@m17n.org>
17061
17062 * charset.h (struct charset): New member `code_space_mask'.
17063
17064 * coding.c (coding_set_source): Delete the local variable beg_byte.
17065 (encode_coding_charset, Fdefine_coding_system_internal):
17066 Delete the local variable charset.
17067 (Fdefine_coding_system_internal): Setup
17068 attrs[coding_attr_charset_valids] correctly.
17069
17070 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
17071 member to check if CODE is valid or not.
17072 (Fdefine_charset_internal): Initialize `code_space_mask' member.
17073 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
17074 is within the range of charset->min_code and carset->max_code.
17075
170762008-02-01 Dave Love <fx@gnu.org>
17077
17078 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
17079
17080 * dispextern.h (generate_ascii_font): Fix return type.
17081
17082 * xfaces.c (generate_ascii_font): Fix arg declaration.
17083
17084 * coding.c (coding_inherit_eol_type)
17085 (Fset_terminal_coding_system_internal)
17086 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
17087
170882008-02-01 Kenichi Handa <handa@m17n.org>
17089
17090 * coding.c (decode_coding_charset, encode_coding_charset): Handle
17091 multiple charsets correctly.
17092
170932008-02-01 Kenichi Handa <handa@m17n.org>
17094
17095 * search.c (boyer_moore): Fix handling of multibyte character
17096 translation.
17097
17098 * xdisp.c (display_mode_element): When the variable `elt' is
17099 changed, update `this' and `lisp_string'.
17100
171012008-02-01 Kenichi Handa <handa@m17n.org>
17102
17103 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
17104
17105 * callproc.c (Fcall_process): Be sure to give the current buffer
17106 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
17107
17108 * charset.c (struct charset_map_entries): New struct.
17109 (load_charset_map): Rename from parse_charset_map. New args
17110 entries and n_entries. Change caller.
17111 (load_charset_map_from_file): Rename from load_charset_map.
17112 Change caller. New arg control_flag. Call load_charset_map at
17113 the tail.
17114 (load_charset_map_from_vector): New function.
17115 (Fdefine_charset_internal): Setup charset.compact_codes_p.
17116 (encode_char): If the charset is compact, change a character index
17117 to a code point.
17118
17119 * coding.c (coding_alloc_by_making_gap): Check the case that the
17120 source and destination are the same correctly.
17121 (decode_coding_raw_text): Set coding->consumed_char and
17122 coding->consumed to 0.
17123 (produce_chars): If coding->chars_at_source is nonzero, update
17124 coding->consumed_char and coding->consumed before calling
17125 alloc_destination.
17126 (Fdefine_coding_system_alias): Register ALIAS in
17127 Vcoding_system_alist.
17128 (syms_of_coding): Define `no-conversion' coding system at the tail.
17129
17130 * fileio.c (Finsert_file_contents): Set coding_system instead of
17131 val. If the current buffer is multibyte, always call
17132 decode_coding_gap.
17133
17134 * xfaces.c (try_font_list): Give higher priority to fontset's
17135 family than face's family.
17136
171372008-02-01 Kenichi Handa <handa@m17n.org>
17138
17139 * callproc.c (Fcall_process): Be sure to give the current buffer
17140 to decode_coding_c_string.
17141
17142 * xfaces.c (try_font_list): Give a family specified in a fontset
17143 higher priority than a family specified in a face.
17144
171452008-02-01 Kenichi Handa <handa@m17n.org>
17146
17147 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
17148 Fix arguments to insert_from_buffer.
17149
17150 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
17151
171522008-02-01 Kenichi Handa <handa@m17n.org>
17153
17154 * coding.c (produce_chars): Set the variable `multibytep' correctly.
17155 (decode_coding_gap): Set coding->dst_multibyte correctly.
17156
171572008-02-01 Kenichi Handa <handa@m17n.org>
17158
17159 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
17160 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
17161 (encode_coding_utf_16): Substitute coding->default_char for
17162 non-Unicode characters.
17163 (decode_coding): Don't call record_insert here.
17164 (setup_coding_system): Initialize `surrogate' of
17165 coding->spec.utf_16 to 0.
17166 (EMIT_ONE_BYTE): Fix for multibyte case.
17167
17168 * insdel.c (insert_from_gap): Call record_insert.
17169
171702008-02-01 Kenichi Handa <handa@m17n.org>
17171
17172 * casefiddle.c (casify_region): Fix multibyte case.
17173
17174 * character.c (c_string_width): Add return type `int'.
17175 (char_string_with_unification): Delete arg ADVANCED.
17176
17177 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
17178 (CHAR_STRING): Adjust for the change of char_string_with_unification.
17179 (CHAR_STRING_ADVANCE): Make it do-while statement.
17180
17181 * chartab.c (sub_char_table_set_range): Optimize for the case
17182 DEPTH == 3. Add workaround code for a GCC optimization bug.
17183
17184 * charset.c (parse_charset_map): Remove an unused variable.
17185
17186 * coding.c: Delete unused variables.
17187
17188 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
17189 earlier. If inserted is zero and the coding system doesn't
17190 require flushing, don't call decode_coding_gap.
17191
17192 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
17193
171942008-02-01 Kenichi Handa <handa@m17n.org>
17195
17196 The following changes are for using Unicode as an internal
17197 character model, and use UTF-8 format for buffer/string
17198 representation.
17199
17200 * .gdbinit (xchartable): Adjust for the change of char table structure.
17201 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
17202
17203 * Makefile.in (obj): Add character.o and chartab.o.
17204 (lisp, shortlisp): Remove utf-8.elc.
17205 (*.o): For many files, change dependency on charset.h to
17206 character.h, and add dependency on character.h.
17207 (character.o, chartab.o): New targets.
17208
17209 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
17210 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
17211 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
17212 of "charset.h".
17213
17214 * dired.c, filelock.c: Include "character.h".
17215
17216 * alloc.c: Include "character.h" instead of "charset.h".
17217 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
17218 (syms_of_alloc): Remove defsubr for Smake_char_table.
17219
17220 * buffer.c: Include "character.h" instead of "charset.h", don't
17221 include "coding.h".
17222 (Fset_buffer_multibyte): Adjust for UTF-8.
17223
17224 * buffer.h: EXFUN Fbuffer_live_p.
17225
17226 * callproc.c: Include "character.h" instead of "charset.h".
17227 (Fcall_process): Big change for the new code-conversion APIs.
17228
17229 * casetab.c: Include "character.h" instead of "charset.h".
17230 (set_canon, set_identity, shuffle): Adjust for the new
17231 map_char_table spec.
17232 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
17233 accessing the char table structure.
17234
17235 * chartab.c: New file that implements char table.
17236
17237 * category.c: Include "character.h".
17238 (copy_category_entry): New function.
17239 (copy_category_table): Call map_char_table and copy_category_entry.
17240 (Fmake_category_table): Initialize all top-level slots.
17241 (char_category_set): New function.
17242 (modify_lower_category_set): Delete.
17243 (Fmodify_category_entry): Call char_table_ref_and_range.
17244
17245 * category.h (CATEGORY_SET): Just call char_category_set.
17246
17247 * ccl.c: Include "character.h".
17248 (Qccl, Qcclp): New variables.
17249 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
17250 it's less than 256.
17251 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
17252 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
17253 and DST type.
17254 (ccl_driver): Change types of argument, adjust code accordingly.
17255 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
17256 ccl_driver.
17257 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
17258
17259 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
17260 New members src_multibyte, dst_multibyte, consumed, and produced.
17261 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
17262 (CODING_SPEC_CCL_PROGRAM): New macro.
17263 (ccl_driver): Update prototype.
17264 (Qccl, Qcclp, Fccl_program_p): Extern them.
17265 (CHECK_CCL_PROGRAM): New macro.
17266
17267 * character.c, character.h, chartab.c: New files.
17268
17269 * charset.c: Mostly re-written. Move character and multibyte sequence
17270 handling codes to character.c.
17271
17272 * charset.h: Mostly re-written. Move character and multibyte sequence
17273 handling codes to character.h.
17274
17275 * coding.c, coding.h: Mostly re-written.
17276
17277 * composite.c: Include "character.h" instead of "charset.h".
17278 (CHAR_WIDTH): Move to character.h.
17279 (HASH_KEY, HASH_VALUE): Delete.
17280
17281 * composite.h (enum composition_method): Change order of enumeration
17282 symbols.
17283
17284 * data.c: Include "character.h" instead of "charset.h".
17285 (Faref): Call CHAR_TABLE_REF for a char table.
17286 (Faset): Call CHAR_TABLE_SET for a char table.
17287
17288 * dispextern.h (free_realized_face, check_face_attribytes)
17289 (generate_ascii_font): Extern them.
17290 (free_realized_multibyte_face): Delete extern.
17291
17292 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
17293 table structure.
17294
17295 * editfns.c: Include "character.h" instead of "charset.h".
17296 (Fchar_to_string): Always call CHAR_STRING.
17297
17298 * emacs.c (main): Call init_charset_once, init_charset,
17299 syms_of_chartab, and syms_of_character.
17300
17301 * fileio.c: Include "character.h" instead of "charset.h".
17302 (Finsert_file_contents): Big change for the new code-conversion API.
17303 (choose_write_coding_system, Fwrite_region): Likewise.
17304 (build_annotations_2): Delete.
17305 (e_write): Big change for the new code-conversion API.
17306
17307 * fns.c: Include "character.h" instead of "charset.h".
17308 (copy_sub_char_table): Move to chartab.c.
17309 (Fcopy_sequence): Call copy_char_table for a char table.
17310 (concat): Delete codes calling count_multibyte.
17311 (string_char_to_byte, string_byte_to_char): Adjust for the new
17312 multibyte form.
17313 (internal_equal): Adjust for the change of char table structure.
17314 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
17315 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
17316 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17317 (char_table_translate, optimize_sub_char_table)
17318 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17319 chartab.c.
17320 (char_table_ref_and_index): Delete.
17321 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17322 (Fmd5): Call preferred_coding_system instead of accessing
17323 Vcoding_category_list. Adjust for the new code-conversion API.
17324 (syms_of_fns): Move defsubr for char table related functions to
17325 chartab.c.
17326
17327 * fontset.c: Mostly re-written.
17328
17329 * fontset.h (struct font_info): Change type of the member encoding_type.
17330 (enum FONT_SPEC_INDEX): New enum.
17331 (fontset_font_pattern, fs_load_font): Update prototype.
17332 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17333
17334 * indent.c: Include "character.h" instead of "charset.h".
17335 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17336
17337 * insdel.c: Include "character.h" instead of "charset.h".
17338 (copy_text): Don't refer to Vnonascii_translation_table.
17339 (insert_from_gap): New function.
17340
17341 * keyboard.c: Include "character.h" instead of "charset.h".
17342 (command_loop_1): Never call direct_output_forward_char before
17343 a non-ASCII character.
17344 (read_char): If Vkeyboard_translate_table is a char table, always
17345 translate a character.
17346
17347 * keymap.c: Include "character.h".
17348 (store_in_keymap): Handle the case that IDX is a cons.
17349 (Fdefine_key): Handle the case that KEY is a cons and the car part
17350 is also a cons (range).
17351 (push_key_description): Adjust for the new character code.
17352 (describe_vector): Call describe_char_table for a char table.
17353 (describe_char_table): New function.
17354
17355 * keymap.h (describe_char_table): Extern it.
17356
17357 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17358 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17359 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17360 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17361 Delete.
17362 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17363 structure.
17364 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17365 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17366 (CHARTAB_SIZE_BITS_3): New macros.
17367 (chartab_size): Extern it.
17368 (struct Lisp_Char_Table): Re-design.
17369 (struct Lisp_Sub_Char_Table): New structure.
17370 (HASH_KEY, HASH_VALUE): Move from fns.c.
17371 (CHARACTERBITS): Define as 22.
17372 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17373 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17374 (GC_SUB_CHAR_TABLE_P): New macro.
17375 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17376 (code_convert_string_norecord): Deleted extern.
17377 (init_character_once, syms_of_character, init_charset)
17378 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17379
17380 * lread.c: Include "character.h".
17381 (read_multibyte): New arg NBYTES.
17382 (read_escape): Change the meaning of returned *BYTEREP.
17383 (to_multibyte): Delete.
17384 (read1): Adjust the handling of char table and string.
17385
17386 * print.c: Include "character.h" instead of "charset.h".
17387 (print_string): Convert 8-bit raw bytes to octal form by
17388 string_escape_byte8.
17389 (print_object): Adjust for the new multibyte form. Print 8-bit
17390 raw bytes always in octal form. Handle sub char table correctly.
17391
17392 * process.c: Include "character.h" instead of "charset.h".
17393 (read_process_output, send_process): Adjust for the new
17394 code-conversion API.
17395
17396 * puresize.h (BASE_PURESIZE): Increase.
17397
17398 * regex.c: Include "character.h" instead of "charset.h".
17399 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17400 (regex_compile): Accept a range whose starting and ending
17401 character have different leading bytes.
17402 (analyse_first): Adjust for the above change.
17403
17404 * search.c: Include "character.h" instead of "charset.h".
17405 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17406 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17407
17408 * syntax.c: Include "character.h" instead of "charset.h".
17409 (syntax_parent_lookup): Delete.
17410 (Fmodify_syntax_entry): Accept a cons as CHAR.
17411 (skip_chars): Adjust for the new multibyte form.
17412 (init_syntax_once): Call char_table_set_range instead of directly
17413 accessing the structure of a char table.
17414
17415 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17416 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17417 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17418 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17419
17420 * term.c: Include "buffer.h" and "character.h".
17421 (encode_terminal_code, write_glyphs): Adjust for the new
17422 code-conversion API.
17423 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17424
17425 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17426
17427 * xdisp.c: Include "character.h".
17428 (get_next_display_element): Adjust for the new multibyte form.
17429 (disp_char_vector): Adjust for the new char table structure.
17430 (decode_mode_spec_coding): Adjust for the new structure of
17431 coding system.
17432 (decode_mode_spec): Adjust for the new code-conversion API.
17433
17434 * xfaces.c: Include "character.h" instead of "charset.h".
17435 (load_face_font): Adjust for the change of choose_face_font and
17436 FS_LOAD_FONT.
17437 (generate_ascii_font): New function.
17438 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17439 (set_font_frame_param): Adjust for the change of choose_face_font.
17440 (free_realized_face): Make it public.
17441 (free_realized_faces_for_fontset): Rename from
17442 free_realized_multibyte_face. Free also faces realized for ASCII.
17443 (choose_face_font): Change arguments. Adjust for the change of
17444 fontset_font_pattern and FS_LOAD_FONT.
17445
17446 * xfns.c: Include "character.h".
17447 (x_encode_text): Adjust for the new code-conversion API.
17448
17449 * xselect.c: Don't include "charset.h".
17450 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17451
17452 * xterm.c: Include "character.h".
17453 (x_encode_char): New argument CHARSET. Change caller.
17454 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17455 Call ENCODE_CHAR instead of SPLIT_CHAR.
17456 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17457 CHAR_WIDTH instead of CHARSET_WIDTH.
17458 (XTread_socket): Adjust for the new code-conversion API.
17459 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17460 (x_load_font): Adjust for the change of struct font.
17461
174622008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17463
17464 * xfaces.c (face_at_buffer_position): Remove unused vars.
17465
174662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17467
17468 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17469 Fix overflow checking.
17470
174712008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17472
17473 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17474 Cancel previous change.
17475
174762008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17477
17478 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17479 ccl->eight_bit_control. Fix check for buffer overflow.
17480 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17481 (ccl_driver): Initialize extra_bytes to 0.
17482
174832008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17484
17485 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17486 return it ORed with ctrl_modifier.
17487
174882008-01-29 Miles Bader <miles@gnu.org>
17489
17490 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17491
174922008-01-28 Jason Rumney <jasonr@gnu.org>
17493
17494 * w32.c (stat): Don't double check for networked drive.
17495
174962008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17497
17498 * window.c (run_window_configuration_change_hook): New function.
17499 Code extracted from set_window_buffer. Set the selected frame.
17500 (set_window_buffer): Use it.
17501 * window.h (run_window_configuration_change_hook): Declare.
17502 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17503
17504 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17505
175062008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17507
17508 * Makefile.in: Remove references to unused macros.
17509
175102008-01-26 Eli Zaretskii <eliz@gnu.org>
17511
17512 * w32.c (g_b_init_get_sid_sub_authority)
17513 (g_b_init_get_sid_sub_authority_count): New static variables.
17514 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17515 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17516 (init_user_info): Use them to retrieve uid and gid.
17517 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17518 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17519 st_uid and st_gid of the file.
17520
175212008-01-26 Jason Rumney <jasonr@gnu.org>
17522
17523 * w32.c (logon_network_drive): New function.
17524 (stat): Use it.
17525
175262008-01-26 Chong Yidong <cyd@stupidchicken.com>
17527
17528 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17529 invisible text covered with an ellipsis.
17530
175312008-01-25 Richard Stallman <rms@gnu.org>
17532
17533 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17534 jump back to beginning. Move some other initializations after that.
17535 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17536 New variables.
17537 (syms_of_xdisp): Init them.
17538
17539 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17540
17541 * buffer.c (reset_buffer_local_variables):
17542 Implement `permanent-local-hook'.
17543 (Qpermanent_local_hook): New variable.
17544 (syms_of_buffer): Init and staticpro it.
17545
175462008-01-25 Michael Albinus <michael.albinus@gmx.de>
17547
17548 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17549
175502008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17551
17552 * fns.c (Fclrhash): Return TABLE.
17553
175542008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17555
17556 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17557 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17558 is set even without positional changes.
17559 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17560
17561 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17562
175632008-01-23 Jason Rumney <jasonr@gnu.org>
17564
17565 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17566
17567 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17568 the unicode range available in MULE by locale-coding-system.
17569 Improve dbcs lead byte detection. Set event timestamp and modifiers
17570 earlier.
17571
175722008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17573
17574 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17575 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17576 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17577 when used on child processes.
17578
175792008-01-21 Michael Albinus <michael.albinus@gmx.de>
17580
17581 * dbusbind.c (Fdbus_method_return_internal): Rename from
17582 Fdbus_method_return.
17583 (Fdbus_unregister_object): Move to dbus.el.
17584 (Fdbus_call_method, Fdbus_method_return_internal)
17585 (Fdbus_send_signal): Improve debug messages.
17586
175872008-01-20 Martin Rudalics <rudalics@gmx.at>
17588
17589 * undo.c (undo_inhibit_record_point): New variable.
17590 (syms_of_undo): Initialize it.
17591 (record_point): Don't record point when undo_inhibit_record_point
17592 is set.
17593
175942008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17595
17596 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17597
17598 * xdisp.c (Qauto_hscroll_mode): New var.
17599 (syms_of_xdisp): Initialize it.
17600 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17601 window's buffer.
17602 (hscroll_windows): Don't check automatic_hscrolling_p here.
17603
17604 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17605 vscroll if we're setting window-buffer to the value it already has.
17606
176072008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17608
17609 * m/intel386.h: Remove references to XENIX.
17610
176112008-01-17 Andreas Schwab <schwab@suse.de>
17612
17613 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17614 instead of HAVE_X86_64_LIB64_DIR.
17615 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17616
176172008-01-17 Glenn Morris <rgm@gnu.org>
17618
17619 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17620 to HAVE_X86_64_LIB64_DIR.
17621
176222008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17623
17624 * s/irix3-3.h:
17625 * s/irix4-0.h:
17626 * s/386-ix.h:
17627 * s/domain.h:
17628 * s/hpux9-x11r4.h:
17629 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17630
17631 * sysdep.c: Remove code containing references to symbols defined
17632 by unsupported systems.
17633
176342008-01-16 Glenn Morris <rgm@gnu.org>
17635
17636 * coding.c (select-safe-coding-system-function): Doc fix.
17637
176382008-01-15 Glenn Morris <rgm@gnu.org>
17639
17640 * config.in: Revert 2008-01-13 change: this is a generated file.
17641
176422008-01-13 Tom Tromey <tromey@redhat.com>
17643
17644 * lisp.h: Fix typo.
17645
176462008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17647
17648 * m/sequent-ptx.h:
17649 * m/sequent.h:
17650 * s/ptx.h:
17651 * s/ptx4-2.h:
17652 * s/ptx4.h: Remove files for systems no longer supported.
17653
17654 * callproc.c (Fcall_process): Fix previous change.
17655
176562008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17657
17658 * unexsunos4.c: Remove file, system not supported anymore.
17659
17660 * m/mips.h:
17661 * m/intel386.h:
17662 * callproc.c:
17663 * config.in:
17664 * ecrt0.c:
17665 * emacs.c:
17666 * fileio.c:
17667 * frame.c:
17668 * getpagesize.h:
17669 * keyboard.c:
17670 * lread.c:
17671 * process.c:
17672 * puresize.h:
17673 * sysdep.c:
17674 * systty.h:
17675 * syswait.h:
17676 * unexec.c:
17677 * xdisp.c:
17678 * alloc.c: Remove code containing references to symbols defined by
17679 unsupported systems.
17680
176812008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17682
17683 * coding.c (detect_coding_mask): Fix previous change.
17684
176852008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17686
17687 * coding.c (detect_coding_iso2022): New arg
17688 latin_extra_code_state. Allow Latin extra codes only
17689 when *latin_extra_code_state is nonzero.
17690 (detect_coding_mask): If there is a NULL byte, detect the encoding
17691 as UTF-16 or binary. If Latin extra codes exist, detect the
17692 encoding as ISO-2022 only when there's no other proper encoding is
17693 found.
17694
176952008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17696
17697 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17698 #ifdef MAC_OS.
17699
177002008-01-08 Richard Stallman <rms@gnu.org>
17701
17702 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17703
177042008-01-06 Nick Roberts <nickrob@snap.net.nz>
17705
17706 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17707 menu bar in parentheses.
17708
177092008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17710
17711 * m/7300.h:
17712 * m/acorn.h:
17713 * m/alliant-2800.h:
17714 * m/alliant.h:
17715 * m/alliant1.h:
17716 * m/alliant4.h:
17717 * m/altos.h:
17718 * m/amdahl.h:
17719 * m/apollo.h:
17720 * m/att3b.h:
17721 * m/aviion-intel.h:
17722 * m/aviion.h:
17723 * m/celerity.h:
17724 * m/clipper.h:
17725 * m/cnvrgnt.h:
17726 * m/convex.h:
17727 * m/cydra5.h:
17728 * m/delta88k.h:
17729 * m/dpx2.h:
17730 * m/dual.h:
17731 * m/elxsi.h:
17732 * m/f301.h:
17733 * m/gould-np1.h:
17734 * m/gould.h:
17735 * m/i860.h:
17736 * m/ibmps2-aix.h:
17737 * m/ibmrt-aix.h:
17738 * m/ibmrt.h:
17739 * m/irist.h:
17740 * m/is386.h:
17741 * m/isi-ov.h:
17742 * m/mega68.h:
17743 * m/mg1.h:
17744 * m/news-r6.h:
17745 * m/news-risc.h:
17746 * m/news.h:
17747 * m/nh3000.h:
17748 * m/nh4000.h:
17749 * m/ns16000.h:
17750 * m/ns32000.h:
17751 * m/nu.h:
17752 * m/orion.h:
17753 * m/orion105.h:
17754 * m/paragon.h:
17755 * m/pfa50.h:
17756 * m/plexus.h:
17757 * m/pyramid.h:
17758 * m/pyrmips.h:
17759 * m/sh3el.h:
17760 * m/sps7.h:
17761 * m/sr2k.h:
17762 * m/stride.h:
17763 * m/sun1.h:
17764 * m/sun2.h:
17765 * m/sun3-68881.h:
17766 * m/sun3-fpa.h:
17767 * m/sun3-soft.h:
17768 * m/sun3.h:
17769 * m/sun386.h:
17770 * m/symmetry.h:
17771 * m/tad68k.h:
17772 * m/tahoe.h:
17773 * m/targon31.h:
17774 * m/tek4300.h:
17775 * m/tekxd88.h:
17776 * m/tower32.h:
17777 * m/tower32v3.h:
17778 * m/ustation.h:
17779 * m/wicat.h:
17780 * m/xps100.h:
17781 * s/cxux.h:
17782 * s/cxux7.h:
17783 * s/dgux.h:
17784 * s/dgux4.h:
17785 * s/dgux5-4-3.h:
17786 * s/dgux5-4r2.h:
17787 * s/esix.h:
17788 * s/esix5r4.h:
17789 * s/hiuxmpp.h:
17790 * s/hiuxwe2.h:
17791 * s/iris3-5.h:
17792 * s/iris3-6.h:
17793 * s/isc2-2.h:
17794 * s/isc3-0.h:
17795 * s/isc4-0.h:
17796 * s/isc4-1.h:
17797 * s/newsos5.h:
17798 * s/newsos6.h:
17799 * s/osf1.h:
17800 * s/osf5-0.h:
17801 * s/riscix1-1.h:
17802 * s/riscix12.h:
17803 * s/sco4.h:
17804 * s/sco5.h:
17805 * s/sunos4-0.h:
17806 * s/sunos4-1.h:
17807 * s/sunos413.h:
17808 * s/sunos4shr.h:
17809 * s/umax.h:
17810 * s/unipl5-2.h:
17811 * s/xenix.h:
17812 * cxux-crt0.s:
17813 * unexapollo.c:
17814 * unexconvex.c:
17815 * unexenix.c:
17816 * unexsni.c: Remove files for systems no longer supported.
17817
17818 * m/intel386.h: Remove references to unsupported systems.
17819
17820 * w32.c (get_emacs_configuration): Remove reference to i860.
17821
17822 * sysdep.c: Remove dead code.
17823
178242008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17825
17826 * s/rtu.h:
17827 * m/masscomp.h: Remove files. Platform is obsolete.
17828
178292008-01-04 Michael Albinus <michael.albinus@gmx.de>
17830
17831 * dbusbind.c (Fdbus_method_return): New function.
17832 (xd_read_message): Add the serial number to the event.
17833 (Fdbus_register_method): Activate the function.
17834
178352008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17836
17837 * keyboard.c (read_key_sequence): Fix typo.
17838
178392008-01-03 Michael Albinus <michael.albinus@gmx.de>
17840
17841 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17842 (xd_signature, xd_append_arg): Handle element type detection for
17843 empty arrays.
17844 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17845 SDATA () calls; this must be solved more general.
17846 (Fdbus_register_signal): Use SBYTES instead of strlen.
17847
178482008-01-03 Magnus Henoch <magnus@zemdatav>
17849
17850 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17851 unsigned int for byte values (necessary for big-endian platform).
17852 (Fdbus_call_method): Handle the case of no returned arguments.
17853
178542007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17855
17856 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17857
178582007-12-31 Magnus Henoch <mange@freemail.hu>
17859
17860 * dbusbind.c (xd_signature): Signature of variant is just "v".
17861
178622007-12-30 Michael Albinus <michael.albinus@gmx.de>
17863
17864 * dbusbind.c: Fix several errors and compiler warnings.
17865 Reported by Tom Tromey <tromey@redhat.com>.
17866 (XD_ERROR, XD_DEBUG_MESSAGE)
17867 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17868 (xd_append_arg): Part for basic D-Bus types rewritten.
17869 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17870 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17871 appropriate.
17872 (xd_read_message): Return Qnil. Don't signal an error; it is not
17873 useful during event reading.
17874 (Fdbus_register_signal): Signal an error if the check for
17875 FUNCTIONP fails.
17876 (Fdbus_register_method): New function. The implementation is not
17877 complete, the call of the function signals an error therefore.
17878 (Fdbus_unregister_object): New function, renamed from
17879 Fdbus_unregister_signal. The initial check signals an error, if
17880 the object is not well formed.
17881
178822007-12-30 Richard Stallman <rms@gnu.org>
17883
17884 * textprop.c (get_char_property_and_overlay):
17885 Signal error if POSITION is out of range in a buffer.
17886
178872007-12-29 Martin Rudalics <rudalics@gmx.at>
17888
17889 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17890 because the original parameters are in pure storage now.
17891
178922007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17893
17894 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17895
178962007-12-22 Eli Zaretskii <eliz@gnu.org>
17897
17898 * callint.c (syms_of_callint) <command-history>: Add reference to
17899 history-length in the doc string.
17900
179012007-12-17 Jason Rumney <jasonr@gnu.org>
17902
17903 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17904 before passing as wParam.
17905
179062007-12-22 Michael Albinus <michael.albinus@gmx.de>
17907
17908 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17909 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17910 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17911 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17912 as number.
17913 (Fdbus_call_method): Fix docstring.
17914
179152007-12-21 Michael Albinus <michael.albinus@gmx.de>
17916
17917 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17918 New macros.
17919 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17920 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17921 Simplify.
17922 (xd_signature): New function.
17923 (xd_append_arg): Compute also signatures. Major rewrite.
17924 (xd_retrieve_arg): Make debug messages friendly.
17925 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
17926 Check for signatures of arguments.
17927
179282007-12-19 Michael Albinus <michael.albinus@gmx.de>
17929
17930 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
17931 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
17932 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
17933 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
17934 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
17935 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
17936 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
17937 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
17938 (xd_retrieve_value): Remove. Functionality included in ...
17939 (xd_append_arg): New function.
17940 (Fdbus_call_method, Fdbus_send_signal): Apply it.
17941
179422007-12-16 Michael Albinus <michael.albinus@gmx.de>
17943
17944 * dbusbind.c (top): Include <stdio.h>.
17945 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
17946 dbus_message_new_method_call and dbus_message_new_signal.
17947 (Fdbus_register_signal): Rename unique_name to uname.
17948 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
17949 non-existing unique name. Fix typos in matching rule. Return an
17950 object which is useful in Fdbus_unregister_signal.
17951 (Fdbus_unregister_signal): Reimplementation, in order to remove
17952 only the corresponding entry.
17953 (Vdbus_registered_functions_table): Change the order of entries.
17954 Apply these changes in xd_read_message and Fdbus_register_signal.
17955
179562007-12-16 Andreas Schwab <schwab@suse.de>
17957
17958 * fileio.c (Finsert_file_contents): Fix overflow check to not
17959 depend on undefined integer overflow.
17960
179612007-12-14 Jason Rumney <jasonr@gnu.org>
17962
17963 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
17964 for characters above 127.
17965
179662007-12-13 Jason Rumney <jasonr@gnu.org>
17967
17968 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
17969 before dereferencing array.
17970 (lookup_vk_code): Remove zero comparison.
17971
179722007-12-14 Michael Albinus <michael.albinus@gmx.de>
17973
17974 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
17975 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
17976 Use `unsigned int' instead of `uint'.
17977 (xd_read_message, Fdbus_register_signal): Split expressions into
17978 multiple lines before operators "&&" and "||", according to the
17979 GNU Coding Standards.
17980
179812007-12-14 Eli Zaretskii <eliz@gnu.org>
17982
17983 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
17984
179852007-12-12 Juri Linkov <juri@jurta.org>
17986
17987 * buffer.c (Frename_buffer): In interactive spec replace
17988 `read-buffer' with `read-string' that uses `buffer-name-history'
17989 as history, and the current buffer's name as default.
17990
179912007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
17992
17993 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
17994 manipulating the backtrace manually.
17995 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
17996 (struct backtrace, backtrace_list): Remove.
17997 (command_loop_1): Remove dead var `no_direct'.
17998
17999 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
18000 preserve non-built-in buffer-local variables.
18001 (Fkill_all_local_variables): Don't re-create&re-set permanent
18002 buffer-local variables.
18003
180042007-12-09 Juri Linkov <juri@jurta.org>
18005
18006 * buffer.c (Frename_buffer): Change interactive spec from "s" to
18007 Lisp code that uses `read-buffer' with current buffer as default.
18008
180092007-12-08 Michael Albinus <michael.albinus@gmx.de>
18010
18011 * dbusbind.c (xd_read_message): Generate an event for every
18012 registered handler. There might be several handlers registered
18013 for the same signal.
18014 (Fdbus_register_signal): Don't overwrite a registration for the
18015 same signal. Add a new registration if handlers are different.
18016 (Vdbus_registered_functions_table): Rework doc string.
18017
180182007-12-07 Michael Albinus <michael.albinus@gmx.de>
18019
18020 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
18021 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
18022 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
18023 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
18024 Unify argument lists.
18025 (xd_read_message, Fdbus_register_signal): Reorder and extend event
18026 arguments and hash table keys. Use unique name for service.
18027 (Fdbus_unregister_signal): Remove checks.
18028 (Vdbus_registered_functions_table): Fix doc string.
18029
180302007-12-05 Magnus Henoch <mange@freemail.hu>
18031
18032 * process.c (make_process): Initialize pty_flag to 0.
18033
180342007-12-05 Jason Rumney <jasonr@gnu.org>
18035
18036 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
18037 specified XBMs.
18038
180392007-12-05 Richard Stallman <rms@gnu.org>
18040
18041 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
18042
180432007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18044
18045 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
18046 New variable.
18047 (mac_try_close_socket) [MAC_OSX]: New function.
18048 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
18049 Update cfsockets_for_select. Replace invalid CFRunLoop source.
18050
18051 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
18052 Use mac_try_close_socket.
18053
180542007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18055
18056 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
18057 reloc_base.
18058 (copy_dysymtab): Compute relocation base here.
18059 (rebase_reloc_address) [__ppc64__]: New function.
18060 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
18061 changed.
18062
180632007-12-05 Jason Rumney <jasonr@gnu.org>
18064
18065 * w32proc.c (sys_spawnve): Quote args with wildcards.
18066
180672007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18068
18069 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
18070 __objc_* sections.
18071 (unrelocate) [_LP64]: Set relocation base to address of data segment.
18072
180732007-12-05 Michael Albinus <michael.albinus@gmx.de>
18074
18075 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
18076 Move check for Vdbus_registered_functions_table to
18077 xd_read_queued_messages.
18078 (xd_read_queued_messages): Protect xd_read_message calls by
18079 internal_condition_case_1.
18080
180812007-12-04 Michael Albinus <michael.albinus@gmx.de>
18082
18083 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
18084 Qdbus_system_bus and Qdbus_session_bus, respectively.
18085 (Vdbus_intern_symbols): Remove.
18086 (Vdbus_registered_functions_table): New hash table.
18087 (XD_SYMBOL_INTERN_SYMBOL): Remove.
18088 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
18089 Rewrite in order to manage registered functions by hash table
18090 Vdbus_registered_functions_table.
18091
180922007-12-03 Jan Djärv <jan.h.d@swipnet.se>
18093
18094 * xterm.c: Update URL to Window Manager Specification in comment.
18095
180962007-12-02 Michael Albinus <michael.albinus@gmx.de>
18097
18098 * config.in (HAVE_DBUS): Add.
18099
18100 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
18101 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
18102 (obj): Add $(DBUS_OBJ).
18103 (LIBES): Add $(DBUS_LIBS).
18104 (dbusbind.o): New target.
18105
18106 * dbusbind.c: New file.
18107
18108 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
18109
18110 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
18111 (Qdbus_event): New Lisp symbol.
18112 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
18113 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 18114 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
18115
18116 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
18117
181182007-12-01 Richard Stallman <rms@gnu.org>
18119
18120 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
18121
181222007-11-30 Jason Rumney <jasonr@gnu.org>
18123
18124 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
18125 (w32con_reset_terminal_modes): Clear screen buffer.
18126 (w32_face_attributes): Don't use color indexes that are out of range.
18127 Only reverse the default colors.
18128
18129 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
18130 WINDOWSNT.
18131
18132 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
18133
181342007-11-29 Jason Rumney <jasonr@gnu.org>
18135
18136 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
18137 (w32_face_attributes): Use Vtty_defined_color_alist to determine
18138 if the terminal colors are initialized.
18139 (unspecified_fg, unspecified_bg): Remove unused declarations.
18140
181412007-11-29 Andreas Schwab <schwab@suse.de>
18142
18143 * keyboard.c (apply_modifiers): Fix typo.
18144
181452007-11-29 Richard Stallman <rms@gnu.org>
18146
18147 * keymap.c (Fcurrent_local_map): Doc fix.
18148
181492007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
18150
18151 * s/gnu-kfreebsd.h: New file.
18152
181532007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
18154
18155 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
18156 Don't cast redundantly.
18157
18158 * keyboard.c (KEY_TO_CHAR): New macro.
18159 (parse_modifiers, apply_modifiers): Accept integer arguments.
18160 (read_key_sequence): Use them to unify the "shift->unshift" mapping
18161 for chars and symbol keys.
18162 After doing such remapping, apply function-key-map again.
18163
181642007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
18165
18166 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
18167 compiled anymore.
18168
181692007-11-26 Andreas Schwab <schwab@suse.de>
18170
18171 * process.c (list_processes_1): Fix indentation level of the
18172 command column.
18173
181742007-11-23 Andreas Schwab <schwab@suse.de>
18175
18176 * editfns.c (Fformat): Handle %c specially since it requires the
18177 argument to be of type int.
18178
181792007-11-23 Markus Triska <markus.triska@gmx.at>
18180
18181 * emacs.c (main): Call init_editfns before init_process, since
18182 init_process sets Vprocess_connection_type depending on OS release.
18183
181842007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
18185
18186 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
18187 (find_symbol_value): Use do_symval_forwarding.
18188
18189 * data.c (set_internal): Set the value in the `cons-cell' (for
18190 Buffer_Local_values) not only for frame-local variables.
18191
181922007-11-22 Andreas Schwab <schwab@suse.de>
18193
18194 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
18195 values to sprintf.
18196 * keymap.c (Fsingle_key_description): Likewise.
18197 * print.c (print_object): Likewise.
18198
181992007-11-22 Jan Djärv <jan.h.d@swipnet.se>
18200
18201 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
18202 file for image is nil.
18203
182042007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
18205
18206 * term.c: Include stdarg.h.
18207 (fatal): Implement using varargs.
18208 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
18209
182102007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18211
18212 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
18213 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
18214 Update call to buffer_slot_type_mismatch.
18215 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
18216 (buffer_slot_type_mismatch): Update.
18217 * buffer.c (buffer_local_types): Remove.
18218 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
18219 (defvar_per_buffer): Set the type in the buffer_objfwd.
18220
182212007-11-21 Jason Rumney <jasonr@gnu.org>
18222
18223 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
18224 CreateFileMapping returns NULL on failure.
18225
182262007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18227
18228 * search.c (Fset_match_data): Remove the `evaporate' feature.
18229 (unwind_set_match_data): Don't use the `evaporate' feature.
18230
182312007-11-21 Jason Rumney <jasonr@gnu.org>
18232
18233 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
18234
18235 * w32console.c (w32con_write_glyphs): Remove unused variables.
18236
182372007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
18238
18239 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
18240
18241 * s/darwin.h (MULTI_KBOARD): Remove.
18242
18243 * macfns.c (x_create_tip_frame, Fx_create_frame)
18244 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
18245
182462007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
18247
18248 * buffer.c (Fbuffer_local_value): Remove redundant test.
18249 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
18250 than in `current-buffer' to match the comment.
18251 Do the swap using swap_in_global_binding.
18252
18253 * data.c (store_symval_forwarding, set_internal):
18254 * eval.c (specbind): Remove dead code.
18255
18256 * coding.c (detect_coding, Fupdate_coding_systems_internal):
18257 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
18258 Since we do not want to see internal Lisp_*fwd objects here.
18259
182602007-11-18 Jan Djärv <jan.h.d@swipnet.se>
18261
18262 * sysdep.c (init_system_name): Use getaddrinfo if available.
18263
18264 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
18265 (x_scroll_bar_note_movement): start, end, with, height in struct
18266 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
18267
182682007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
18269
18270 * puresize.h (BASE_PURESIZE): Increase to 1190000.
18271
182722007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
18273
18274 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
18275 This undoes Richard's change of 14-Oct-2002.
18276
18277 * alloc.c (allocate_other_vector):
18278 * lisp.h (allocate_other_vector): Remove.
18279
18280 * window.c (struct save_window_data): Move non-lisp data to the end
18281 and make it `int' rather than Lisp_Object.
18282 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
18283 Done wrap/unwrap integer values.
18284 (Fset_window_configuration, compare_window_configurations):
18285 Update use of fields to their new types.
18286
18287 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
18288 Turn integer fields into `int'. Merge x_window_low and x_window_high.
18289 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
18290 (SET_SCROLL_BAR_X_WINDOW): Remove.
18291 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
18292 Access the new x_window field directly.
18293 * xterm.c (x_scroll_bar_create): Use a pseudovector.
18294 Don't wrap/unwrap integers into Lisp_Objects.
18295 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
18296 (x_scroll_bar_report_motion):
18297 Don't wrap/unwrap integers into Lisp_Objects.
18298 (x_term_init): Use SDATA.
18299 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
18300 (x_scroll_bar_set_handle, x_scroll_bar_remove)
18301 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
18302 (x_scroll_bar_report_motion, x_scroll_bar_clear):
18303 * xfns.c (x_set_background_color):
18304 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
18305 Access the new x_window field directly.
18306
18307 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
18308 (allocate_pseudovector): Make non-static.
18309
18310 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
18311 (allocate_pseudovector): Declare.
18312 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
18313
183142007-11-15 Andreas Schwab <schwab@suse.de>
18315
18316 * editfns.c (Fformat): Correctly format EMACS_INT values.
18317 Also take precision into account when formatting an integer.
18318
18319 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18320
183212007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18322
18323 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18324 (syms_of_keyboard): Defsubr it.
18325
18326 * data.c (swap_in_global_binding): Fix longstanding bug where
18327 store_symval_forwarding was not called with the right second argument,
18328 thus causing objfwd-ing from being dropped.
18329
183302007-11-14 Juanma Barranquero <lekktu@gmail.com>
18331
18332 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18333 (Fx_display_pixel_height, Fx_display_planes)
18334 (Fx_display_color_cells, Fx_server_max_request_size)
18335 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18336 (Fx_display_visual_class, Fx_display_save_under):
18337 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18338 (Fx_display_pixel_height, Fx_display_planes)
18339 (Fx_display_color_cells, Fx_server_max_request_size)
18340 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18341 (Fx_display_mm_height, Fx_display_mm_width)
18342 (Fx_display_backing_store, Fx_display_visual_class)
18343 (Fw32_select_font, Fx_display_save_under):
18344 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18345 (Fx_display_pixel_height, Fx_display_planes)
18346 (Fx_display_color_cells, Fx_server_max_request_size)
18347 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18348 (Fx_display_save_under): Fix typos in docstrings.
18349
183502007-11-14 Juanma Barranquero <lekktu@gmail.com>
18351
18352 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18353 corresponding to deleted entries; they are an implementation detail.
18354 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18355 Remove variables.
18356 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18357 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18358 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18359 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18360 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18361 (Fw32_define_rgb_color, Fw32_load_color_file)
18362 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18363 Fix typos in docstrings.
18364 (Fx_server_version): Reflow docstring.
18365 (Fw32_shell_execute): Doc fixes.
18366
183672007-11-13 Juanma Barranquero <lekktu@gmail.com>
18368
18369 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18370 if w32_parse_hot_key returned nil.
18371
183722007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18373
18374 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18375
183762007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 18377
aac0c6e3
MR
18378 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18379
18380 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18381
18382 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18383 Remove W32_SCROLL_BAR_CLICK_EVENT.
18384
18385 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18386 Add MULTIMEDIA_KEY_EVENT.
18387
18388 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18389 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18390 (make_lispy_event) [WINDOWSNT]: Use it to translate
18391 MULTIMEDIA_KEY_EVENT.
18392
18393 * w32term.h (WM_APPCOMMAND): Define if not already.
18394 (GET_APPCOMMAND_LPARAM): Likewise.
18395
18396 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18397 WM_APPCOMMAND.
18398
18399 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18400 (syms_of_w32fns): Export and initialize it.
18401 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18402
184032007-11-09 Chong Yidong <cyd@stupidchicken.com>
18404
18405 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18406 twice.
18407
18408 * xdisp.c (handle_face_prop): Fix last change.
18409
184102007-11-09 Richard Stallman <rms@gnu.org>
18411
18412 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18413 not just for after-strings and before-strings.
18414 Call face_for_overlay_string and pass the overlay to it.
18415 (handle_display_prop): Determine whether property came from an overlay.
18416 Pass OVERLAY arg to handle_single_display_spec.
18417 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18418 (load_overlay_strings): Fill in it->string_overlays.
18419 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18420
18421 * xfaces.c (face_for_overlay_string): Function renamed from
18422 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18423
18424 * dispextern.h (struct it): New elt string_overlays.
18425 New elt from_overlay, also in stack.
18426 Rearrange a few elements.
18427 (face_for_overlay_string): Decl renamed from
18428 face_at_buffer_position_no_overlays, and add argument.
18429
184302007-11-09 Richard Stallman <rms@gnu.org>
18431
18432 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18433 to get the base face for an overlay string.
18434
18435 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18436
18437 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18438
18439 * xdisp.c (handle_stop): Move some code out of loop.
18440
184412007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18442
18443 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18444 Fix conversion from Lisp object to ATSUFontID.
18445
184462007-11-09 Jason Rumney <jasonr@gnu.org>
18447
18448 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18449
184502007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18451
18452 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18453 Don't assume regions are aligned to page boundary.
18454 (print_load_command_name): Add LC_UUID if defined.
18455
184562007-11-09 Richard Stallman <rms@gnu.org>
18457
18458 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18459
184602007-11-07 Jason Rumney <jasonr@gnu.org>
18461
18462 * s/windows95.h: Remove.
18463
184642007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18465
18466 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18467 abort with a message on unhandled store_type values.
18468
184692007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18470
18471 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18472 Remove HAVE_X11R5 and HAVE_X11R4.
18473
184742007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18475
18476 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18477
184782007-11-01 Johan Bockgård <bojohan@gnu.org>
18479
18480 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18481 Don't set s->stippled_p here, since it has already been set by
18482 x_set_glyph_string_gc from x_draw_glyph_string.
18483
184842007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18485
18486 * sunfns.c: Remove file.
18487
18488 * m/sun386.h:
18489 * m/sun2.h:
18490 * m/sparc.h: Remove Sun windows code.
18491
184922007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18493
18494 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18495 (init_keyboard): Set current_kboard's window-system to nil.
18496 (tty_read_avail_input): Typo.
18497 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18498
184992007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18500
18501 * s/usg5-4.h:
18502 * s/usg5-3.h:
18503 * s/ptx.h:
18504 * m/is386.h:
18505 * m/ibmps2-aix.h:
18506 * Makefile.in: Remove all mentions of X10.
18507
18508 * dispnew.c (syms_of_display): Don't mention version 10.
18509
185102007-10-28 Juanma Barranquero <lekktu@gmail.com>
18511
18512 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18513 ($(BLD)/abbrev.$(O)): Remove.
18514
185152007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18516
18517 Rewrite abbrev.c in Elisp.
18518 * image.c (Qcount): Don't declare as extern.
18519 (syms_of_image): Initialize and staticpro `Qcount'.
18520 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18521 * emacs.c (main): Don't call syms_of_abbrev.
18522 * Makefile.in (obj): Remove abbrev.o.
18523 (abbrev.o): Remove.
18524 * abbrev.c: Remove.
18525
185262007-10-26 Martin Rudalics <rudalics@gmx.at>
18527
18528 * window.c (window_min_size_2): Don't count header-line.
18529
185302007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18531
18532 * frame.h (struct frame): Move all bit fields after the first bit
18533 field to take advantage of the available space. Group all the
18534 chars together to reduce wasted space due to padding.
18535
185362007-10-26 Juanma Barranquero <lekktu@gmail.com>
18537
18538 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18539
18540 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18541 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18542 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18543 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18544 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18545 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18546 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18547 (last_marked, mark_object_loop_halt): Make static.
18548
18549 * frame.c (syms_of_frame) <delete-frame-functions>:
18550 Fix typo in docstring.
18551
185522007-10-25 Juanma Barranquero <lekktu@gmail.com>
18553
18554 * w32.c (init_environment): Fix tiny memory leak.
18555 (w32_get_resource): Remove unused variable `ok'.
18556
185572007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18558
18559 Make `window-system' into a keyboard-local variable (rather than
18560 frame-local as done originally by multi-tty).
18561
18562 * keyboard.h (struct kboard): Add Vwindow_system.
18563 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18564 (mark_kboards): Mark Vwindow_system.
18565
18566 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18567 (init_display): Don't set the obsolete `window-system' frame-param.
18568
18569 * xterm.c (x_term_init):
18570 * w32term.c (w32_create_terminal):
18571 * term.c (init_tty): Set Vwindow_system.
18572 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18573 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18574
18575 * xfns.c (Fx_create_frame, x_create_tip_frame):
18576 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18577 * macfns.c (Fx_create_frame):
18578 Don't set the obsolete `window-system' frame-param.
18579
18580 * frame.h (Qwindow_system): Remove.
18581 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18582 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18583
185842007-10-24 Richard Stallman <rms@gnu.org>
18585
18586 * frame.c (x_figure_window_size): For fullscreen case,
18587 set USPosition | PPosition without clobbering rest of window_prompting.
18588
18589 * keyboard.c (Fcurrent_idle_time): Doc fix.
18590
18591 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18592
185932007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18594
18595 * process.c (unwind_request_sigio): Only define if __ultrix__.
18596
18597 * callproc.c (child_setup): Remove spurious *.
18598
18599 * lisp.h (Fget_text_property): Declare.
18600 (have_menus_p): Declare it here rather than in sys-dep header files.
18601 * macterm.h (have_menus_p):
18602 * msdos.h (have_menus_p):
18603 * xterm.h (have_menus_p): Remove.
18604
18605 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18606 (Fmake_variable_frame_local): Just check the variable's const-ness
18607 rather than checking nil or t.
18608
186092007-10-22 Jason Rumney <jasonr@gnu.org>
18610
18611 * w32fns.c: Include math.h.
18612 (w32_abort): Declaration moved to nt/config.nt.
18613
18614 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18615 (abort): Redefinition moved to nt/config.nt.
18616
18617 * m/windowsnt.h: Remove.
18618
186192007-10-22 Juanma Barranquero <lekktu@gmail.com>
18620
18621 * emacs.c (Fdump_emacs): Fix typo in message.
18622 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18623 <installation-directory>: Reflow docstring.
18624
186252007-10-22 Juri Linkov <juri@jurta.org>
18626
18627 * minibuf.c: Allow minibuffer default to be a list of default values.
18628 With empty input use the first element of this list as returned default.
18629 (string_to_object)
18630 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18631 (read_minibuf): If defalt is cons, set histstring to its car.
18632 (Fread_string): If default_value is cons, set val to its car.
18633 (Fread_buffer): If def is cons, use its car.
18634 (Fcompleting_read): If defalt is cons, set val to its car.
18635
186362007-10-21 Michael Albinus <michael.albinus@gmx.de>
18637
18638 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18639
186402007-10-20 Juanma Barranquero <lekktu@gmail.com>
18641
18642 * doc.c (Fdocumentation): Check for advice in all cases.
18643
186442007-10-19 Chong Yidong <cyd@stupidchicken.com>
18645
18646 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18647
186482007-10-19 Richard Stallman <rms@gnu.org>
18649
18650 * doc.c (Fdocumentation): Check for and handle an advised function.
18651
186522007-10-19 Juanma Barranquero <lekktu@gmail.com>
18653
18654 * process.c (Fset_process_filter): Doc fix.
18655
186562007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18657
18658 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18659 which caused key-translation-map to applied repeatedly (thus breaking
18660 double-mode).
18661
186622007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18663
18664 * xselect.c (x_own_selection, x_handle_selection_clear)
18665 (x_clear_frame_selections):
18666 * w32menu.c (list_of_panes, list_of_items):
18667 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18668 * textprop.c (validate_plist, interval_has_all_properties)
18669 (interval_has_some_properties, interval_has_some_properties_list)
18670 (add_properties, text_property_list):
18671 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18672 * minibuf.c (Fassoc_string):
18673 * macselect.c (x_own_selection, x_clear_frame_selections)
18674 (Fx_disown_selection_internal):
18675 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18676 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18677
186782007-10-17 Chong Yidong <cyd@stupidchicken.com>
18679
18680 * process.c: Link to libs for calling res_init() if available.
18681 (Fmake_network_process): Call res_init() before getaddrinfo or
18682 gethostbyname, if possible.
18683
186842007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18685
18686 * lread.c (read1): Set pvectype for char_tables.
18687
18688 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18689 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18690 Add type checks.
18691 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18692
18693 * alloc.c (free_misc): Use XMISCTYPE.
18694 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18695
186962007-10-17 Glenn Morris <rgm@gnu.org>
18697
18698 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18699 (syms_of_minibuf): Add Qcompletion_ignore_case.
18700 * dired.c (Qcompletion_ignore_case): Change to external.
18701 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18702 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18703 (Fread_file_name): Use it rather than intern'ing.
18704
18705 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18706 (Fread_coding_system): Ignore case of user input.
18707
187082007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18709
18710 * xdisp.c (handle_display_prop): Ignore display specs after
18711 replacing one when string text is being replaced.
18712 (handle_single_display_spec): Pretend as if characters with display
18713 property haven't been consumed only when buffer text is being replaced.
18714
187152007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18716
18717 * xfns.c (Fx_create_frame, Fx_display_list):
18718 * window.c (window_fixed_size_p, enlarge_window)
18719 (shrink_window_lowest_first):
18720 * macterm.c (init_font_name_table):
18721 * macfns.c (Fx_create_frame, Fx_display_list):
18722 * lread.c (close_load_descs):
18723 * keyboard.c (read_char_x_menu_prompt):
18724 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18725 * coding.c (code_convert_region_unwind): Test the type of an object
18726 rather than just !NILP before extracting data from it.
18727
18728 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18729
18730 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18731 (XMISCANY): New macro.
18732 (XMISCTYPE): Use it.
18733 (struct Lisp_Misc_Any): New type.
18734 (union Lisp_Misc): Use it.
18735 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18736 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18737 (find_symbol_value, set_internal, default_value, Fset_default)
18738 (Fmake_variable_buffer_local, Fmake_local_variable)
18739 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18740 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18741 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18742 * alloc.c (allocate_buffer): Set the size and tag.
18743 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18744 Use XMISCANY.
18745 (die): Follow the GNU convention for error messages.
18746 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18747 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18748 tag any more.
18749 (set_buffer_internal_1):
18750 * frame.c (store_frame_param):
18751 * eval.c (specbind):
18752 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18753
18754 * doc.c (Fsnarf_documentation): Simplify.
18755
187562007-10-14 Juanma Barranquero <lekktu@gmail.com>
18757
18758 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18759 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18760
187612007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18762
18763 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18764
187652007-10-14 Juanma Barranquero <lekktu@gmail.com>
18766
18767 * eval.c (do_autoload): Don't save autoloads.
18768
18769 * data.c (Ffset): Save autoload of the function being set.
18770
187712007-10-07 John Paul Wallington <jpw@pobox.com>
18772
18773 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18774 parameter before setting up faces.
18775
187762007-10-13 Eli Zaretskii <eliz@gnu.org>
18777
18778 * ccl.c (Fregister_code_conversion_map):
18779 * keyboard.c (append_tool_bar_item): Reformat last change.
18780
18781 * lisp.h (eabs): Rename from `abs'. All callers changed.
18782
187832007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18784
18785 * buffer.c (add_overlay_mod_hooklist):
18786 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18787 * fontset.c (make_fontset):
18788 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18789 (append_tool_bar_item):
18790 * macmenu.c (grow_menu_items):
18791 * w32menu.c (grow_menu_items):
18792 * xmenu.c (grow_menu_items): Use larger_vector.
18793
187942007-10-13 Eli Zaretskii <eliz@gnu.org>
18795
18796 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18797 selected frame'' on MSDOS).
18798
187992007-10-12 Martin Rudalics <rudalics@gmx.at>
18800
18801 * frame.c (Qexplicit_name): New variable.
18802 (x_report_frame_params): Report it in parameter alist.
18803 (syms_of_frame): Intern and staticpro it.
18804
188052007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18806
18807 * macfns.c (x_create_tip_frame): Set terminal for frame.
18808
188092007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18810
18811 * frame.c (Qenvironment): Remove.
18812 (syms_of_frame) <Qenvironment>: Don't initialize.
18813 (Fdelete_frame): Don't treat the `environment' param specially.
18814 * frame.h (Qenvironment): Don't declare.
18815 * callproc.c (set_initial_environment): Don't set unused frame param.
18816
18817 * frame.c (Fframe_with_environment): Remove.
18818 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18819
18820 * lisp.h (Fframe_with_environment): Don't declare.
18821
188222007-10-10 Juanma Barranquero <lekktu@gmail.com>
18823
18824 * indent.c (indent_tabs_mode, last_known_column)
18825 (last_known_column_modified): Make static.
18826 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18827
188282007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18829
18830 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18831
188322007-10-09 Jason Rumney <jasonr@gnu.org>
18833
18834 * w32term.c (x_set_window_size): Disable code that attempts to tell
18835 Lisp code about a size change before it actually happens.
18836
188372007-10-09 Richard Stallman <rms@gnu.org>
18838
18839 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18840 return HANDLED_RETURN.
18841
188422007-10-08 Martin Rudalics <rudalics@gmx.at>
18843
18844 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18845 when there's an unread command event.
18846
18847 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18848 window autoselection act appropriately when leaving selected frame.
18849 (syms_of_frame): Initialize focus_follows_mouse.
18850 * frame.h (focus_follows_mouse): Extern it.
18851 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18852 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18853 * msdos.c (dos_rawgetc): Likewise.
18854 * w32term.c (w32_read_socket): Likewise.
18855 * xterm.c (handle_one_xevent): Likewise.
18856 * xdisp.c (syms_of_xdisp): In doc-string of
18857 mouse-autoselect-window mention focus-follows-mouse.
18858
188592007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18860
18861 * macterm.c (mac_load_query_font): Fix missing return value.
18862 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18863 Add BLOCK_INPUT.
18864
188652007-10-08 Richard Stallman <rms@gnu.org>
18866
18867 * xdisp.c (get_window_cursor_type): Implement documented behavior
18868 for cursor-in-non-selected-windows = t.
18869
188702007-10-08 Jason Rumney <jasonr@gnu.org>
18871
18872 * w32.c (w32_get_resource): Always close registry keys.
18873
188742007-10-08 Jason Rumney <jasonr@gnu.org>
18875
18876 * makefile.w32-in (LIBS): Add COMCTL32.
18877
18878 * w32fns.c (globals_of_w32fns): Init common controls.
18879
188802007-10-08 Richard Stallman <rms@gnu.org>
18881
18882 * image.c (our_memory_buffer): Rename from omfib_buffer.
18883
188842007-10-08 Richard Stallman <rms@gnu.org>
18885
18886 * buffer.c (Foverlays_at): Doc fix.
18887
188882007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18889
18890 * fns.c (Fplist_put): Preserve uneven tail data.
18891
188922007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18893
18894 * termhooks.h (enum event_kind): Remove trailing comma.
18895
18896 * frame.h (enum): Remove trailing comma.
18897
188982007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18899
18900 * w32proc.c (delete_child): Don't terminate threads of zombies.
18901
189022007-10-08 Martin Rudalics <rudalics@gmx.at>
18903
18904 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18905
18906 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18907 last-repeatable-command.
18908 (init_kboard): Initialize Vlast_repeatable_command.
18909 (command_loop_1): Set it to real_this_command unless that was
18910 bound to an input event.
18911 (mark_kboards): Mark it.
18912
189132007-10-08 Richard Stallman <rms@gnu.org>
18914
18915 * eval.c (condition-case): Doc fix.
18916
189172007-10-08 Masatake YAMATO <jet@gyve.org>
18918
18919 * xfaces.c (tty_supports_face_attributes_p): Fix code
18920 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18921 was copied and not edited.
18922
189232007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
18924
18925 Add new `input-decode-map' keymap and use it for terminal
18926 escape sequences.
18927 * keyboard.h (struct kboard): Add Vinput_decode_map.
18928 Remove Vlocal_key_translation_map.
18929 * keyboard.c (read_key_sequence): Add support for input-decode-map.
18930 (init_kboard): Init input-decode-map.
18931 Replace local-key-translation-map back with key-translation-map.
18932 (syms_of_keyboard): Declare input-decode-map.
18933 Remove local-key-translation-map. Update docstrings.
18934 (mark_kboards): Mark Vinput_decode_map.
18935 Don't mark Vlocal_key_translation_map.
18936 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
18937 Replace local-key-translation-map back with key-translation-map.
18938 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
18939 Bind in input-decode-map rather than function-key-map.
18940
18941 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
18942 This was made redundant by the previous introduction of XSETPVECTYPE.
18943
189442007-10-09 Richard Stallman <rms@gnu.org>
18945
18946 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
18947
189482007-09-29 Richard Stallman <rms@gnu.org>
18949
18950 * eval.c (internal_condition_case_2, internal_condition_case_1)
18951 (internal_condition_case): Reenable abort if x_catching_errors ()
18952 to see if that really happens and why.
18953
189542007-10-06 Andreas Schwab <schwab@suse.de>
18955
18956 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
18957
189582007-10-04 Juanma Barranquero <lekktu@gmail.com>
18959
18960 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
18961
189622007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
18963
18964 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
18965
189662007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
18967
18968 * window.h (struct window):
18969 * window.c (struct save_window_data, struct saved_window):
18970 * termhooks.h (struct terminal):
18971 * process.h (struct Lisp_Process):
18972 * frame.h (struct frame):
18973 * buffer.h (struct buffer):
18974 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
18975 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
18976 The size field of (pseudo)vectors is now unsigned.
18977 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
18978
18979 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
18980 Turn `count' into an integer.
18981
18982 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
18983 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
18984 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
18985 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
18986 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
18987
18988 * alloc.c (allocate_pseudovector): New fun.
18989 (ALLOCATE_PSEUDOVECTOR): New macro.
18990 (allocate_window, allocate_terminal, allocate_frame)
18991 (allocate_process): Use it.
18992 (mark_vectorlike): New function.
18993 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
18994 (mark_terminals): Use it.
18995 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
18996 (Fmake_byte_code): Use XSETPVECTYPE.
18997
18998 * frame.c (Fframe_parameters): Minor simplification.
18999
19000 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
19001
19002 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
19003
19004 * buffer.c (Fget_buffer_create, init_buffer_once):
19005 * lread.c (defsubr):
19006 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
19007
19008 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
19009 defined differently in the m/*.h files.
19010 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
19011 (XSETPVECTYPE): New macro.
19012 (XSETPSEUDOVECTOR): Use it.
19013
19014 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
19015 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
19016
19017 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
19018 * lread.c (defvar_per_buffer):
19019 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
19020
19021 * window.c (candidate_window_p): Only consider as visible frames that
19022 are on the same terminal.
19023
19024 * m/ibms390x.h (MARKBIT): Remove unused macro.
19025
190262007-10-01 Juanma Barranquero <lekktu@gmail.com>
19027
19028 * lread.c (Fload): Fix typo in docstring.
19029
190302007-10-01 Michaël Cadilhac <michael@cadilhac.name>
19031
19032 * floatfns.c (Fexpt): Manually check for overflows, so that a power
19033 of a non-zero value can't yield zero.
19034
190352007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
19036
19037 * term.c (term_clear_mouse_face, term_mouse_highlight)
19038 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
19039
19040 * print.c (safe_debug_print): Use XHASH.
19041
19042 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
19043 Lisp elements such as tags.
19044 (XHASH): New macro.
19045 (EQ): Use it.
19046 (SREF, SSET, STRING_COPYIN): Use SDATA.
19047 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
19048
19049 * alloc.c (mark_terminal): Remove left-over declaration.
19050 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
19051 (allocate_vectorlike): Remove type argument. Adjust callers.
19052 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
19053 Only handle the one remaining MEM_TYPE_VECTORLIKE.
19054
19055 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
19056 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
19057 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
19058 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
19059 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
19060 Use them.
19061
19062 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
19063 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
19064 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
19065
190662007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
19067
19068 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
19069 loaded by default.
19070
190712007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
19072
19073 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
19074 on this tty.
19075 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
19076
19077 * term.c (mouse_face_window): Rename from Qmouse_face_window.
19078 Update all users.
19079 (handle_one_term_event): Use Gpm_DrawPointer.
19080 (Fgpm_mouse_start): Rename from Fterm_open_connection.
19081 Signal errors instead of returning nil. Always return nil.
19082 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
19083 Make it a noop if gpm-mouse was not activated.
19084 (syms_of_term): Update names.
19085
190862007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
19087
19088 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
19089 (init_sys_modes): Check that gpm_tty is the current tty.
19090
19091 * alloc.c (allocate_terminal): Set the vector size to only count the
19092 lisp fields. Initialize those to nil.
19093 (mark_object): Don't treat terminals specially.
19094 (mark_terminal): Remove.
19095 (mark_terminals): Use mark_object instead.
19096
19097 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
19098 the GC to the beginning.
19099
19100 * indent.h:
19101 * indent.c: Use EMACS_INT for ints coming from Elisp data.
19102
19103 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
19104
191052007-09-25 Jason Rumney <jasonr@gnu.org>
19106
19107 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
19108
19109 * w32console.c (create_w32cons_output): Remove.
19110
19111 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
19112
19113 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
19114 (reset_sys_modes): Use reset_terminal_modes_hook.
19115
191162007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
19117
19118 * eval.c (do_autoload): Don't output any message.
19119
191202007-09-24 Juri Linkov <juri@jurta.org>
19121
19122 * emacs.c (standard_args): Change priority of "--no-splash"
19123 from 40 to 3. Add "--no-desktop" with the same priority.
19124
191252007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
19126
19127 * alloc.c (gc_sweep): Check cons cell mark bits word by word
19128 and optimize the case where they are all 1.
19129
191302007-09-23 Johannes Weiner <hannes@saeurebad.de>
19131
19132 * lisp.h (abs): Define if not defined.
19133 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
19134 Don't define `abs', since it's defined in lisp.h.
19135
191362007-09-22 Eli Zaretskii <eliz@gnu.org>
19137
19138 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
19139 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
19140 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
19141 (init_tty): Use DEV_TTY instead of "/dev/tty".
19142 [WINDOWSNT]: No need to protect from NAME arg being null.
19143
191442007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
19145
19146 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
19147 up the tty state.
19148
191492007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19150
19151 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
19152 (gpm_tty): Change its type.
19153 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
19154 (gpm_tty): Change its type and initialize it.
19155 (Fterm_open_connection): Check the frame is indeed a tty.
19156 Use the new gpm_tty.
19157 (Fterm_close_connection): Use the new gpm_tty.
19158 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
19159 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
19160
191612007-09-21 Juanma Barranquero <lekktu@gmail.com>
19162
19163 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
19164 underline_color, to draw strike-through.
19165
191662007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19167
19168 * lisp.h (allocate_terminal): Declare.
19169
19170 * window.c (candidate_window_p): Consider frames that are being placed
19171 by the user as somewhere between visible and iconified.
19172 (window_loop): Prefer windows on the current frame.
19173 (Fselect_window): Move the use of select-frame to the beginning so we
19174 can just delegate all the work (it'll call us back anyway).
19175
19176 * frame.c (Qdisplay_environment_variable):
19177 * frame.h (Qdisplay_environment_variable): Delete.
19178
19179 * .gdbinit (xbacktrace): Print the arg's address rather than the value
19180 of the first arg, since that value may be a union.
19181
19182 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
19183 parameter rather than Qdisplay_environment_variable. If all else
19184 fails, look for DISPLAY in initial-environment.
19185
191862007-09-21 Glenn Morris <rgm@gnu.org>
19187
19188 * Makefile.in (emacstool): Remove target.
19189 (lisp, shortlisp): Remove termdev.elc.
19190
191912007-09-21 Markus Triska <markus.triska@gmx.at>
19192
19193 * xterm.c (x_delete_display): Compile session management conditionally.
19194
191952007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
19196
19197 * callproc.c (getenv_internal_1): New function.
19198 (getenv_internal): Use it.
19199 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
19200
19201 * terminal.c (get_terminal): Don't accept ints to represent terminals.
19202 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
19203 (Fset_terminal_parameter): Work with dead terminals as well.
19204 (Fmodify_terminal_parameters): Remove.
19205
19206 * terminal.c (get_terminal): Handle terminals.
19207 Make sure the terminal returned is live.
19208 (create_terminal): Use allocate_terminal.
19209 (mark_terminals): Move to alloc.c.
19210 (delete_terminal): Use terminal->name as liveness status.
19211 NULL out fields after freeing their contents.
19212 Don't deallocate the object.
19213 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
19214 rather than an int.
19215 (Fterminal_live_p): Accept non-integer arguments.
19216 (Fterminal_list): Return terminal objects rather than an ints.
19217
19218 * alloc.c (enum mem_type): New member for `terminal' objects.
19219 (allocate_terminal): New function.
19220 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
19221 Handle terminals.
19222 (mark_terminal): New fun.
19223 (mark_terminals): Move from terminal.c.
19224
19225 * term.c (get_tty_terminal): Don't treat output_initial specially.
19226 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
19227 (delete_tty): Use terminal->name as liveness status.
19228
19229 * termhooks.h (struct terminal): Make it into a pseudovector.
19230 Remove `deleted' replaced by checking `name's nullness.
19231
19232 * print.c (print_object): Handle terminals.
19233
19234 * lisp.h (enum pvec_type): New `terminal' pseudovector.
19235 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
19236
19237 * frame.c (make_terminal_frame):
19238 * keyboard.c (tty_read_avail_input):
19239 * w32term.c (x_delete_terminal):
19240 * xfns.c (Fx_create_frame, x_create_tip_frame):
19241 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
19242
192432007-09-20 Glenn Morris <rgm@gnu.org>
19244
19245 * process.c (Fmake_network_process): Doc fix.
19246
192472007-09-19 Jason Rumney <jasonr@gnu.org>
19248
19249 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
19250
192512007-09-19 Michaël Cadilhac <michael@cadilhac.name>
19252
19253 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
19254 Fix a C warning regarding variable constness.
19255
19256 * xterm.c (handle_one_xevent): Fix a C warning.
19257
192582007-09-18 Jason Rumney <jasonr@gnu.org>
19259
19260 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
19261
192622007-09-17 Jan Djärv <jan.h.d@swipnet.se>
19263
19264 * gtkutil.c (gdpy_def): New variable.
19265 (xg_initialize): Initialize gdpy_def.
19266 (xg_display_close): If no other display exists, set gdpy_def to a
19267 new connection.
19268
192692007-09-16 Jan Djärv <jan.h.d@swipnet.se>
19270
19271 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
19272 when we have no file name for the icon.
19273 (xg_tool_bar_expose_callback): Remove.
19274 (xg_create_tool_bar): Don't connect expose signal to
19275 xg_tool_bar_expose_callback.
19276 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
19277
192782007-09-16 Andreas Schwab <schwab@suse.de>
19279
19280 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
19281 values instead of zapping them.
19282
192832007-09-14 Glenn Morris <rgm@gnu.org>
19284
19285 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
19286 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
19287 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
19288 scope and rename to omfib_buffer for clarity.
19289 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
19290
192912007-09-14 Kenichi Handa <handa@m17n.org>
19292
19293 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
19294
192952007-09-13 Jason Rumney <jasonr@gnu.org>
19296
19297 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
19298
19299 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
19300
19301 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
19302 (mac_term_init): Call here instead, passing rif.
19303
193042007-09-13 Glenn Morris <rgm@gnu.org>
19305
19306 * s/hpux.h: No longer define `static' as nothing.
19307
193082007-09-13 Johan Bockgård <bojohan@gnu.org>
19309
19310 * callint.c (Fcall_interactively): Remove unused var `fun'.
19311
193122007-09-12 Romain Francoise <romain@orebokech.com>
19313
19314 * window.c (prefer_window_split_horizontally, display_buffer):
19315 Revert 2007-09-08 change.
19316
193172007-09-12 Glenn Morris <rgm@gnu.org>
19318
19319 * alloca.c: Remove file.
19320 * Makefile.in (alloca): Do not undef.
19321 (allocaobj, alloca.o): Remove.
19322 (otherobj): Remove allocaobj.
19323 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19324 * regex.c (C_ALLOCA): Remove all references and code that was only
19325 used when this was defined.
19326 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19327 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19328 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19329
19330 * Makefile.in (SOURCES, unlock, relock): Delete.
19331
19332 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19333 (menu_grab_callback): All uses changed.
19334
19335 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19336 (x_reply_selection_request): All uses changed.
19337
193382007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19339
19340 * lread.c (load_warn_old_style_backquotes): Change message to look
19341 better when it appears in the middle of byte-compiler messages.
19342
193432007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19344
19345 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19346
19347 * xterm.c (x_create_terminal): Add comment.
19348
19349 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19350
193512007-09-10 Richard Stallman <rms@gnu.org>
19352
19353 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19354
193552007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19356
19357 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19358 (DEFUN): Document `intspec', use it instead of `prompt'.
19359
19360 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19361
19362 * data.c (Finteractive_form): If the interactive specification starts
19363 with a `(', use it as a Lisp form.
19364
19365 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19366 name and file modes.
19367
19368 * callint.c (Fcall_interactively): Comment fixes.
19369
193702007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19371
19372 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19373 and compiled functions.
19374
193752007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19376
19377 * window.c (prefer_window_split_horizontally): New variable.
19378 (display_buffer): Consider splitting window horizontally depending
19379 on prefer_window_split_horizontally.
19380
193812007-09-08 Eli Zaretskii <eliz@gnu.org>
19382
19383 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19384
193852007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19386
19387 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19388
19389 * frame.c (x_set_frame_parameters): Check number is positive before
19390 using XFASTINT.
19391
19392 * window.c (freeze_window_start): Don't presume selected_window holds
19393 a window object.
19394 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19395
193962007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19397
19398 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19399
194002007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19401
19402 * window.c (Vsplit_window_preferred_function): New var.
19403 (Fdisplay_buffer): Use it.
19404 (syms_of_window): Export, and initialize it.
19405
194062007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19407
19408 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19409
194102007-09-06 Glenn Morris <rgm@gnu.org>
19411
19412 * gtkutil.c (menu_grab_callback) <cnt>:
19413 * xselect.c (x_reply_selection_request) <cnt>: Move static
19414 variable to file scope.
19415
194162007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19417
19418 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19419 consistent values of selected_frame and selected_window.
19420
194212007-09-04 Jason Rumney <jasonr@gnu.org>
19422
19423 * w32console.c (initialize_w32_display): Zero unused hooks.
19424
194252007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19426
19427 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19428 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19429
194302007-09-04 Jason Rumney <jasonr@gnu.org>
19431
19432 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19433 in w32console.c. Set up input. Remove XXX comments that have been
19434 confirmed as correct.
19435
19436 * s/ms-w32.h (MULTI_KBOARD): Define.
19437
19438 * w32console.c (one_and_only_w32cons): Remove.
19439 (initialize_w32_display): Take terminal argument.
19440
19441 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19442 initialize_w32_display.
19443 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19444
19445 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19446
19447 * keyboard.c (discard_mouse_events): Discard it.
19448 (make_lispy_event): Translate it to a lisp event.
19449 (lispy_wheel_names): Add wheel-left and right events.
19450 (syms_of_keyboard): Enlarge wheel_syms.
19451
19452 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19453 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19454
19455 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19456
19457 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19458 from WM_MOUSEHWHEEL.
19459 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19460
19461 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19462 terminal.
19463
19464 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19465 keyboard for the terminal.
19466
194672007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19468
19469 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19470 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19471 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19472 and resume-tty-function to resume-tty-hook.
19473 (Fsuspend_tty, Fresume_tty): Use new names.
19474
194752007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19476
19477 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19478 if it starts with "n:".
19479
194802007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19481
19482 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19483
194842007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19485
19486 * frame.h:
19487 * frame.c (Qterm_environment_variable): Remove.
19488 (syms_of_frame): Don't init and staticpro it.
19489
19490 * callproc.c (getenv_internal): Remove special case for $TERM.
19491
19492 * callproc.c (Vinitial_environment): New variable.
19493 (set_initial_environment): Initialize it.
19494 (syms_of_callproc): Declare it.
19495 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19496 TERM under which a process runs is never related to the TERM in which
19497 Emacs is running.
19498
194992007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19500
19501 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19502 * s/darwin.h: ... do it here.
19503
195042007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19505
19506 * lisp.h (set_initial_environment): Rename from set_global_environment.
19507
19508 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19509 removed by mistake on the multi-tty branch.
19510
19511 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19512 (Fmodify_frame_parameters): Return a value.
19513
19514 * image.c (png_load): Comment-out var only used in commented-out code.
19515
19516 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19517 before passing it to mark_object.
19518
19519 * xfaces.c (internal_resolve_face_name): Return a value.
19520 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19521
19522 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19523 (x_icon): Comment-out var only used in commented-out code.
19524
195252007-08-29 Romain Francoise <romain@orebokech.com>
19526
19527 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19528 QUIT hasn't been provided.
19529
195302007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19531
19532 * callproc.c (child_setup, getenv_internal): Use the
19533 display-environment-variable and term-environment-variable frame params.
19534 (set_initial_environment): Initialise Vprocess_environment.
19535
19536 * config.in: Disable multi-keyboard support on a mac.
19537
19538 * frame.c (Qterm_environment_variable)
19539 (Qdisplay_environment_variable): New variables.
19540 (syms_of_frame): Intern and staticpro them.
19541 (Fmake_terminal_frame): Disable output method test.
19542
19543 * frame.h: Declare them here.
19544
19545 * macfns.c (x_set_mouse_color): Get rif from the frame.
19546 (x_set_tool_bar_lines): Don't use updating_frame.
19547 (mac_window): Add 2 new parameters for consistency with other systems.
19548 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19549 frame parameters following what is done in X11 and w32. Don't use
19550 FRAME_MAC_DISPLAY_INFO.
19551 (Fx_open_connection, start_hourglass): Remove window-system check.
19552 (x_create_tip_frame): Get the keyboard from the terminal.
19553
19554 * macmenu.c: Reorder includes.
19555 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19556
19557 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19558 terminal parameter.
19559 (x_clear_frame): Add a frame parameter.
19560 (note_mouse_movement): Get rif from the frame.
19561 (mac_term_init): Initialize the terminal.
19562 (mac_initialize): Make static and move terminal initialization ...
19563 (mac_create_terminal): ... to this new function.
19564
19565 * macterm.h (struct mac_display_info): Add terminal.
19566 (mac_initialize): Delete declaration.
19567
19568 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19569
19570 * sysdep.c: Comment out text after #endif.
19571
19572 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19573 is defined. Better initialize ttys in windows. Use terminal
19574 specific mouse_position_hook.
19575
19576 * termhooks.h (union display_info): Add mac_display_info.
19577
19578 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19579 Set the default minibuffer frame, window_system and the rest of the
19580 frame parameters following what is done in X11.
19581
19582 * w32term.c (w32_initialize): Make static.
19583
19584 * xselect.c (x_handle_selection_clear): Only access
19585 terminal->kboard when MULTI_KBOARD is defined.
19586
19587 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19588 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19589
195902007-08-29 Jason Rumney <jasonr@gnu.org>
19591
19592 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19593 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19594
19595 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19596 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19597
19598 * keyboard.c (restore_kboard_configuration): Only define when
19599 MULTI_KBOARD defined.
19600
19601 * makefile.w32-in: Update dependancies from Makefile.in.
19602 (OBJ1): Add terminal.$(O)
19603
19604 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19605 Don't define function body.
19606 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19607
19608 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19609
19610 * w32.c (request_sigio, unrequest_sigio): Remove.
19611
19612 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19613 (w32con_clear_frame, w32con_clear_end_of_line)
19614 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19615 (w32con_delete_glyphs, w32con_set_terminal_window)
19616 (scroll_line, w32_sys_ring_bell): Add frame arg.
19617 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19618 Add terminal arg.
19619 (PICK_FRAME): Remove.
19620 (w32con_write_glyphs): Use frame specific terminal coding.
19621 (one_and_only_w32cons): New global variable.
19622 (initialize_w32_display): Use it for storing hooks.
19623 (create_w32cons_output): New function.
19624
19625 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19626 arg a frame.
19627
19628 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19629 Set window_system.
19630 (x_set_tool_bar_lines): Don't use updating_frame.
19631 (Fx_create_frame): Set terminal and ref count.
19632 (Fx_open_connection): Remove window-system check.
19633
19634 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19635
19636 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19637 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19638 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19639 Add frame arg.
19640 (x_delete_terminal, w32_create_terminal): New functions.
19641 (w32_term_init): Create a terminal.
19642 (w32_initialize): Move terminal specific initialization to
19643 w32_create_terminal.
19644
19645 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19646 (w32_clear_rect, w32_clear_area): Use background from frame.
19647 (w32_display_info): Add terminal.
19648 (w32_sys_ring_bell, x_delete_display): Declare here.
19649
19650 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19651
19652 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19653
196542007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19655
19656 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19657 Fix get_named_tty calls for the controlling tty.
19658
196592007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19660
19661 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19662
196632007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19664
19665 * term.c (tty_insert_glyphs): Add missing first parameter.
19666
196672007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19668
19669 * buffer.c (Fbuffer_list, Fbury_buffer):
19670 Take frame->buried_buffer_list into account.
19671
19672 * cm.c (current_tty): New variable, for cmputc().
19673 (cmputc): Use it.
19674 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19675 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19676 (cmgoto): Add tty parameter. Pass it on to calccost().
19677 Use emacs_tputs() instead of tputs().
19678
19679 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19680 tputs().
19681 (current_tty): New variable, for cmputc().
19682 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19683
19684 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19685 (internal_condition_case, internal_condition_case_1)
19686 (internal_condition_case_2): Don't abort when x_catching_errors.
19687
19688 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19689 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19690 prevent crashes caused by bogus longjmps in read_char.
19691
19692 * keymap.h (Fset_keymap_parent): Add EXFUN.
19693
19694 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19695 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19696 Remove redundant definition.
19697
19698 * macfns.c (x_set_mouse_color, x_make_gc):
19699 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19700
19701 * w32term.c (x_free_frame_resources):
19702 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19703 (w32_initialize): Use the accessor macros for terminal characteristics.
19704
19705 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19706 Use the accessor macros for terminal characteristics.
19707 * msdos.c (internal_terminal_init): Use the accessor macros for
19708 terminal characteristics.
19709 (ScreenVisualBell, internal_terminal_init):
19710 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19711
19712 * termopts.h (no_redraw_on_reenter): Declare.
19713
19714 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19715 (mark_terminals, mark_ttys): Declare.
19716 (Fgarbage_collect): Call them.
19717 (mark_object): Mark buried_buffer_list.
19718
19719 * prefix-args.c: Include stdlib.h for exit.
19720
19721 * syssignal.h: Add comment.
19722
19723 * indent.c: Include stdio.h.
19724
19725 * window.h (Vinitial_window_system): Declare.
19726 (Vwindow_system): Delete declaration.
19727
19728 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19729
19730 * image.c (lookup_image): Don't initialize `c' until the xasserts
19731 have been run.
19732
19733 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19734 FRAME_FOREGROUND_PIXEL.
19735
19736 * print.c (print_preprocess): Don't lose print_depth levels while
19737 iterating.
19738
19739 * widget.c (update_from_various_frame_slots):
19740 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19741
19742 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19743 frames.
19744 (window_internal_height): Remove bogus make_number call.
19745 (init_window_once): Call make_terminal_frame with two zero parameters.
19746
19747 * fileio.c (Fread_file_name): Update comment.
19748
19749 * callint.c (Fcall_interactively):
19750 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19751 Make sure it is correctly unwound.
19752
19753 * xsmfns.c (x_session_close): New function.
19754
19755 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19756 Delete declarations.
19757
19758 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19759 (x_output): Remove background_pixel and foreground_pixel fields.
19760 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19761 (x_delete_device, x_session_close): Declare.
19762
19763 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19764 (read_filtered_event): Call `read_char' with a local
19765 `wrong_kboard_jmpbuf'.
19766
19767 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19768 Don't call single_kboard_state. Use FRAME_RIF.
19769
19770 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19771 systems.
19772
19773 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19774 (Fframe_with_environment, Fset_input_meta_mode)
19775 (Fset_quit_char): EXFUN.
19776 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19777 (init_sys_modes, reset_sys_modes): Update prototypes.
19778 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19779
19780 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19781 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19782 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19783 Delete declarations.
19784 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19785 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19786 New declarations.
19787
19788 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19789 already does that during init_display(). Call syms_of_keymap
19790 before syms_of_keyboard. Call `syms_of_terminal'.
19791 Call set_initial_environment, not set_process_environment.
19792 (shut_down_emacs): Call reset_all_sys_modes() instead of
19793 reset_sys_modes().
19794
19795 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19796 (internal_resolve_face_name, resolve_face_name_error): New functions.
19797 (resolve_face_name): Protect against loops and errors thrown by Fget.
19798 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19799 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19800
19801 * scroll.c: Replace CURTTY() with local variables throughout the
19802 file (where applicable).
19803 (calculate_scrolling, calculate_direct_scrolling)
19804 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19805 characteristics.
19806
19807 * keymap.c (Vfunction_key_map): Remove.
19808 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19809 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19810 (Vkey_translation_map): Remove.
19811 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19812 (Fdescribe_buffer_bindings)
19813 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19814 Update for terminal-local key-translation-map.
19815
19816 * Makefile.in (callproc.o): Update dependencies.
19817 (lisp, shortlisp): Add termdev.elc.
19818 (obj): Add terminal.o.
19819 (terminal.o): Add dependencies.
19820 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19821 (data.o, fns.o): Add termhooks.h dependency.
19822 (SOME_MACHINE_LISP): Add dnd.elc.
19823 (minibuf.o): Fix typo.
19824 Update dependencies.
19825
19826 * data.c (do_symval_forwarding, store_symval_forwarding)
19827 (find_symbol_value): Use the selected frame's keyboard, not
19828 current_kboard.
19829
19830 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19831 Vwindow_system.
19832
19833 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19834 Fmenu_bar_open.
19835 (syms_of_xmenu): Update defsubr.
19836 (mouse_position_for_popup, Fx_popup_menu)
19837 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19838 (set_frame_menubar, free_frame_menubar)
b97439ce 19839 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
19840 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19841 an X frame.
19842
19843 * xselect.c (x_own_selection): Abort if not an X frame.
19844 (some_frame_on_display): Check if it is an X frame.
19845 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19846
19847 * coding.c: Include frame.h and termhooks.h.
19848 (terminal_coding, keyboard_coding): Delete.
19849 (Fset_terminal_coding_system_internal)
19850 (Fset_keyboard_coding_system_internal)
19851 (Fkeyboard_coding_system)
19852 (Fterminal_coding_system): Add a terminal parameter.
19853 Get terminal_coding from the terminal.
19854 (init_coding_once): Don't call setup_coding_system here.
19855
19856 * dispextern.h (set_scroll_region, turn_off_insert)
19857 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19858 (tty_clear_end_of_line, tty_setup_colors)
19859 (delete_tty, updating_frame)
19860 (produce_special_glyphs, produce_glyphs, write_glyphs)
19861 (insert_glyphs): Remove.
19862 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19863 (tty_turn_off_highlight, get_tty_size): Add declaration.
19864 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19865
19866 * frame.h (enum output_method): Add output_initial.
19867 (struct x_output): Delete.
19868 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19869 Access foreground_pixel and background_pixel directly from the frame.
19870 (tty_display): Delete.
19871 (struct frame): Add buried_buffer_list, foreground_pixel,
19872 background_pixel and terminal. Delete kboard.
19873 (union output_data): Add tty.
19874 (FRAME_KBOARD): Get the kboard from the terminal.
19875 (FRAME_INITIAL_P): New macro.
19876 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19877 (Qterm_environment_variable, Qdisplay_environment_variable)
19878 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19879 New declarations.
19880
19881 * termchar.h (tty_output, tty_display_info): New structures.
19882 (tty_list): Declare.
19883 (FRAME_TTY, CURTTY): New macros.
19884 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19885 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19886 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19887 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19888
19889 * callproc.c: Include frame.h and termhooks.h, for terminal
19890 parameters.
19891 (add_env): New function.
19892 (child_setup): Use it.
19893 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19894 (getenv_internal): Fix get_terminal_param call.
19895 (Fgetenv_internal, egetenv): Update doc.
19896 (syms_of_callproc): Initialize Vprocess_environment to nil.
19897 Register and initialize them. Remove obsolete defvars. Update doc
19898 strings.
19899 (child_setup): Handle Vlocal_environment_variables.
19900 (getenv_internal): Add terminal parameter.
19901 Handle Vlocal_environment_variables.
19902 (Fgetenv_internal): Add terminal parameter.
19903 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19904 environment in a frame (not terminal) parameter. Update doc strings.
19905 (set_initial_environment): Rename from set_global_environment.
19906 Store Emacs environment in initial frame parameter.
19907
19908 * xdisp.c (redisplay_internal): Update references to
19909 `previous_terminal_frame'.
19910 (display_mode_line, Fformat_mode_line): Replace calls to
19911 `push_frame_kboard' with `push_kboard'.
19912 (get_glyph_string_clip_rects): Add extra parentheses and
19913 braces to prevent compiler warnings.
19914 (calc_pixel_width_or_height): Add xassert to check that the
19915 frame is alive. Don't call `lookup_image' on a termcap frame.
19916 (message2_nolog, message3_nolog, redisplay_internal)
19917 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19918 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19919 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19920 (Fx_display_pixel_width, Fx_display_pixel_height)
19921 (Fx_display_planes, Fx_display_color_cells)
19922 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19923 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
19924 (Fx_display_backing_store, Fx_display_visual_class)
19925 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
19926 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
19927
19928 * xfns.c (x_set_foreground_color x_set_background_color)
19929 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
19930 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19931 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
19932 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
19933 terminal that is being deleted.
19934 (Fx_create_frame): Use `store_frame_param' to set `window-system'
19935 frame parameter, and make sure it overrides any user-supplied setting.
19936 (Fx_close_connection, Fx_synchronize): Unify argument names with
19937 the rest of the DEFUNs.
19938
19939 * dispnew.c (Fsend_string_to_terminal): Update call to
19940 `get_tty_terminal'.
19941 (Fredraw_frame, Fsend_string_to_terminal)
19942 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
19943 FRAME_TERMCAP_P and FRAME_TTY.
19944 (window_change_signal): Don't believe width/height values that are
19945 impossibly small.
19946 (Vinitial_window_system): Rename from Vwindow_system.
19947 (termscript, Wcm, rif): Delete.
19948
19949 * termhooks.h (struct terminal): New struct containing the
19950 previously global text display hooks and new members NAME,
19951 DELETED and PARAM_ALIST.
19952 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
19953 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
19954 (FRAME_RIF): New macros.
19955 (get_terminal_param, get_device): New declarations.
19956 (termscript): Delete declaration.
19957
19958 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
19959 (XTflash, x_free_frame_resources, x_scroll_bar_create)
19960 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
19961 FRAME_FOREGROUND_PIXEL.
19962 (x_fully_uncatch_errors): Disable definition.
19963 (x_scroll_bar_expose): Fix reference to foreground pixel.
19964 (XTread_socket): Disable loop on all X displays.
19965 (x_delete_terminal): Don't set terminal->deleted and let
19966 delete_terminal delete the frames on the terminal.
19967 (x_delete_display): Doc update to reflect changes in
19968 delete_terminal.
19969 (x_display_info) <terminal>: Move member earlier in the struct.
19970 (deleting_tty): Remove old variable.
19971 (Fsuspend_tty): Call clear_tty_hooks.
19972 (Fresume_tty, init_tty): Call set_tty_hooks.
19973 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
19974 errors on X frames.
19975 (x_catch_errors_unwind): Abort if x_error_message is NULL.
19976 (handle_one_xevent): Initialize `f' to NULL.
19977 (x_delete_terminal, x_create_terminal): New functions.
19978 (XTset_terminal_modes, XTreset_terminal_modes)
19979 (XTread_socket, x_connection_closed, x_term_init)
19980 (x_term_init, x_delete_display): Add terminal parameter.
19981 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
19982 X connections.
19983
19984 * frame.c: Include termchar.h.
19985 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
19986 (Qwindow_system, Qenvironment, Qterm_environment_variable)
19987 (Qdisplay_environment_variable): New vars.
19988 (Fframep): Deal with output_initial.
19989 (Fframe-live-p): Doc fix.
19990 (Fwindow-system): New function.
19991 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
19992 (make_terminal_frame): Don't create frames on a terminal that is
19993 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19994 (store_frame_param): Check for found_for_frame before calling XFRAME.
19995 (Fmake_terminal_frame): Handle NULL tty names correctly.
19996 (syms_of_frame): Enhance doc string of `default-frame-alist'.
19997 (Fdelete_frame): Remove unused variable `count'. Don't allow other
19998 frames to refer to a deleted frame in their 'environment parameter.
19999 (Fframe_with_environment): New function.
20000 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
20001 (get_future_frame_param): New function.
20002 (Fmake_terminal_frame): Use it.
20003 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
20004
20005 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
20006 * sysdep.c (reset_sys_modes): Update for renames.
20007
20008 * keyboard.c (tty_read_avail_input): New function.
20009 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
20010 (syms_of_keyboard): Defsubr them.
20011 (Fset_input_meta_mode, Fset_quit_char): New functions.
20012 (Fset_input_mode): Split to above functions.
20013 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
20014 parameter. Use it in call to `read_char'.
20015 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
20016 Set wrong_kboard_jmpbuf correctly in recursive calls.
20017 Use current_kboard to access Vkeyboard_translate_table.
20018 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
20019 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
20020 Update longjmp invocations. Remember the original current_kboard,
20021 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
20022 changes it. Comment out unnecessary calls to
20023 `record_single_kboard_state' and `any_kboard_state'.
20024 Update recursive calls.
20025 (wrong_kboard_jmpbuf): Remove global variable.
20026 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
20027 Handle deleted interrupted_kboards correctly; that is a legal
20028 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
20029 and read_char calls. Abort if interrupted_kboard died in read_char.
20030 (any_kboard_state, single_kboard_state)
20031 (push_frame_kboard): Remove function.
20032 (pop_kboard): Switch out of single_kboard mode if the kboard has
20033 been deleted. Remove unused variable. Help debugging by not
20034 changing current_kboard unnecessarily. Set current_kboard to the
20035 kboard of the selected frame when the stored kboard object has
20036 been deleted before pop_kboard.
20037 (temporarily_switch_to_single_kboard): Change first parameter to a
20038 frame pointer. Throw an error when caller wants to change kboards
20039 while in single_kboard mode. Don't push_kboard if we weren't in
20040 single kboard state. Don't pop_kboard if we popped into any
20041 kboard state.
20042 (restore_kboard_configuration): Abort if pop_kboard changed the
20043 kboard in single_kboard mode. Call pop_kboard only after setting
20044 up single_kboard mode.
20045 (Frecursive_edit): Switch to single_kboard mode only in nested
20046 command loops.
20047 (cmd_error, command_loop, command_loop_1, timer_check):
20048 Comment out unnecessary call to `any_kboard_state' and
20049 `record_single_kboard_state'.
20050 (delete_kboard): Exit single_kboard mode if we have just deleted
20051 that kboard. Use FRAME_KBOARD.
20052 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
20053 `fatal_error_signal'.
20054 (record_single_kboard_state): Don't push_kboard if we weren't in
20055 single kboard state. Don't pop_kboard if we popped into any
20056 kboard state.
20057 (push_frame_kboard): Rename to push_kboard.
20058 (kbd_buffer_get_event): Use FRAME_TERMINAL.
20059 (read_avail_input): Read input from all terminals.
20060 (mark_kboards): Also mark Vkeyboard_translate_table.
20061 (kbd_buffer_store_event_hold): Simplify condition.
20062 (read_key_sequence): Reinitialize fkey and keytran at each replay.
20063 (Vkeyboard_translate_table): Move to struct kboard.
20064 (init_kboard): Initialize Vkeyboard_translate_table.
20065 (syms_of_keyboard): Use DEFVAR_KBOARD to define
20066 Vkeyboard_translate_table. Update doc strings. Update docs of
20067 local-function-key-map and function-key-map.
20068
20069 * terminal.c: New file.
20070
20071 * term.c: Include errno.h.
20072 (Vring_bell_function, device_list, initial_device)
20073 (next_device_id, ring_bell, update_begin, update_end)
20074 (set_terminal_window, cursor_to, raw_cursor_to)
20075 (clear_to_end, clear_frame, clear_end_of_line)
20076 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
20077 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
20078 (syms_of_term): Move their initialization to terminal.c.
20079 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
20080 (Ftty_display_color_cells)
20081 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
20082 (clear_tty_hooks, set_tty_hooks)
20083 (init_tty, maybe_fatal): New functions.
20084 (Ftty_type): Return nil if terminal is not on a tty instead of
20085 throwing an error. Doc update.
20086 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
20087 Doc update. Initialize new subrs and variables.
20088 (delete_tty): Use terminal->deleted.
20089 (tty_set_terminal_modes): Rename from set_terminal_modes.
20090 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
20091 (set_scroll_region): Rename to `tty_set_scroll_region'.
20092 (turn_on_insert): Rename to `tty_turn_on_insert'.
20093 (turn_off_insert): Rename to `tty_turn_off_insert'.
20094 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
20095 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
20096 (toggle_highligh): Rename to `tty_toggle_highlight'.
20097 (background_highlight): Rename to `tty_background_highlight'.
20098 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
20099 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
20100 (tty_set_scroll_region, tty_background_highlight)
20101 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
20102 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
20103 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
20104 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
20105 Add static modifier.
20106 (tty_reset_terminal_modes, tty_set_terminal_window)
20107 (tty_set_scroll_region, tty_background_highlight)
20108 (tty_highlight_if_desired, tty_cursor_to)
20109 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
20110 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
20111 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
20112 renames.
20113
201142007-08-28 Jan Djärv <jan.h.d@swipnet.se>
20115
20116 * keyboard.c: Qrtl is new.
20117 (parse_tool_bar_item): Handle :rtl keyword.
20118 (syms_of_keyboard): Intern :rtl keyword.
20119
20120 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
20121
20122 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
20123 so no Lisp code is executed.
20124 (file_for_image, find_rtl_image): New functions.
20125 (xg_get_image_for_pixmap): Use file_for_image.
20126 (update_frame_tool_bar): If direction is RTL, use RTL image if
20127 defined. Use Gtk stock images if defined.
20128
201292007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20130
20131 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
20132 for nonexistent or zero-width glyph in composition glyph.
20133
201342007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
20135
20136 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
20137
20138 * xdisp.c (Finvisible_p): New function.
20139 (syms_of_xdisp): defsubr it.
20140
201412007-08-24 Juanma Barranquero <lekktu@gmail.com>
20142
20143 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
20144 Doc fixes.
20145
201462007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20147
20148 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
20149
201502007-08-24 Martin Rudalics <rudalics@gmx.at>
20151
20152 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
20153 whether decoding has modified buffer contents.
20154
201552007-08-24 Jason Rumney <jasonr@gnu.org>
20156
20157 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
20158 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
20159 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
20160 (init_svg_functions) [HAVE_NTGUI]: New function.
20161 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
20162 (svg_load_image): Use them.
20163 (svg_load_image) [HAVE_NTGUI]: Implement background.
20164
201652007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20166
20167 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
20168 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
20169 (LIBX): Remove @RSVG_LIBS@.
20170 (LIBES): Add $(RSVG_LIBS).
20171
20172 * image.c (svg_load_image): Blend with specified background if exists.
20173 Use IMAGE_BACKGROUND. Add Mac OS Support.
20174
20175 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
20176 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
20177 Remove macros.
20178 [MAC_OSX] (socket_callback): Do nothing.
20179 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
20180 ReceiveNextEvent.
20181 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
20182 socket_callback.
20183 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
20184
201852007-08-22 Glenn Morris <rgm@gnu.org>
20186
20187 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
20188
201892007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
20190
20191 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
20192
20193 * image.c: Add support for SVG images. Some additional comments
20194 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
20195 (svg_image_p): New function to test for SVG image.
20196 (svg_load): New function to load SVG image.
20197 (svg_load_image): New function, helper for svg_load.
20198 (Qsvg): New Lisp_object.
20199 (svg_keyword_index): New enum.
20200 (svg_format): New static `image_keyword' struct.
20201 (svg_type): New static `image_type' struct.
20202 (librsvg/rsvg.h): Include it.
20203
202042007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
20205
20206 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
20207
202082007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
20209
20210 * lread.c (Qold_style_backquotes): New var.
20211 (syms_of_lread): Init and staticpro it.
20212 (load_warn_old_style_backquotes): New fun.
20213 (Fload): Use them to warn about old style backquotes.
20214 (end_of_file_error, Fload): Remove unused vars.
20215
20216 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
20217
20218 * lread.c (Vold_style_backquotes): New var.
20219 (syms_of_lread): Init and export it to Elisp.
20220 (read1): Set it when we find an old-style (back)quote.
20221
202222007-08-22 Jason Rumney <jasonr@gnu.org>
20223
20224 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
20225
202262007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
20227
20228 * puresize.h (BASE_PURESIZE): Increase to 1140000.
20229
202302007-08-19 Richard Stallman <rms@gnu.org>
20231
20232 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
20233
202342007-08-19 Andreas Schwab <schwab@suse.de>
20235
20236 * alloc.c (pure): Round PURESIZE up.
20237
202382007-08-17 Jan Djärv <jan.h.d@swipnet.se>
20239
20240 * xterm.c (handle_one_xevent): Remove check that mouse click is in
20241 active frame.
20242
202432007-08-16 Richard Stallman <rms@gnu.org>
20244
20245 * eval.c (Fcommandp): Add parens to clarify.
20246
20247 * minibuf.c (Fall_completions): Use enum for type of table.
20248
20249 * emacs.c (USAGE2): Improve text.
20250
202512007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
20252
20253 * term.c (tty_default_color_capabilities): Declare static
20254 variables in file scope, to avoid HPUX compiler problem.
20255
202562007-08-13 Jan Djärv <jan.h.d@swipnet.se>
20257
20258 * gtkutil.c (update_frame_tool_bar): Use -1 as index
20259 to gtk_toolbar_insert.
20260
202612007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
20262
20263 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
20264
20265 * insdel.c (reset_var_on_error): New fun.
20266 (signal_before_change, signal_after_change):
20267 Use it to reset (after|before)-change-functions to nil in case of error.
20268 Bind inhibit-modification-hooks to t.
20269 Don't bind (after|before)-change-functions to nil while they run.
20270
202712007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20272
20273 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
20274 filling pixmap with stippled background.
20275
202762007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20277
20278 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
20279 Don't use invisible frame as parent window for repositioning.
20280
202812007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
20282
20283 * print.c (new_backquote_output): Rename from old_backquote_output.
20284 (print): Inverse its logic (according to its name) so as to match the
20285 behavior of new_backquote_flag in lread.c.
20286
202872007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20288
20289 * gmalloc.c (posix_memalign): New function.
20290
20291 * macterm.c (frame_highlight, frame_unhighlight): Don't call
20292 ActivateControl/DeactivateControl here.
20293 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
20294 frame-notice-user-settings is non-nil.
20295 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
20296 for kEventParamFMFontStyle.
20297 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
20298 mac_pass_command_to_system and mac_pass_control_to_system here.
20299 (XTread_socket): Call ActivateControl/DeactivateControl here.
20300 (XTread_socket) [TARGET_API_MAC_CARBON]:
20301 Check mac_pass_command_to_system and mac_pass_control_to_system here.
20302 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
20303 for window repositioning.
20304
203052007-08-08 Glenn Morris <rgm@gnu.org>
20306
20307 * Replace `iff' in doc-strings and comments.
20308
203092007-08-07 Chong Yidong <cyd@stupidchicken.com>
20310
20311 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
20312
203132007-08-07 Martin Rudalics <rudalics@gmx.at>
20314
20315 * fileio.c (Finsert_file_contents): Run format-decode and
20316 after_insert_file_functions on entire buffer when REPLACE is
20317 non-nil and inhibit modification_hooks and point_motion_hooks.
20318 For consistency, run after_insert_file_functions iff something
20319 got inserted. Move signal_after_change and update_compositions
20320 after code running after_insert_file_functions. Make sure that
20321 undo_list doesn't record intermediate steps of the decoding process.
20322
203232007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20324
20325 * emacs.c (main)
20326 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20327 Call malloc_enable_thread on interactive startup.
20328
20329 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20330 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20331 [USE_PTHREAD]: Conditionalize with it.
20332 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20333 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20334 New functions.
20335
203362007-08-06 Chong Yidong <cyd@stupidchicken.com>
20337
20338 * xdisp.c (redisplay_window): When restoring original buffer
20339 position, make sure it is still valid.
20340
20341 * image.c (png_load): Ignore png-supplied background color.
20342
203432007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20344
20345 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20346 Use kCFAbsoluteTimeIntervalSince1970.
20347
20348 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20349 New variable.
20350 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20351 event loop should be quit.
20352 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20353 Quit dialog event loop if quit_dialog_event_loop is set.
20354
20355 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20356 (Selection): New typedef. Use instead of ScrapRef.
20357 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20358 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20359 (mac_clear_selection): Rename from clear_scrap.
20360 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20361 scrap_has_target_type. All uses changed.
20362 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20363 (mac_selection_has_target_p): New functions.
20364 (mac_put_selection_value): Rename from put_scrap_string.
20365 (mac_get_selection_value): Rename from get_scrap_string.
20366 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20367 (put_scrap_private_timestamp, scrap_has_target_type)
20368 (get_scrap_private_timestamp): Remove functions.
20369 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20370 (x_own_selection, x_get_local_selection):
20371 Use mac_valid_selection_value_p.
20372 (x_own_selection): Don't use put_scrap_private_timestamp.
20373 Record OWNERSHIP-INFO into Vselection_alist instead.
20374 (x_get_local_selection): Don't check type if request is local.
20375 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20376 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20377
203782007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20379
20380 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20381 add comment explaining why.
20382
203832007-08-03 Richard Stallman <rms@gnu.org>
20384
20385 * fileio.c (Fvisited_file_modtime): Use make_time.
20386
203872007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20388
20389 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20390 build.
20391
203922007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20393
20394 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20395
203962007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20397
20398 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20399
204002007-07-30 Richard Stallman <rms@gnu.org>
20401
20402 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20403
204042007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20405
20406 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20407
204082007-07-28 Nick Roberts <nickrob@snap.net.nz>
20409
20410 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20411 remote default-directory.
20412
20413 * buffer.c (mode-line-format): Update doc string.
20414
204152007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20416
20417 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20418 scroll bar gap.
20419 (x_scroll_bar_create): Set bar->fringe_extended_p.
20420 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20421 on frame edge. Check fringe background extension. Don't clear
20422 extended fringe background area.
20423
20424 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20425 (w32_fill_area): Enclose multiple statements with do ... while (0).
20426
20427 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20428 Extend fringe background to scroll bar gap.
20429 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20430 Set bar->fringe_extended_p.
20431 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20432 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20433 background extension. Don't clear extended fringe background area.
20434
20435 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20436 New member fringe_extended_p.
20437
204382007-07-25 Glenn Morris <rgm@gnu.org>
20439
20440 * Relicense all FSF files to GPLv3 or later.
20441
20442 * COPYING: Switch to GPLv3.
20443
204442007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20445
20446 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20447
20448 * data.c (Finteractive_form): Check for the presence of an
20449 `interactive-form' symbol property more thoroughly.
20450
20451 * data.c (Finteractive_form): Use an `interactive-form' property if
20452 present, analogous to the function-documentation property.
20453
204542007-07-24 Jason Rumney <jasonr@gnu.org>
20455
20456 * w32fns.c (x_real_positions): Get real position from OS instead of
20457 calculating it.
20458
204592007-07-23 Jason Rumney <jasonr@gnu.org>
20460
20461 * filelock.c (current_lock_owner): Allow for @ sign in username.
20462
204632007-07-22 Nick Roberts <nickrob@snap.net.nz>
20464
20465 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20466 remote default-directory.
20467
20468 * buffer.c (mode-line-format): Describe above case in doc string.
20469
204702007-07-20 Eli Zaretskii <eliz@gnu.org>
20471
20472 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20473 Define if not defined.
20474
204752007-07-18 Jason Rumney <jasonr@gnu.org>
20476
20477 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20478
204792007-07-18 Richard Stallman <rms@gnu.org>
20480
20481 * data.c (Fsetq_default): Doc fix.
20482
20483 * eval.c (Fsetq): Doc fix.
20484
204852007-07-18 Juanma Barranquero <lekktu@gmail.com>
20486
20487 * coding.c (Ffind_operation_coding_system):
20488 * eval.c (For, Fand): Doc fixes.
20489 Reported by Johan Bockgård.
20490
204912007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20492
20493 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20494
20495 * xterm.h: Declare x_ewmh_activate_frame.
20496
20497 * xterm.c (x_ewmh_activate_frame): New function.
20498 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20499
205002007-07-17 Martin Rudalics <rudalics@gmx.at>
20501
20502 * window.c (Fdisplay_buffer): If largest or LRU window is the
20503 only window, split it even if it is not eligible for splitting.
20504 This restores the original behavior broken by the 2007-07-15
20505 change.
20506
205072007-07-17 Glenn Morris <rgm@gnu.org>
20508
20509 * abbrev.c (abbrev_check_chars): New function.
20510 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20511 Call abbrev_check_chars to check abbrev characters are word
20512 constituents. Doc fix.
20513
205142007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20515
20516 * process.c (Fstart_process, Fmake_network_process)
20517 (read_process_output): Fix up last changes.
20518
205192007-07-16 Eli Zaretskii <eliz@gnu.org>
20520
20521 * makefile.w32-in (clean): Don't delete *~.
20522
205232007-07-16 Andreas Schwab <schwab@suse.de>
20524
20525 * window.c (Fdisplay_buffer): Use NILP.
20526 (Fset_window_scroll_bars): Likewise.
20527
205282007-07-15 Martin Rudalics <rudalics@gmx.at>
20529
20530 * window.c (window_min_size_2): New function.
20531 (window_min_size_1, size_window, Fdisplay_buffer)
20532 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20533 windows without mode- or header-lines when window-min-height is
20534 too small.
20535 (size_window): Reset nodelete_p after testing it, following an
20536 earlier note by Kim F. Storm.
20537 (display_buffer): Do not set split_height_threshold to twice the
20538 value of window_min_height to avoid changing the value of a
20539 customizable variable. Rather explicitly check whether the
20540 height of the window that shall be splitted is at least as large
20541 as split_height_threshold.
20542 (Fwindow_full_width_p): New defun.
20543 (syms_of_window): Defsubr it.
20544
20545 * window.h: Add EXFUN for Fwindow_full_width_p.
20546
205472007-07-14 Jason Rumney <jasonr@gnu.org>
20548
20549 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20550
205512007-07-14 Richard Stallman <rms@gnu.org>
20552
20553 * eval.c (maybe_call_debugger): New function.
20554 (find_handler_clause): Use maybe_call_debugger.
20555 Call it when the handler says `debug'.
20556 Eliminate DEBUGGER_VALUE_PTR.
20557 (Fsignal): Eliminate debugger_value.
20558 (Qdebug): New variable.
20559 (syms_of_eval): Initialize it.
20560
205612007-07-14 Juanma Barranquero <lekktu@gmail.com>
20562
20563 * eval.c (Fprogn):
20564 * keyboard.c (Ftrack_mouse):
20565 * print.c (Fwith_output_to_temp_buffer):
20566 * window.c (Fsave_window_excursion): Doc fix.
20567
205682007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20569
20570 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20571
205722007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20573
20574 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20575 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20576 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20577 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20578 Remove unused encoding_carryover.
20579 * process.c: Adjust all functions accordingly.
20580
205812007-07-12 Richard Stallman <rms@gnu.org>
20582
20583 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20584
205852007-07-11 Jason Rumney <jasonr@gnu.org>
20586
20587 * makefile.w32-in (LIBS): Include OLE32.
20588
20589 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20590 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20591
205922007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20593
20594 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20595 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20596 from a Lisp_Object into a bare pointer.
20597 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20598 Adjust the code correspondingly.
20599
20600 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20601
20602 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20603 (term_show_mouse_face): Remove unused var `j'.
20604 (handle_one_term_event): Remove unused vars `i' and `j'.
20605 Don't cast return value of ttyname since it's not necessary.
20606
206072007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20608
20609 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20610 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20611
20612 * fns.c (map_char_table): Use an array of int for `indices' rather than
20613 an array of Lisp_Objects (which are only ever integers anyway).
20614 (Fmap_char_table): Update caller.
20615 * lisp.h: Update prototype.
20616 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20617 * fontset.c (Ffontset_info):
20618 * casetab.c (set_case_table): Update callers.
20619
20620 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20621
20622 * keymap.c (struct accessible_keymaps_data)
20623 (struct where_is_internal_data): New structures.
20624 (accessible_keymaps_1, where_is_internal_1): Use them to change
20625 interface to adhere to the one used by map_keymap.
20626 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20627 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20628
20629 * keymap.h (map_keymap_function_t): More informative prototype.
20630
206312007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20632
20633 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20634 (looking_at_1): Don't change search_regs and last_thing_searched
20635 if `inhibit-changing-match-data' is non-nil.
20636 (string_match_1, search_buffer, set_search_regs): Likewise.
20637 (syms_of_search): Add Lisp level definition for
20638 `inhibit-changing-match-data' and set it to nil.
20639 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20640 start and end of the match, instead of using values in search_regs.
20641
206422007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20643
20644 * minibuf.c (Fcompleting_read): New value `confirm-only'
20645 for `require-match'.
20646
206472007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20648
20649 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20650 part of the 2007-06-27 change to syms_of_fileio.
20651
206522007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20653
20654 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20655 Check WINDOWP before using XWINDOW. Consolidate return statements.
20656
206572007-06-27 Richard Stallman <rms@gnu.org>
20658
20659 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20660
206612007-06-27 Juanma Barranquero <lekktu@gmail.com>
20662
20663 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20664
206652007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20666
20667 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20668 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20669 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20670 (_free_internal, memalign): Use them.
20671 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20672 Initialize to PTHREAD_MUTEX_INITIALIZER.
20673 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20674 (morecore_nolock): Rename from morecore. All uses changed.
20675 Use only nolock versions of internal allocation functions.
20676 (_malloc_internal_nolock, _realloc_internal_nolock)
20677 (_free_internal_nolock): New functions created from
20678 _malloc_internal, _realloc_internal, and _free_internal.
20679 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20680 Copy hook value to automatic variable before its use.
20681 (memalign): Copy hook value to automatic variable before its use.
20682
206832007-06-26 Kenichi Handa <handa@m17n.org>
20684
20685 * coding.c (Ffind_operation_coding_system): Docstring improved.
20686 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20687
206882007-06-25 David Kastrup <dak@gnu.org>
20689
20690 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20691 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20692 cater for additional parameter.
20693
20694 * keymap.h: Adjust number of parameters to `current-active-maps'.
20695
20696 * doc.c (Fsubstitute_command_keys): Adjust call of
20697 `current-active-maps'.
20698
206992007-06-25 David Kastrup <dak@gnu.org>
20700
20701 * callint.c (Fcall_interactively): Make the parsing of interactive
20702 specs somewhat more readable.
20703
207042007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20705
20706 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20707 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20708 if extended background has already been filled.
20709
207102007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20711
20712 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20713 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20714
20715 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20716 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20717 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20718 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20719 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20720 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20721 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20722 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20723 Run timers during dialog popup.
20724 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20725
207262007-06-21 Jason Rumney <jasonr@gnu.org>
20727
20728 * image.c (convert_mono_to_color_image): Swap fore and background.
20729
207302007-06-20 Jason Rumney <jasonr@gnu.org>
20731
20732 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20733 (w32_free_bdf_font): Unmap memory not handle.
20734
207352007-06-20 Sam Steingold <sds@gnu.org>
20736
20737 * gmalloc.c (__morecore): Fix the declaration to comply with the
20738 definition.
20739
207402007-06-20 Juanma Barranquero <lekktu@gmail.com>
20741
20742 * w32term.c (w32_delete_display): Remove leftover declaration.
20743 (w32_define_cursor, w32_initialize): Make static.
20744
20745 * w32.c (_wsa_errlist): Fix typo in error message.
20746 (init_environment): Ignore any environment variable from the
20747 registry having a null value.
20748
207492007-06-20 Glenn Morris <rgm@gnu.org>
20750
20751 * Makefile.in (LIBGIF): Default to -lgif.
20752
207532007-06-17 Jason Rumney <jasonr@gnu.org>
20754
20755 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20756 unicode strings.
20757
207582007-06-16 Juanma Barranquero <lekktu@gmail.com>
20759
20760 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20761 Fix typo in docstring.
20762
207632007-06-16 Eli Zaretskii <eliz@gnu.org>
20764
20765 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20766 and their keybindings.
20767
207682007-06-15 Chong Yidong <cyd@stupidchicken.com>
20769
20770 * composite.c (update_compositions): Fix last fix.
20771
207722007-06-14 Jason Rumney <jasonr@gnu.org>
20773
20774 * w32.c (get_process_times_fn): New function pointer.
20775 (globals_of_w32): Intialize it if present in kernel32.dll.
20776 (w32_get_internal_run_time): New function.
20777
20778 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20779
207802007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20781
20782 * composite.c (update_compositions): Check the validness of
20783 compositions.
20784
207852007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20786
20787 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20788 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20789
20790 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20791 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20792
20793 * macgui.h (USE_MAC_TOOLBAR): New define.
20794
20795 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20796 Return immediately unless popup is activated.
20797
20798 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20799 background to scroll bar gap.
20800 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20801 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20802 scroll bars on frame edge. Check fringe background extension.
20803 Don't clear extended fringe background area.
20804 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20805 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20806 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20807 [USE_MAC_TOOLBAR]: New macros.
20808 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20809 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20810 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20811 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20812 [USE_MAC_TOOLBAR]: New functions.
20813 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20814 manually if previous repositioning has failed.
20815 (mac_handle_keyboard_event): Use precomputed event kind.
20816 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20817 as tool bar item click. Handle mouse movement over tool bar items.
20818
20819 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20820 toolbar_win_gravity.
20821 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20822 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20823 Add externs.
20824
20825 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20826 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20827
208282007-06-14 Chong Yidong <cyd@stupidchicken.com>
20829
20830 * image.c (search_image_cache): Remove unused variable.
20831
208322007-06-13 Chong Yidong <cyd@stupidchicken.com>
20833
20834 * xfns.c, xmenu.c: Link to xaw3d if available.
20835
208362007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20837
20838 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20839 frame_foreground and frame_background.
20840
20841 * image.c (lookup_image): Save frame foreground and background colors.
20842 (search_image_cache): Check if saved and current frame colors match.
20843
208442007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20845
20846 * regex.c (regex_compile): Remove the `regnum' counter.
20847 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20848
208492007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20850
20851 * term.c: Include intervals.h to declare Fget_text_property.
20852
208532007-06-10 Jason Rumney <jasonr@gnu.org>
20854
20855 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20856
208572007-06-08 Juanma Barranquero <lekktu@gmail.com>
20858
20859 * callint.c (Fcall_interactively):
20860 * editfns.c (Fdelete_and_extract_region):
20861 * fileio.c (Fread_file_name):
20862 * fns.c (Fmapconcat):
20863 * keyboard.c (cmd_error_internal):
20864 * keymap.c (Fkey_description):
20865 * lread.c (openp):
20866 * minibuf.c (read_minibuf):
20867 * search.c (wordify):
20868 * sunfns.c (sel_read):
20869 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20870 * xfns.c (x_default_scroll_bar_color_parameter):
20871 * xmenu.c (menu_help_callback):
20872 * xselect.c (Fx_get_atom_name):
20873 * xterm.c (x_term_init): Use empty_unibyte_string.
20874
208752007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20876
20877 * alloc.c (init_strings): Initialize canonical empty strings.
20878 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20879 canonical empty string when the requested size is 0.
20880
20881 * emacs.c (empty_unibyte_string): Rename from empty_string.
20882 (empty_multibyte_string): New canonical empty string.
20883 (syms_of_emacs): Don't initialize empty_string.
20884
20885 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20886 string, if appropriate.
20887 (empty_unibyte_string, empty_multibyte_string): New externs.
20888 (empty_string): Remove extern.
20889
20890 * lread.c (syms_of_lread): Use empty_unibyte_string.
20891
208922007-06-07 Jason Rumney <jasonr@gnu.org>
20893
20894 * s/ms-w32.h: Don't define HAVE_TZNAME.
20895
20896 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20897
208982007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20899
20900 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20901
20902 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20903 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20904
20905 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20906 Don't call next handler.
20907 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20908 Remove argument. Install handler to application.
20909 (set_frame_menubar): Don't change deep_p.
20910 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20911 FRAME_OUTER_TO_INNER_DIFF_Y.
20912 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20913 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20914 [HAVE_DIALOGS]: New macros.
20915 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20916 Use them.
20917 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20918
20919 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20920 init_service_handler. All callers changed. Return OSStatus value.
20921
20922 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20923 All callers changed so as not to call SetPortWindowPort.
20924 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
20925 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
20926 mac_draw_string_common.
20927 (mac_draw_image_string_qd): Likewise.
20928 (mac_draw_string_common): Use them. Add INLINE.
20929 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
20930 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
20931 GetGlobalMouse.
20932 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
20933 and FRAME_OUTER_TO_INNER_DIFF_Y.
20934 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
20935 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
20936 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
20937 repositioning window to mac_handle_window_event.
20938 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
20939 saving window location to mac_handle_window_event
20940 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
20941 (install_menu_target_item_handler): Remove argument in extern.
20942 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
20943 Also accept command events.
20944 (do_keystroke): New function created from XTread_socket.
20945 (init_command_handler): Remove functions.
20946 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
20947 and save window location by kEventWindowShowing and kEventWindowHiding
20948 handlers here. Don't call next handler for window state change and
20949 focus events.
20950 (mac_handle_application_event, mac_handle_keyboard_event)
20951 [TARGET_API_MAC_CARBON]: New functions.
20952 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
20953 kEventWindowShowing and kEventWindowHiding events. Move installation
20954 of mouse, font, text input and menu target item handlers to
20955 install_application_handler.
20956 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
20957 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20958 New function.
20959 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20960 Register it.
20961 (XTread_socket) [TARGET_API_MAC_CARBON]:
20962 Consolidate SendEventToEventTarget calls.
20963 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
20964 Move application activation handler to mac_handle_application_event.
20965 Move keyboard handler to mac_handle_keyboard_event.
20966 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
20967 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
20968 init_command_handler. Call install_application_handler.
20969
20970 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
20971 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
20972
209732007-06-07 Glenn Morris <rgm@gnu.org>
20974
20975 * emacs.c (main): Use `emacs-copyright' in --version output.
20976
209772007-06-06 Chong Yidong <cyd@stupidchicken.com>
20978
20979 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
20980
209812007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20982
20983 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
20984
20985 * macgui.h: Replace WindowPtr with WindowRef.
20986
20987 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20988 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20989 Replace ControlHandle with ControlRef.
20990 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
20991
20992 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
20993 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
20994 Replace ControlHandle with ControlRef.
20995 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
20996 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
20997
20998 * macterm.h (struct scroll_bar): Rename member control_handle_low
20999 and control_handle_high to control_ref_low and control_ref_high.
21000 All uses changed.
21001 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
21002 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
21003 respectively. All uses changed.
21004 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
21005 (install_window_handler, remove_window_handler): Replace WindowPtr
21006 with WindowRef in externs.
21007
210082007-06-05 Juanma Barranquero <lekktu@gmail.com>
21009
21010 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
21011
210122007-06-03 Nick Roberts <nickrob@snap.net.nz>
21013
21014 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
21015
21016 * frame.c (Fmouse_position, Fmouse_pixel_position):
21017 Condition on HAVE_GPM too.
21018
21019 * term.c (term_mouse_highlight): Remove unused variables.
21020 (Fterm_open_connection): Set gpm_zerobased to 1.
21021 (term_mouse_movement, term_mouse_click, handle_one_term_event):
21022 Use zero based co-ordinates.
21023 (handle_one_term_event): Report a drag as mouse movement too.
21024
21025 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
21026
210272007-06-03 Chong Yidong <cyd@stupidchicken.com>
21028
21029 * image.c (search_image_cache): New function. Require background
21030 color match if background color is unspecified in the image spec.
21031 (uncache_image, lookup_image): Use it.
21032
210332007-06-01 Juanma Barranquero <lekktu@gmail.com>
21034
21035 * window.c (Fshrink_window): Reflow docstring.
21036
210372007-06-02 Chong Yidong <cyd@stupidchicken.com>
21038
21039 * Version 22.1 released.
21040
210412007-06-01 Richard Stallman <rms@gnu.org>
21042
21043 * xfns.c (x_encode_text): Add GCPRO.
21044
210452007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21046
21047 * xfns.c (x_set_name_internal): Save encoded name before
21048 x_encode_text in case string data is relocated.
21049
210502007-05-31 Richard Stallman <rms@gnu.org>
21051
21052 * buffer.c (syms_of_buffer): Doc fix.
21053
210542007-05-30 Nick Roberts <nickrob@snap.net.nz>
21055
21056 * sysdep.c (init_sys_modes): Add rather than replace with
21057 O_NONBLOCK.
21058
21059 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
21060 term_mouse_moveto.
21061
21062 * termhooks.h (term_mouse_moveto): New extern.
21063
21064 * term.c (mouse_face_window): Rename...
21065 (Qmouse_face_window): ...to this.
21066 (term_show_mouse_face, term_clear_mouse_face)
21067 (term_mouse_highlight): Use Qmouse_face_window.
21068 (term_mouse_moveto): New function.
21069 (term_mouse_position): Make it work.
21070 (syms_of_term): Uncomment assignment to mouse_position_hook.
21071 Staticpro Qmouse_face_window.
21072
210732007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21074
21075 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
21076 around current_column call.
21077
210782007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
21079
21080 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
21081 * xdisp.c (next_element_from_buffer):
21082 * window.c (delete_window):
21083 * term.c (term_mouse_highlight):
21084 * msdos.c (getdefdir):
21085 * macterm.c (mac_create_bitmap_from_bitmap_data)
21086 (init_font_name_table):
21087 * fns.c (Fsxhash):
21088 * data.c (Fmake_local_variable):
21089 * ccl.c (ccl_driver): Likewise.
21090
210912007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21092
21093 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
21094 Call mac_wakeup_from_rne on window size change.
21095
210962007-05-25 Chong Yidong <cyd@stupidchicken.com>
21097
21098 * image.c (uncache_image): Fix typo.
21099
211002007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
21101
21102 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
21103
211042007-05-22 Richard Stallman <rms@gnu.org>
21105
21106 * xterm.c (x_connection_closed): Remove NO_RETURN.
21107
211082007-05-22 Martin Rudalics <rudalics@gmx.at>
21109
21110 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
21111
211122007-05-21 Chong Yidong <cyd@stupidchicken.com>
21113
21114 * image.c (uncache_image): New function.
21115 (Fimage_refresh): New function.
21116
211172007-05-20 Jan Djärv <jan.h.d@swipnet.se>
21118
21119 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
21120
211212007-05-20 Nick Roberts <nickrob@snap.net.nz>
21122
21123 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
21124 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
21125
211262007-05-20 Nick Roberts <nickrob@snap.net.nz>
21127
21128 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
21129 conditional on [HAVE_GPM_H].
21130
211312007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
21132
21133 * syntax.c (skip_chars): Update syntax-table only after we checked that
21134 the new location is valid.
21135
211362007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21137
21138 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
21139 mac_get_window_bounds.
21140
211412007-05-20 Nick Roberts <nickrob@snap.net.nz>
21142
21143 * Makefile.in (LIBGPM): Allow it to be set from configure.
21144 If set then link Emacs with it.
21145
21146 * config.in: Regenerate.
21147
21148 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
21149 New externs.
21150
21151 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
21152 Include gpm.h.
21153 (handle_one_term_event, term_gpm): New externs.
21154
21155 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
21156 and allow it to be interrupted by SIGIO.
21157
21158 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
21159 (wait_reading_process_output): Wait on gpm_fd too.
21160 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
21161 (add_gpm_wait_descriptor_called_flag): New variable.
21162 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
21163
21164 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
21165 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
21166 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
21167 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
21168 (make_lispy_event): Add case GPM_CLICK_EVENT.
21169 (read_avail_input): Handle mouse input.
21170
21171 * term.c (write_glyphs_with_face): New function.
21172 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
21173 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
21174 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
21175 (mouse_face_face_id, term_gpm, pos_x, pos_y)
21176 (last_mouse_x, last_mouse_y): New variables.
21177 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
21178 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
21179 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
21180 (Fterm_close_connection): New functions.
21181 (term_init): Initialise mouse_face_window.
21182
211832007-05-19 Chong Yidong <cyd@stupidchicken.com>
21184
21185 * xdisp.c (redisplay_window): If first window line is a
21186 continuation line, recompute the new window start instead of
21187 recentering.
21188
211892007-05-18 Glenn Morris <rgm@gnu.org>
21190
21191 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
21192 Suggested by Alfred M. Szmidt <ams@gnu.org>.
21193
211942007-05-17 Glenn Morris <rgm@gnu.org>
21195
21196 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
21197
211982007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21199
21200 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
21201 dead key repeat and up events.
21202
212032007-05-14 Chong Yidong <cyd@stupidchicken.com>
21204
21205 * image.c (pbm_load): Check image size for monochrome pbm.
21206
212072007-05-13 Chong Yidong <cyd@stupidchicken.com>
21208
21209 * xterm.c (XTread_socket): Revert last change.
21210
212112007-05-12 Chong Yidong <cyd@stupidchicken.com>
21212
21213 * image.c (pbm_load): Correctly check image size for greyscale pbm.
21214
21215 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
21216
212172007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21218
21219 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
21220 mixup (YAILOM).
21221
212222007-05-07 Andreas Schwab <schwab@suse.de>
21223
21224 * keymap.c (Flookup_key): Fix typo in last change.
21225
212262007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21227
21228 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
21229 mapping for unibyte strings.
21230
212312007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21232
21233 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
21234 (Fx_popup_dialog) [MAC_OSX]: Likewise.
21235
212362007-04-29 Richard Stallman <rms@gnu.org>
21237
21238 * insdel.c (replace_range): For undo, record insertion first.
21239
212402007-04-29 Andreas Schwab <schwab@suse.de>
21241
21242 * lisp.h (VECSIZE): Use OFFSETOF.
21243
212442007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21245
21246 * xdisp.c (try_window_reusing_current_matrix): Fix number of
21247 disabled lines.
21248
212492007-04-28 Richard Stallman <rms@gnu.org>
21250
21251 * lread.c (read_escape): In a string, \s is always space.
21252
212532007-04-27 Jan Djärv <jan.h.d@swipnet.se>
21254
21255 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
21256
21257 * gtkutil.c (xg_update_menubar, create_menus): Create empty
21258 submenu for menu bar items.
21259
21260See ChangeLog.10 for earlier changes.
21261
21262;; Local Variables:
21263;; coding: utf-8
21264;; add-log-time-zone-rule: t
aac0c6e3
MR
21265;; End:
21266
e3eb1dae 21267 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
21268
21269 This file is part of GNU Emacs.
21270
21271 GNU Emacs is free software: you can redistribute it and/or modify
21272 it under the terms of the GNU General Public License as published by
21273 the Free Software Foundation, either version 3 of the License, or
21274 (at your option) any later version.
21275
21276 GNU Emacs is distributed in the hope that it will be useful,
21277 but WITHOUT ANY WARRANTY; without even the implied warranty of
21278 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21279 GNU General Public License for more details.
21280
21281 You should have received a copy of the GNU General Public License
21282 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21283
21284;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40