(imenu-default-create-index-function): Detect infinite
[bpt/emacs.git] / src / ChangeLog
CommitLineData
4d03ece0
CY
12010-01-11 Chong Yidong <cyd@stupidchicken.com>
2
3 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
4 initializing the Lisp variables that depend on them.
5
1df47e38
YM
62010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7
8 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
9 Clear areas that will not be updated after change of menu bar lines.
10 Clear the menu bar window's current matrix when the window gets empty.
11
2f1c6384
CY
122010-01-09 Chong Yidong <cyd@stupidchicken.com>
13
e398c61c
CY
14 * intervals.h, textprop.c (extend_property_ranges): Return value
15 and args changed. Discard properties that begin at or after the
16 new end (Bug#5306).
17
18 * editfns.c (Fformat): Caller changed.
19
e5a29a10
CY
20 * nsterm.m (ns_set_default_prefs): Delete function.
21 (syms_of_nsterm): Initialize ns_command_modifier,
22 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
23 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
24
2f1c6384
CY
25 * xdisp.c (pos_visible_p): Check for invisible text at the correct
26 position (Bug#4040).
27
d427a9fa
EZ
282010-01-09 Eli Zaretskii <eliz@gnu.org>
29
30 * editfns.c (Ffloat_time): Doc fix.
31
21b9df2f
JD
322010-01-09 Jan Djärv <jan.h.d@swipnet.se>
33
34 * xfns.c (Fx_create_frame): Don't create frame larger than display
35 by default bug#3643.
36
4b00d3b1
YM
372010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
38
39 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
40 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
41 windows above internal border.
42
43 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
44 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
45 windows above internal border.
46
47 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
48 tool bar windows specially.
49
50 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
51
52 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
53 specially.
54 (XTflash): Take account of menu bar height.
55
56 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
57 specially.
58
5075d853
JD
592010-01-08 Jan Djärv <jan.h.d@swipnet.se>
60
61 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
62 also be true before we can return early (bug #5339).
63
474217c8
CY
642010-01-06 David Reitter <david.reitter@gmail.com>
65
66 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
67 (Fns_display_usable_bounds): Rewrite, computing bounds properly
68 (Bug#3233).
69
c0e6d47d
JD
702010-01-06 Jan Djärv <jan.h.d@swipnet.se>
71
d0cf45b7
JD
72 * font.c (font_open_entity): Enable chache and call cached_font_ok
73 for the driver if defined.
74 (QCuser_spec): New symbol.
75 (font_spec_from_name): Save name as user-spec.
76 (font_load_for_lface): Keep user-spec instead of name.
77 (font_open_by_name): Save name as user-spec.
78 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 79 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
80
81 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
82 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
83 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
84
85 * font.h (struct font_driver): Add cached_font_ok.
86
c0e6d47d
JD
87 * xterm.c (x_clear_frame): Queue draw for scroll bars.
88
7c583cd8
JD
892010-01-05 Jan Djärv <jan.h.d@swipnet.se>
90
91 * xterm.c (x_new_font): Move code for setting rows/cols before
92 resizing ...
93 (x_set_window_size): ... to here. bug #2568.
94
95 * gtkutil.c (xg_clear_under_internal_border): New function.
96 (xg_frame_resized, xg_frame_set_char_size): Call
97 xg_clear_under_internal_border.
98 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 99
03f77f0a
CY
1002010-01-05 Chong Yidong <cyd@stupidchicken.com>
101
102 * keyboard.c (read_key_sequence): Catch keyboard switch after
103 making a new tty frame (Bug#5095).
104
2a1ef5be
KH
1052010-01-05 Kenichi Handa <handa@m17n.org>
106
107 * fontset.c (fontset_find_font): Fix getting the frame pointer.
108
e3eb1dae
SM
1092010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
110
111 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
112 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
113 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
114
777013f2
MA
1152010-01-03 Michael Albinus <michael.albinus@gmx.de>
116
117 * dbusbind.c (xd_add_watch): Improve debug message.
118 (xd_remove_watch): Improve debug message. If DATA is the session
119 bus, unset D-Bus session environment.
120 (Fdbus_init_bus): Pass the bus as argument to
121 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 122
8932b1c2
CY
1232010-01-01 Chong Yidong <cyd@stupidchicken.com>
124
87231e2c
CY
125 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
126
4801c5fa
CY
127 * lread.c (syms_of_lread): Make it clearer that these are the
128 names of loaded files (Bug#5068).
129
8932b1c2
CY
130 * eval.c (run_hook_with_args): Handle the case where the global
131 value has the obsolete single-function form (Bug#5026).
132
11e3c684
CY
1332009-12-27 Chong Yidong <cyd@stupidchicken.com>
134
135 * minibuf.c (Fall_completions): Minor optimization.
136
5b28ce35
EZ
1372009-12-26 Eli Zaretskii <eliz@gnu.org>
138
5ce6e4f4
JB
139 * .gdbinit (pgx): Fix display of composite glyphs.
140 Display cmp.from and cmp.to as well.
141 (pitx): Fix last change.
5b28ce35 142
bcffff46
KH
1432009-12-25 Kenichi Handa <handa@m17n.org>
144
145 * composite.h (composition_adjust_point): Update prototype.
146
147 * composite.c (composition_reseat_it): Don't make a composition
148 spanning over point.
149 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
150 composable characters.
151 (composition_adjust_point): New arg NEW_PT. Callers changed.
152
153 * keyboard.c (command_loop_1): Force redisplay if the last point
154 was within a composition.
155 (adjust_point_for_property): Don't adjust point for automatic
156 composition when called after buffer modification.
157
3f670e9a
EZ
1582009-12-19 Eli Zaretskii <eliz@gnu.org>
159
5ce6e4f4
JB
160 * .gdbinit (pitx): Don't use enum names, use their values.
161 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
162 (pgx): Don't use enum names, use their values.
163 (pitmethod): New helper command.
164 (pitx): Use it to display iteration method.
165 (pgrowit): New command.
166
ad903955
EZ
167 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
168
3f670e9a
EZ
169 Update dependencies in Makefile.in.
170
171 * Makefile.in (alloc.o): Depend on termhooks.h.
172 (atimer.o): Depend on blockinput.h.
173 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
174 and frame.h.
175 (callint.o): Depend on systime.h, coding.h, and composite.h.
176 (callproc.o): Depend on buffer.h.
177 (casefiddle.o): Don't depend on charset.h.
178 (casetab.o): Depend on character.h.
179 (ccl.o): Depend on composite.h.
180 (chartab.o): Depend on ccl.h.
181 (cm.o): Depend on dispextern.h.
182 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
183 (coding.o): Don't depend on $(INTERVALS_H).
184 (composite.o): Don't depend on dispextern.h explicitly (it's in
185 $(INTERVALS_H)). Depend on ccl.h.
186 (data.o): Depend on systime.h, coding.h, composite.h,
187 dispextern.h, font.h, and ccl.h.
188 (dired.o): Depend on composite.h.
189 (dispnew.o): Depend on coding.h. Don't depend explicitly on
190 composite.h (it's in $(INTERVALS_H)).
191 (doc.o): Depend on systime.h, coding.h, and composite.h.
192 (editfns.o): Don't depend explicitly on dispextern.h.
193 (emacs.o): Depend on frame.h and coding.h.
194 (eval.o): Depend on coding.h, composite.h, and xterm.h.
195 (fileio.o): Depend on frame.h and commands.h. Don't depend
196 explicitly on dispextern.h.
197 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
198 composite.h.
199 (fns.o): Don't depend on termhooks.h.
200 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
201 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
202 coding.h, $(INTERVALS_H), window.h, xterm.h.
203 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
204 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
205 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
206 fontset.h, ccl.h, and ftfont.h.
207 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
208 (gtkutil.o): Depend on dispextern.h and composite.h.
209 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
210 termhooks.h, and ccl.h.
211 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
212 (intervals.o): Depend on systime.h and coding.h.
213 (keyboard.o): Depend on composite.h and coding.h.
214 (keymap.o): Depend on coding.h and frame.h.
215 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
216 (macros.o): Depend on systime.h, coding.h, and composite.h.
217 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
218 and atimer.h.
219 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
220 dispextern.h explicitly.
221 (print.o): Depend on termhooks.h, coding.h, and ccl.h. Don't
222 depend explicitly on dispextern.h and composite.h.
223 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
224 (regex.o): Don't depend on charset.h.
225 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
226 (search.o): Don't depend explicitly on composite.h.
227 (sound.o): Depend on atimer.h and systime.h.
228 (syntax.o): Don't depend explicitly on composite.h.
229 (sysdep.o): Depend on coding.h and composite.h.
230 (term.o): Depend on xterm.h and buffer.h.
231 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
232 (textprop.o): Don't depend on dispextern.h explicitly.
233 (undo.o): Depend on dispextern.h.
234 (window.o): Depend on coding.h and termhooks.h. Don't depend on
235 dispextern.h and composite.h explicitly.
236 (xdisp.o): Depend on ccl.h.
237 (xfaces.o): Depend on coding.h and ccl.h.
238 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
239 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
240 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
241 ftfont.h.
242 (xgselect.o): New dependency.
243 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
244 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
245 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
246 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
247 (xsmfns.o): Depend on frame.h and dispextern.h.
248 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
249 sysselect.h.
250
7a6f7fea
AS
2512009-12-19 Andreas Schwab <schwab@linux-m68k.org>
252
253 * font.c (Fclear_font_cache): Pass correct cache argument to
254 font_clear_cache.
255
f4c21026
AS
2562009-12-16 Andreas Schwab <schwab@linux-m68k.org>
257
258 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
259 twice.
260
f7ab0997
CY
2612009-12-15 Chong Yidong <cyd@stupidchicken.com>
262
263 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
264 calling file-remote-p. Reported by Jim Meyering.
265
fa8e045a
MA
2662009-12-15 Michael Albinus <michael.albinus@gmx.de>
267
268 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 269 avoid compiler warnings. (Bug #5217)
fa8e045a 270
a63dba42
KH
2712009-12-14 Kenichi Handa <handa@m17n.org>
272
273 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
274 in 8-bit encoding.
275
5ce6e4f4 2762009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
277
278 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
279 tooltip windows.
280
223e5fc6
JD
2812009-12-13 Jan Djärv <jan.h.d@swipnet.se>
282
36acb2a7
JD
283 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
284 Xatom_net_window_type.
285
286 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
287 Xatom_net_window_type.
288
b8f00677
JD
289 * xterm.c (my_log_handler): New function.
290 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 291 so we can filter out buggy messages. (Bug #5120).
b8f00677 292
e5f0bc9a
JD
293 * xterm.c (xg_scroll_callback): Parameter list changed,
294 use parameter GtkScrollType to determine scroll/line/page.
295 Only allow dragging if a button < 4 is grabbed (bug #5177).
296 (xg_end_scroll_callback): New function.
297 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
298 xg_create_scroll_bar.
299
300 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
301 (scroll_end_callback): Remove.
302 (xg_create_scroll_bar): Add parameter end_callback, bind it to
303 button-release-event. Replace value-changed event with change-value,
304 bug #5177,
305 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
306 bug #5177.
307
308 * gtkutil.h (XG_LAST_SB_DATA): Remove.
309 (xg_create_scroll_bar): Add GCallback end_callback.
310
223e5fc6
JD
311 * xftfont.c (QClcdfilter): New variable.
312 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
313 (syms_of_xftfont): Initialize QClcdfilter.
314
3c055b77
JD
3152009-12-12 Jan Djärv <jan.h.d@swipnet.se>
316
317 * xsettings.c (struct xsettings): Add member seen.
318 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 319 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
320 (apply_xft_settings): Only update Xft settings with what member seen
321 indicates as new.
322
05fe33ff
EZ
3232009-12-12 Eli Zaretskii <eliz@gnu.org>
324
325 * dispextern.h (struct text_pos): Use EMACS_INT;
326 (struct glyph): Use EMACS_INT for charpos.
327 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
328 region_beg_charpos, region_end_charpos,
329 redisplay_end_trigger_charpos, and also for
330 iterator_stack_entry.end_charpos and
331 iterator_stack_entry.stop_charpos.
332
e8d7886a
JD
3332009-12-12 Jan Djärv <jan.h.d@swipnet.se>
334
5ce6e4f4 335 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
336 (xg_create_scroll_bar): Call scroll_end_callback on button release
337 event (bug #5177).
338 (xg_event_is_for_scrollbar): != replaced with ==.
339
d0db2ec8
KH
3402009-12-12 Kenichi Handa <handa@m17n.org>
341
342 * ftfont.c (struct ftfont_info): New member matrix.
343 (ftfont_open): Setup xftfont_info->matrix.
344 (MFLTFontFT): New member matrix.
345 (FLOOR, CEIL, ROUND): New macros.
346 (ftfont_get_metrics): Handle matrix transformation.
347 (ftfont_shape_by_flt): New arg matrix. Callers changed.
348
349 * xftfont.c (struct xftfont_info): New member matrix.
350 (xftfont_open): Setup xftfont_info->matrix.
351
3522009-12-10 Kenichi Handa <handa@m17n.org>
353
354 * xdisp.c (append_space_for_newline): Consider face-remapping.
355
2cc7b62f
AS
3562009-12-09 Andreas Schwab <schwab@linux-m68k.org>
357
b87dd913
AS
358 * xsettings.c: Include "keyboard.h".
359
eba5eb94
AS
360 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
361
2cc7b62f
AS
362 Fix implicit function declarations.
363 * cmds.c: Include "frame.h".
364 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
365 * frame.h: Move declaration of delete_frame outside of
366 HAVE_WINDOW_SYSTEM.
367
a4ef73c8
CY
3682009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
369
370 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
371
372 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
373 GTK builds.
374
944a300c
AS
3752009-12-07 Andreas Schwab <schwab@linux-m68k.org>
376
377 * unexelf.c (unexec): Don't search for .data twice.
378
022eef62
CY
3792009-12-05 Chong Yidong <cyd@stupidchicken.com>
380
426ac949
CY
381 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
382 if push failed.
383 (handle_line_prefix): Set avoid_cursor_p here. Check return value
384 of push_display_prop (Bug#5000).
385
022eef62
CY
386 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
387 value of font_list_entities (Bug#5085).
388
be95bee9
JB
3892009-12-04 Juanma Barranquero <lekktu@gmail.com>
390
391 Fix `string-to-number' to deal consistently with integers and floats.
392 * lread.c (isfloat_string): New argument ignore_trailing to accept all
393 trailing characters, not just whitespace.
394 (read1): Pass new arg 0 to keep old behavior.
395 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
396 trailing chars, as it is already done for integers. Doc fixes.
397 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
398
24c2d7ce
EZ
3992009-12-04 Eli Zaretskii <eliz@gnu.org>
400
401 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>: Delete
402 unused enumeration value.
403
7e694795
EZ
4042009-12-03 Eli Zaretskii <eliz@gnu.org>
405
406 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
407
84b31826
SM
4082009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
409
410 * process.c (Fmake_network_process): Fix up the tests for
411 "connectionless socket", so they DTRT for seqpacket sockets as well.
412
f00c449b
SM
4132009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
414
415 * process.c (Qseqpacket): New symbol.
416 (HAVE_SEQPACKET): New macro.
417 (Fmake_network_process): Accept new :type `seqpacket'.
418 (init_process): Add `seqpacket' feature when applicable.
419 (syms_of_process): Initialize Qseqpacket.
420
8096a0ff
YM
4212009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
422
423 * font.c (font_load_for_lface, font_open_by_name): Don't store name
424 if entity is Qnil.
425
3e0de07f
SM
4262009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
427
428 * print.c (print_preprocess): Preprocess the key_and_value table of
429 hashtables, even tho they're "hidden" (bug#5082).
430
abeafb2a
JD
4312009-11-29 Jan Djärv <jan.h.d@swipnet.se>
432
433 * frame.c (frame_make_pointer_invisible)
434 (frame_make_pointer_visible): Declare f before statements.
435
4bf47195
EZ
4362009-11-28 Eli Zaretskii <eliz@gnu.org>
437
438 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
439 omitted dependencies on lisp.h.
440
c525b3f2
JD
4412009-11-27 Jan Djärv <jan.h.d@swipnet.se>
442
ece2d4ed
JD
443 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
444 is NULL.
445
446 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
447
448 * frame.c (frame_make_pointer_invisible)
3e0de07f 449 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
450 frame.
451
c525b3f2
JD
452 * search.c (simple_search): Remove warning by making *p const.
453
2f00e299
DN
4542009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
455
456 * xdisp.c (power_letter): Remove duplicate const.
457
084b049b
JD
4582009-11-25 Jan Djärv <jan.h.d@swipnet.se>
459
a1fadc6f
JD
460 * term.c (delete_tty): Remove check for last terminal (bug#4970).
461
5ce6e4f4 462 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
463 defaults (bug #5025).
464
28259cac
SM
4652009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
466
467 * insdel.c (adjust_markers_for_delete): Move it in the
468 right direction! (bug#4803)
469
e8e14166
YM
4702009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
471
472 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
473
474 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
475
86677b58
GM
4762009-11-24 Glenn Morris <rgm@gnu.org>
477
478 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
479
581e51e8
JD
4802009-11-23 Jan Djärv <jan.h.d@swipnet.se>
481
cfc86c7a
JD
482 * Makefile.in: Must create deps for ecrt0.o in its rule.
483
581e51e8
JD
484 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
485 because that is what Gtk+ font dialog understands.
486
487 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
488 of Fcopy_sequence.
489 (font_open_by_name): Put name given into QCname for font-object returned.
490
491 * frame.c (x_set_font): Save original font name as frame parameter
492 font-parameter.
493
494 * xsettings.c (set_default_xft_settings): New function.
495 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
496 is found.
497
8b264ecb
AS
4982009-11-22 Andreas Schwab <schwab@linux-m68k.org>
499
500 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
501 searching backwards through multibyte buffer.
502
872870b2
JD
5032009-11-21 Jan Djärv <jan.h.d@swipnet.se>
504
505 * xterm.c: #include xgselect.h.
506 (x_initialize): Call xgselect_initialize.
507
508 * xsettings.c (something_changedCB): C++ comments => C comments.
509 (init_gconf): Do not deal with any GLib file descriptors, xg_select
510 does that now.
511
512 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
513 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
514 (scroll_bar_button_cb): Remove.
5ce6e4f4 515 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
516 event.
517 (xg_create_scroll_bar): Don't bind button-press-event and
518 button-release-event.
519
520 * process.c: Include xgselect.h if defined (USE_GTK) ||
521 defined (HAVE_GCONF).
522 (wait_reading_process_output): Call xg_select for the same condition.
523
524 * xgselect.c (xg_select): New function to better integrate with
525 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
526
527 * xgselect.h: New file, declare xg_select, xgselect_initialize.
528
529 * Makefile.in (XOBJ): Add xgselect.o.
530
62a6e103
AS
5312009-11-21 Andreas Schwab <schwab@linux-m68k.org>
532
533 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Remove
534 ignored second argument. All callers changed.
535 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
536 (RE_STRING_CHAR_AND_LENGTH): Likewise.
537 * xdisp.c (string_char_and_length): Likewise.
538
b0ca0f33
DN
5392009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
540
541 * xterm.c (x_new_font):
542 * print.c (print_object):
543 * cmds.c (Fself_insert_command): Move declarations before statements.
544
dd5a6279
CY
5452009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
546
547 * s/cygwin.h: Remove unneeded linker flags.
548
4a8e097d
JD
5492009-11-20 Jan Djärv <jan.h.d@swipnet.se>
550
0d1d0d26
JD
551 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
552
553 * xsettings.h: Declare xsettings_get_system_font.
554
555 * xsettings.c (xsettings_get_system_font): New function.
556 (init_gconf): No use initiating gconf unless we have Xft also.
557 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
558 HAVE_GCONF.
559
4a8e097d
JD
560 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
561 add a blank entry so it doesn't collapse into nothing.
562
8ab1650e
SM
5632009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
564
565 * lread.c (Funintern): Comment out last change.
566
82c602f0
RS
5672009-11-19 Richard Stallman <rms@gnu.org>
568
569 * lread.c (Funintern): Error if symbol is t or nil.
570
87e32266
SM
5712009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
572
573 * insdel.c (make_gap_larger): Don't make as many assumptions about the
574 representation of Lisp integers.
575 Reported by MJ Chan <mjchan.inbox@gmail.com>.
576
1b9ac145
AS
5772009-11-17 Andreas Schwab <schwab@linux-m68k.org>
578
579 * lisp.h: Remove declaration of Ffont_get_system_font.
580 * xfns.c: Move include of "xsettings.h".
581 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
582
dfb3c4c6
JD
5832009-11-17 Jan Djärv <jan.h.d@swipnet.se>
584
87e32266
SM
585 * xsettings.c (something_changedCB, Ffont_get_system_font):
586 Check use_system_font.
dfb3c4c6
JD
587 (syms_of_xsettings): DEFVAR font-use-system-font.
588
9370c1d8
AS
5892009-11-17 Andreas Schwab <schwab@linux-m68k.org>
590
25fe851a
AS
591 * xfns.c (x_default_font_parameter): Remove dead assignment.
592
9370c1d8
AS
593 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
594
637fa988
JD
5952009-11-17 Jan Djärv <jan.h.d@swipnet.se>
596
87e32266 597 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 598 not have FC_LCD_*. #define them if not there.
a6eb20d8 599
87e32266 600 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 601
637fa988
JD
602 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
603
604 * xterm.c (handle_one_xevent): Call xft_settings_event for
605 ClientMessage, PropertyNotify and DestroyNotify.
606 (x_term_init): If we have XFT, get DPI from Xft.dpi.
607 Call xsettings_initialize.
608
609 * xftfont.c (xftfont_fix_match): New function.
610 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
611 Call xftfont_fix_match after XftFontMatch.
612
613 * xfont.c (xfont_driver): Initialize all members.
614
87e32266
SM
615 * xfns.c (x_default_font_parameter):
616 Try font from Ffont_get_system_font.
637fa988
JD
617 Do not get font from x_default_parameter if we got one from
618 Ffont_get_system_font.
87e32266 619 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
620
621 * w32font.c (w32font_driver): Initialize all members.
622
623 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
624
625 * lisp.h: Declare syms_of_xsettings.
626
87e32266
SM
627 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
628 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
629
630 * ftfont.c (ftfont_filter_properties): New function.
631
632 * frame.c (x_set_font): Remove unused variable lval.
633
87e32266 634 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
635
636 * font.c (font_put_extra): Don't return if val is nil, it means
637 boolean option is off.
638 (font_parse_fcname): Collect all extra properties in extra_props
639 and call filter_properties for all drivers with extra_props and
640 font as parameter.
87e32266
SM
641 (font_open_entity): Do not use cache, it does not pick up new
642 fontconfig settings like hinting.
637fa988
JD
643 (font_load_for_lface): If spec had a name in it, store it in entity.
644
645 * emacs.c (main): Call syms_of_xsettings
646
647 * config.in: HAVE_GCONF is new.
648
649 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
650 xsettings.o is new.
651
5a942932
KH
6522009-11-17 Kenichi Handa <handa@m17n.org>
653
654 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
655 back to the default font in case that no suitable font is found.
656
b7c7a4d1
SM
6572009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
658
659 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
660 Suggested by Chad Brown <yandros@mit.edu>.
661 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
662
072f1e39
JD
6632009-11-16 Jan Djärv <jan.h.d@swipnet.se>
664
665 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
666
5d1e70a2
AS
6672009-11-14 Andreas Schwab <schwab@linux-m68k.org>
668
87e32266 669 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 670
a53cfbe5
JD
6712009-11-14 Jan Djärv <jan.h.d@swipnet.se>
672
473a99b7
JD
673 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
674 has a parent.
675
a53cfbe5 676 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 677 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
678
679 * config.in: Generated (AUTO_DEPEND).
680
f04bb9b2
MA
6812009-11-13 Michael Albinus <michael.albinus@gmx.de>
682
b7c7a4d1 683 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
684 Vdbus_registered_functions_table, because it contains also
685 properties. Fix docstring.
b7c7a4d1 686 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 687
8f11f7ec
SM
6882009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
689
690 * alloc.c (mark_object): Don't reprocess marked strings.
691 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
692 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
693
8a605fe8
KH
6942009-11-13 Kenichi Handa <handa@m17n.org>
695
8f11f7ec 696 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
697 semantics of Vword_combining_categories.
698 (Vword_combining_categories): Describe the slight change of the
699 semantics.
700
241c4680
EZ
7012009-11-13 Eli Zaretskii <eliz@gnu.org>
702
703 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
704
705 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
706
5d58e44c
SM
7072009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
708
709 * xdisp.c (syms_of_xdisp): Fix typo in last change.
710
5e13f9d3
JB
7112009-11-12 Juanma Barranquero <lekktu@gmail.com>
712
713 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
714
cf54c754
DR
7152009-11-11 David Reitter <david.reitter@gmail.com>
716
717 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
718 variables to fix 2009-11-09 change.
719
a4ada374
DN
7202009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
721
91433552
DN
722 * process.c (ifflag_def): Make flag_sym constant.
723 (Fnetwork_interface_info): Use a constant pointer.
724 (ifflag_table):
725 * xfns.c (cursor_bits):
726 * xdisp.c (power_letter):
727 * termcap.c (speeds, esctab):
728 * sysdep.c (baud_convert):
729 * keyboard.c (lispy_accent_codes, modifier_names):
730 * image.c (xbm_format, xpm_format, pbm_format, png_format)
731 (jpeg_format, tiff_format, gif_format, svg_format)
732 (interlace_start, interlace_increment, gs_format):
733 * gtkutil.c (separator_names):
734 * fringe.c (swap_nibble):
735 * fns.c (base64_value_to_char, base64_char_to_value):
736 * fileio.c (make_temp_name_tbl):
737 * coding.c (suffixes): Make constant.
738
f4265f6c
DN
739 * frame.c (make_initial_frame):
740 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
741 build_string.
742 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
743
04420943
DN
744 * s/freebsd.h:
745 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
746
0a5d24ae
DN
747 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
748 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
749
a4ada374
DN
750 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
751 * xterm.c (syms_of_xterm):
752 * xfaces.c (syms_of_xfaces):
753 * xdisp.c (syms_of_xdisp):
754 * lread.c (syms_of_lread):
755 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
756 build_string.
91433552 757
a4ada374
DN
758 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
759
af98fc7f
SM
7602009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
761
8ab1650e 762 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 763
e90292a9
JD
7642009-11-10 Jan Djärv <jan.h.d@swipnet.se>
765
766 * keyboard.h: Declare timer_check.
767
768 * keyboard.c (timer_check_2): New function that does what the old
769 timer_check did.
770 (timer_check): Call timer_check_2 until -1 or a non-zero time is
771 returned, i.e. don't return -1 with timers pending.
772
773 * process.c: Remove extern declaration of timer_check.
774
775 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
776 even if timer_check returned -1.
777
af98fc7f
SM
778 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
779 xg_dialog_data.
e90292a9
JD
780 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
781 the event loop.
782 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
783 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
784 Destroy the dialog after xg_dialog_run.
785
045b83c0
SM
7862009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
787
788 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
789
1fb99a3a
JD
7902009-11-10 Jan Djärv <jan.h.d@swipnet.se>
791
792 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
793
04e452cb
JB
7942009-11-09 Juanma Barranquero <lekktu@gmail.com>
795
796 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
797
ef7417fd
SM
7982009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
799
800 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
801 w32menu.c, and nsmenu.m.
802 Simplify the obsolete case where position is nil.
803 (cleanup_popup_menu): New function, moved from nsmenu.m.
804 (struct skp): Remove slot `notreal'.
805 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
806 adjust callers.
807 (single_menu_item): Adjust call to parse_menu_item.
808 (syms_of_menu): Defsubr x-popup-menu.
809 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
810 (keymap_panes): Don't export any more.
811 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
812 (xmenu_show): Declare.
813 * keyboard.c (parse_menu_item): Remove arg `notreal'.
814 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
815 * keyboard.h (parse_menu_item): Update declaration.
816 * xmenu.c (Fx_popup_menu): Remove.
817 (syms_of_xmenu): Don't defsubr x-popup-menu.
818 * w32menu.c (Fx_popup_menu): Remove.
819 (syms_of_w32menu): Don't defsubr x-popup-menu.
820 * nsmenu.m (cleanup_popup_menu): Remove.
821 (ns_menu_show): Rename from ns_popup_menu and remove all the code
822 moved to menu.c's Fx_popup_menu.
823 (Fx_popup_menu): Remove.
824 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
825 menu_items (it's done in menu.c already).
826
424d6179
SM
8272009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
828
829 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
830 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
831
c0df13a6 8322009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
833
834 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 835 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
836 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
837 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
838
2de9f71c
SM
8392009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
840
841 Let integers use up 2 tags to give them one extra bit and thus double
842 their range.
843 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
844 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
845 New macros.
846 (enum Lisp_Type): Use them. Give explicit values.
847 (Lisp_Type_Limit): Remove.
848 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
849 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
850 Pay attention to USE_2_TAGS_FOR_INTS.
851 (INTEGERP): Use LISP_INT_TAG_P.
852 * fns.c (internal_equal): Simplify the default case.
853 (sxhash): Use case_Lisp_Int.
854 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
855 any more.
856 (Ftype_of): Use case_Lisp_Int.
857 (store_symval_forwarding): Take into account the fact that Ints can
858 now have more than one tag.
859 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
860 buffer_slot_type_mismatch):
861 * xfaces.c (face_attr_equal_p):
862 * print.c (print_object):
863 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
864 Use case_Lisp_Int.
865
323637a2
EZ
8662009-11-06 Eli Zaretskii <eliz@gnu.org>
867
7ac65b38
EZ
868 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
869
323637a2
EZ
870 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
871 warning.
872
e511451f
JD
8732009-11-06 Jan Djärv <jan.h.d@swipnet.se>
874
875 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
876
877 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
878
879 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
880 ButtonPressRelease and MotionNotify (bug#4870).
881
5e2327cf
DN
8822009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
883
5adc433e
DN
884 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
885
d67b4f80
DN
886 * xterm.c (syms_of_xterm):
887 * xselect.c (syms_of_xselect):
888 * xmenu.c (syms_of_xmenu):
889 * xfns.c (syms_of_xfns):
890 * xfaces.c (syms_of_xfaces):
891 * xdisp.c (syms_of_xdisp):
892 * window.c (syms_of_window):
893 * w32fns.c (syms_of_w32fns):
894 * undo.c (syms_of_undo):
895 * textprop.c (syms_of_textprop):
896 * terminal.c (syms_of_terminal):
897 * syntax.c (syms_of_syntax):
898 * sound.c (syms_of_sound):
899 * search.c (syms_of_search):
900 * print.c (syms_of_print):
901 * minibuf.c (syms_of_minibuf):
902 * macros.c (syms_of_macros):
903 * keymap.c (syms_of_keymap, initial_define_key)
904 (initial_define_lispy_key):
905 * keyboard.c (syms_of_keyboard):
906 * insdel.c (syms_of_insdel):
907 * image.c (syms_of_image):
908 * fringe.c (syms_of_fringe):
909 * frame.c (syms_of_frame):
910 * fontset.c (syms_of_fontset):
911 * fns.c (syms_of_fns):
912 * fns.c (syms_of_fns):
913 * fileio.c (syms_of_fileio):
914 * fileio.c (syms_of_fileio):
915 * eval.c (syms_of_eval):
916 * doc.c (syms_of_doc):
917 * dispnew.c (syms_of_display):
918 * dired.c (syms_of_dired):
919 * dbusbind.c (syms_of_dbusbind):
920 * data.c (syms_of_data):
921 * composite.c (syms_of_composite):
922 * coding.c (syms_of_coding):
923 * cmds.c (syms_of_cmds):
924 * charset.c (define_charset_internal, syms_of_character):
925 * ccl.c (syms_of_ccl):
926 * category.c (syms_of_category, init_category_once):
927 * casetab.c (syms_of_casetab):
928 * casefiddle.c (syms_of_casefiddle):
929 * callint.c (syms_of_callint):
930 * bytecode.c (syms_of_bytecode):
931 * buffer.c (keys_of_buffer, syms_of_buffer):
932 * alloc.c (syms_of_alloc):
933 * process.c (syms_of_process, init_process):
934 * lread.c (syms_of_lread, init_obarray):
935 * font.c (build_style_table):
936 * emacs.c (syms_of_emacs, main): Replace calls to intern with
937 intern_c_string, calls to make_pure_string with
938 make_pure_c_string. Use pure_cons instead of Fcons.
939
5e2327cf
DN
940 * process.c (socket_options): Make it const.
941 (set_socket_option, init_process): Use a const pointer.
942
943 * lread.c (intern_c_string): New function.
944 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
945 (defvar_int): Uset it. Make the name const char*.
946
947 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
948 (defvar_int): Update prototypes.
949 (DEFUN, EXFUN): Support for prototypes is now required.
950 (intern_c_string): New prototype.
951 (struct Lisp_Subr): Make symbol_name constant.
952
953 * font.c (struct table_entry): Remove unused member. Make NAMES
954 constant.
955 (weight_table, slant_table, width_table): Make constant.
956
957 * emacs.c (struct standard_args): Make name and longname constant.
958
959 * character.h (DEFSYM): Use intern_c_string.
960
a56eaaef
DN
9612009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
962
963 * alloc.c (make_pure_c_string): New function.
964
965 * eval.c (Fautoload): Purecopy all arguments.
966
f6a07420
KH
9672009-11-05 Kenichi Handa <handa@m17n.org>
968
969 * fileio.c (Finsert_file_contents): Be sure set coding-system of
970 the buffer in case of replace.
971
5d28d4b1
DN
9722009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
973
974 * puresize.h (BASE_PURESIZE): Increase to 1620000.
975
b349d111
SM
9762009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
977
d528b1ce
SM
978 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
979 when applicable (bug#4851).
980
b349d111
SM
981 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
982 (P_): Support for prototypes is now required.
983
c38eb027
CY
9842009-10-31 Chong Yidong <cyd@stupidchicken.com>
985
986 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
987 (Bug#4827).
988
0405f8d9
EZ
9892009-10-30 Eli Zaretskii <eliz@gnu.org>
990
d528b1ce 991 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 992
ca0a881a
DN
9932009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
994
995 * puresize.h (BASE_PURESIZE): Increase to 1470000.
996
d528b1ce
SM
997 * lread.c (Fload): Purecopy the file name when building
998 Vpreloaded_file_list.
ca0a881a 999
47e0e0e4
JR
10002009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
1001
1002 * w32fns.c (syms_of_w32fns): Change default value of
1003 w32-scroll-lock-modifier to nil. (Bug#2827)
1004
057bce6f
JB
10052009-10-26 Juanma Barranquero <lekktu@gmail.com>
1006
782a943e 1007 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 1008
242bc74c
AS
10092009-10-26 Andreas Schwab <schwab@redhat.com>
1010
1011 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
1012
522d013a
JB
10132009-10-26 Juanma Barranquero <lekktu@gmail.com>
1014
1015 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
1016 For delta < 0, skip check that only makes sense when the mini-window
1017 is going to be enlarged. (Bug#4534)
1018
18060980
CY
10192009-10-25 Chong Yidong <cyd@stupidchicken.com>
1020
1021 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
1022 string in menu maps (Bug#4471).
1023
fec8f0fe
CY
10242009-10-24 Chong Yidong <cyd@stupidchicken.com>
1025
1026 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
1027 FRAME_NS_VIEW on terminal frames (Bug#4765).
1028
10d66ec0
AS
10292009-10-24 Andreas Schwab <schwab@linux-m68k.org>
1030
1cae01f7
AS
1031 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
1032 DBUS_TYPE_UINTnn separately to get proper sign extension.
1033
58a12889
AS
1034 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
1035 can properly handle unsigned types.
d528b1ce 1036 (make_uid, make_gid): Remove.
58a12889 1037
987c9327
AS
1038 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
1039 types again.
1040
522d013a 1041 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
1042 (system_process_attributes): Likewise.
1043
905a9ed3
DN
10442009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
1045
1046 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
1047
1048 * eval.c (Fautoload): Purecopy the filename. Simplify.
1049
1050 * category.c (Fdefine_category): Purecopy docstring.
1051
a599b3e8
AS
10522009-10-23 Andreas Schwab <schwab@linux-m68k.org>
1053
7b792fc9
AS
1054 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
1055
a599b3e8
AS
1056 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
1057
b35ac83e
CY
10582009-10-23 Chong Yidong <cyd@stupidchicken.com>
1059
1060 * window.c (Fwindow_edges, Fwindow_pixel_edges)
1061 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
1062 (Bug#4775).
1063
e8903e00
SM
10642009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
1065
1066 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
1067 (init_fileio_once):
1068 * lisp.h (init_fileio_once): Remove.
1069 * emacs.c (main): Don't call init_fileio_once.
1070
8f43cbf3
DN
10712009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
1072
1073 * puresize.h (BASE_PURESIZE): Increase to 1430000.
1074
26898943
AS
10752009-10-21 Andreas Schwab <schwab@linux-m68k.org>
1076
1077 * doprnt.c (doprnt): Fix overflow check.
1078
5c646d5a
JD
10792009-10-21 Jan Djärv <jan.h.d@swipnet.se>
1080
3132a7ea
JD
1081 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
1082
5c646d5a
JD
1083 * xterm.h (x_wait_for_event): Declare it.
1084
1085 * xterm.c (pending_event_wait): New variable.
1086 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
1087 see pending_event_wait.eventtype.
1088 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
1089 (x_new_font): Call change_frame_size with new rows/columns before we
1090 try to resize the frame.
5c646d5a 1091 (x_wait_for_event): New function.
d528b1ce
SM
1092 (x_set_window_size_1): Don't change gravity unless change_gravity
1093 is set.
5c646d5a
JD
1094 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
1095 don't change frame size, instead wait for the ConfigureNotify.
1096 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
1097 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
1098 (x_initialize): Initialize pending_event_wait.
1099
1100 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
1101 size.
1102
1103 * widget.c (EmacsFrameSetValues): Add comment.
1104 (EmacsFrameSetCharSize): Just call x_set_window_size.
1105
1106 * gtkutil.c (xg_frame_set_char_size): Flush events and call
1107 x_wait_for_event.
d528b1ce 1108 (flush_and_sync): Remove again.
5c646d5a
JD
1109 (xg_get_font_name): Suggest monospace if no previous font is known.
1110
e9c1637d
SM
11112009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
1112
1113 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 1114 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 1115
5a72cccb
YM
11162009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1117
1118 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
1119 processing pending events when event is filtered for input method.
ab04798f 1120 (Bug#3681)
5a72cccb 1121
2629aa37
JB
11222009-10-20 Juanma Barranquero <lekktu@gmail.com>
1123
1124 * fns.c: Add #endif accidentally removed in previous change.
1125
c3417a74
DN
11262009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1127
1128 * fns.c: Remove code for unsupported system: MAC_OS.
1129 * image.c: Likewise. Include setjmp.h.
1130
9685cef2
JD
11312009-10-19 Jan Djärv <jan.h.d@swipnet.se>
1132
1133 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
1134 pixel -1 (bug #4742).
1135
d7306fe6
DN
11362009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1137
019d2c4c
DN
1138 * process.c (create_pty): Remove conditionals for no longer
1139 supported systems: UNIPLUS and RTU.
1140
ee6bacd4
DN
1141 * xterm.c:
1142 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
1143
d7306fe6
DN
1144 * alloc.c: Do not define struct catchtag.
1145 * eval.c: Move struct catchtag definition ...
1146 * lisp.h: ... here.
1147
1148 * image.c: Move png.h #include earlier to avoid warnings.
1149
1150 * xterm.c:
1151 * xsmfns.c:
1152 * xselect.c:
1153 * xrdb.c:
1154 * xmenu.c:
1155 * xftfont.c:
1156 * xfont.c:
1157 * xfns.c:
1158 * xfaces.c:
1159 * xdisp.c:
1160 * window.c:
1161 * widget.c:
1162 * w32xfns.c:
1163 * w32uniscribe.c:
1164 * w32term.c:
1165 * w32select.c:
1166 * w32reg.c:
1167 * w32proc.c:
1168 * w32menu.c:
1169 * w32inevt.c:
1170 * w32heap.c:
1171 * w32font.c:
1172 * w32fns.c:
1173 * w32console.c:
1174 * w32.c:
1175 * w16select.c:
1176 * vm-limit.c:
1177 * unexsol.c:
1178 * unexec.c:
1179 * unexcw.c:
1180 * unexaix.c:
1181 * undo.c:
1182 * tparam.c:
1183 * textprop.c:
1184 * terminfo.c:
1185 * terminal.c:
1186 * termcap.c:
1187 * term.c:
1188 * syntax.c:
1189 * sound.c:
1190 * sheap.c:
1191 * search.c:
1192 * scroll.c:
1193 * region-cache.c:
1194 * regex.c:
1195 * ralloc.c:
1196 * process.c:
1197 * print.c:
b024548b
DN
1198 * nsterm.m:
1199 * nsselect.m:
1200 * nsmenu.m:
1201 * nsimage.m:
1202 * nsfont.m:
1203 * nsfns.m:
d7306fe6
DN
1204 * msdos.c:
1205 * minibuf.c:
1206 * menu.c:
1207 * marker.c:
1208 * macros.c:
1209 * keymap.c:
1210 * keyboard.c:
1211 * intervals.c:
1212 * insdel.c:
1213 * indent.c:
1214 * gtkutil.c:
1215 * ftxfont.c:
1216 * ftfont.c:
1217 * fringe.c:
1218 * frame.c:
1219 * fontset.c:
1220 * font.c:
1221 * fns.c:
1222 * floatfns.c:
1223 * filelock.c:
1224 * fileio.c:
1225 * emacs.c:
1226 * editfns.c:
1227 * dosfns.c:
1228 * doprnt.c:
1229 * doc.c:
1230 * dispnew.c:
1231 * dired.c:
1232 * dbusbind.c:
1233 * data.c:
1234 * composite.c:
1235 * coding.c:
1236 * cmds.c:
1237 * cm.c:
1238 * chartab.c:
1239 * charset.c:
1240 * character.c:
1241 * ccl.c:
1242 * category.c:
1243 * casetab.c:
1244 * casefiddle.c:
1245 * callproc.c:
1246 * callint.c:
1247 * bytecode.c:
1248 * buffer.c:
1249 * atimer.c: Include setjmp.h. (Bug#4643)
1250
fd5f21e6
SM
12512009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
1252
4c0354d7
SM
1253 Remove leftover table unibyte_to_multibyte_table.
1254 * character.c (unibyte_to_multibyte_table): Remove.
1255 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
1256 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
1257 * character.h (UNIBYTE_TO_CHAR): New macro.
1258 (MAKE_CHAR_MULTIBYTE): Use it.
1259 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
1260 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
1261 (message_dolog, set_message_1):
1262 * search.c (Freplace_match):
1263 * editfns.c (Fcompare_buffer_substrings):
1264 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
1265 (concat):
1266 * insdel.c (copy_text, count_size_as_multibyte):
1267 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
1268 * term.c (produce_glyphs):
1269 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
1270 * regex.c (RE_CHAR_TO_MULTIBYTE):
1271 * cmds.c (internal_self_insert):
1272 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
1273
fd5f21e6
SM
1274 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
1275
4418646e
DN
12762009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
1277
1278 * puresize.h (BASE_PURESIZE): Increase to 1310000.
1279
35f5c1d2
JB
12802009-10-16 Juanma Barranquero <lekktu@gmail.com>
1281
1282 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
1283
a0cd8f6b
AR
12842009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
1285
1286 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
1287 still needed under Tiger.
1288
1289 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
1290
1291 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
1292 __Apple__.
1293
1294 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
1295
01a8d3fa
KH
12962009-10-15 Kenichi Handa <handa@m17n.org>
1297
1298 * print.c (print_object): Escape a symbol like "2E10" too.
1299
bf6c75c9 13002009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
1301
1302 Cleanups and changes for 64-bit compile under Snow Leopard.
1303 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
1304
1305 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
1306
c5959062 1307 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
1308 (ns_findfonts, nsfont_list_family): Use long format in printf, and
1309 cast argument.
1310 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 1311 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
1312
1313 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
1314
1315 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
1316 where appropriate.
1317
1318 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
1319 where appropriate.
6e4780c5
JB
1320 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
1321 Use stringWithUTF8String.
bf6c75c9
AR
1322 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
1323
6e4780c5
JB
1324 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
1325 Add formal protocol mention to inheritance.
bf6c75c9
AR
1326 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
1327
6e4780c5
JB
1328 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
1329 Fix printf format.
bf6c75c9
AR
1330 (ns_query_color): Use CGFloat where appropriate.
1331 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
1332 (EmacsScroller-mouseDown:) Use long format in printf, and cast
1333 argument.
1334
3d87f118
AR
1335 * config.in (NS_HAVE_NSINTEGER): Drop.
1336
a95c8102
AR
1337 * dbusbind.c (dbus-method-return-internal)
1338 (dbus-method-error-internal): Use long format in printf, and cast
1339 argument.
1340
1341 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
1342 in printf, and cast argument.
1343
6873acca 1344 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
1345 cast argument.
1346
9ec6f100
GM
13472009-10-11 Glenn Morris <rgm@gnu.org>
1348
1349 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
1350
5be883cd
JD
13512009-10-08 Jan Djärv <jan.h.d@swipnet.se>
1352
1353 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
1354 menu bar with a small width so it doesn't enlarge the frame.
1355
d7a39b51
JB
13562009-10-08 Juanma Barranquero <lekktu@gmail.com>
1357
1358 * fontset.c (Fset_fontset_font): Fix typos in error messages.
1359
0c2b6f8e
GM
13602009-10-06 Glenn Morris <rgm@gnu.org>
1361
1362 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
1363 SOME_MACHINE_LISP (this enters indirectly via DOC).
1364
e02131a2
EZ
13652009-10-05 Eli Zaretskii <eliz@gnu.org>
1366
1367 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
1368
b4744254
EZ
13692009-10-04 Eli Zaretskii <eliz@gnu.org>
1370
1371 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
1372 Doc fix.
1373
dbf64827
JB
13742009-10-03 Martin Rudalics <rudalics@gmx.at>
1375
1376 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
1377
e9a0aef8
MA
13782009-10-02 Michael Albinus <michael.albinus@gmx.de>
1379
d528b1ce 1380 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
1381 used anymore outside fileio.c.
1382
1383 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
1384
64eb2b56
JB
13852009-10-01 Juanma Barranquero <lekktu@gmail.com>
1386
1387 * lisp.h (Qdelete_directory_internal):
1388 Declare, instead of Qdelete_directory.
1389
1390 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1391
9d28c33e
SM
13922009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1393
1394 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1395
9d8f3bd9
MA
13962009-10-01 Michael Albinus <michael.albinus@gmx.de>
1397
9d28c33e 1398 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
1399 Fdelete_directory. It is not a command anymore. It has no file
1400 name handler.
1401
9694740b
SM
14022009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1403
1404 * xdisp.c (get_next_display_element): Use an enum in last change.
1405
748e162f
KH
14062009-09-28 Kenichi Handa <handa@m17n.org>
1407
9694740b 1408 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
1409 unibyte_display_via_language_environment in handling
1410 Vnobreak_char_display.
1411
17efd58d
AR
14122009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1413
1414 * nsterm.h (ns_app_name): New extern variable.
1415
1416 * nsterm.m (ns_app_name): New variable.
1417 (ns_term_init): Set and use it.
1418 (ns_term_shutdown): Use it.
1419
1420 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1421 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1422
1423 * nsfns.m (ns_set_name_iconic, ns_set_name)
1424 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1425 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1426
9694740b
SM
1427 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1428 Remove double-casting in client_data comparison.
31c2d412 1429
3208cb35
YM
14302009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1431
1432 * keyboard.c (make_lispy_event): Remember last wheel direction.
1433 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1434
b7d552d6
GM
14352009-09-26 Glenn Morris <rgm@gnu.org>
1436
1437 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1438 internal.elc. Add term/pc-win.elc.
1439 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1440 term/x-win.elc.
1441 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1442 term/w32-win.elc.
1443 (NS_SUPPORT): New.
1444 (lisp): Add NS_SUPPORT.
1445 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1446
4ff670a8
DR
14472009-09-25 David Reitter <david.reitter@gmail.com>
1448
1449 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1450 on Mac OS X 10.6+ (bug#4513).
1451
feabfb6c
JB
14522009-09-24 Juanma Barranquero <lekktu@gmail.com>
1453
1454 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
1455 some parts of Emacs code (like font selection) don't grok them.
1456 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 1457
de59072a
AS
14582009-09-24 Andreas Schwab <schwab@redhat.com>
1459
1460 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1461
a489517b
JB
14622009-09-24 Juanma Barranquero <lekktu@gmail.com>
1463
1464 * dired.c (Fdirectory_files): Fix typo in docstring.
1465
0592970c
AR
14662009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1467
1468 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1469 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1470 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1471 under GNUstep.
1472 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1473
1474 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1475 glyph advancement.
1476
48e8a88b
AR
14772009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1478
1479 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 1480 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
1481
1482 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1483 deleted (bug #4492).
1484
e14f0a78
AR
1485 * nsfont.m (Vns_reg_to_script): New lisp variable.
1486 (syms_of_nsfont): Declare it.
1487 (ns_registry_to_script): New function.
1488 (ns_get_req_script): Call it.
1489 (ns_findfonts): Don't give up on non-unicode registry.
1490
1491 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1492
5b650faa
SM
14932009-09-20 Tom Tromey <tromey@redhat.com>
1494
1495 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1496 batch mode (bug#4228).
1497
a489517b 14982009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
1499
1500 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 1501 carefully. (Bug #4339)
0bae4e09 1502
fcfe06f3
CY
15032009-09-18 Chong Yidong <cyd@stupidchicken.com>
1504
d798ba87 1505 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 1506
31642728
AR
15072009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1508
1509 * emacs.c (inhibit_x_resources): Update doc string for NS.
1510 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 1511 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
1512
1513 * nsterm.h (ns_no_defaults): Remove.
1514
1515 * nsterm.m (ns_no_defaults): Remove.
1516 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1517 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
1518 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1519 don't update the NSWindow itself.
1520 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 1521 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
1522
1523 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1524 ns_use_qd_smoothing.
1525
1526 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1527 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 1528 (x-close-connection): Drop PSFlush() under OS X.
a489517b 1529 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 1530
8686ac71
JB
15312009-09-17 Juanma Barranquero <lekktu@gmail.com>
1532
1533 * emacs.c (inhibit_x_resources): New variable.
1534 (main) [HAVE_NS]: Don't process --quick command line option.
1535 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1536
1537 * lisp.h (inhibit_x_resources): Declare it extern.
1538
1539 * w32reg.c (x_get_string_resource):
1540 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1541
e227ba05
EZ
15422009-09-17 Eli Zaretskii <eliz@gnu.org>
1543
362654a6
JB
1544 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1545 Add lisp/term/internal.elc.
e227ba05 1546
742d40e8
SM
15472009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1548
1549 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1550 (bug#4461).
1551
005bd5a2
DN
15522009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1553
1554 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1555
1556 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1557 (OBJECTS_MACHINE): Remove, unused.
1558
f9af9719
SM
15592009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1560
1561 * frame.c (x_get_resource_string): Remove unused.
1562
0307c7d2
JD
15632009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1564
1565 * xterm.c (x_new_font): Call change_frame_size before calling
1566 x_set_window_size, in case frame size won't change.
1567
1568 * frame.c (x_set_font): Remove dead code.
1569
428b13d6
SM
15702009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1571
1572 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1573
5766c380
SM
15742009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1575
1576 * lread.c (Fload): Don't output a message after loading an obsolete
1577 package any more (done in Lisp now).
1578
2fd0161b
CY
15792009-09-12 Chong Yidong <cyd@stupidchicken.com>
1580
1581 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1582
bc5e75b6
SM
15832009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1584
1585 * keymap.c (Fwhere_is_internal): Use nconc2.
1586
c31c985e
AM
15872009-09-11 Alan Mackenzie <acm@muc.de>
1588
1589 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1590 batch mode.
1591
78012bd2
AS
15922009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1593
1594 * xdisp.c (display_mode_element): Detect cycles.
1595
9d889332
SM
15962009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1597
1598 * keymap.c (where_is_internal): Don't erroneously return nil right after
1599 filling the cache.
1600 (where_is_internal_1): Fix up typo.
1601
7ab5d780
GM
16022009-09-11 Glenn Morris <rgm@gnu.org>
1603
1604 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1605 share a common doc-string.
1606
5238a749
SM
16072009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1608
66d77eda
SM
1609 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1610 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1611
5238a749
SM
1612 * keymap.c (QCadvertised_binding): New constant.
1613 (syms_of_keymap): Initialize it.
1614 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1615 if applicable.
1616
19f48442
SM
16172009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1618
50d4ba39
SM
1619 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1620 (parse_menu_item): Streamline since bindings are recomputed all the
1621 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1622 more and don't support lmenu's menu-alias any more either.
1623
a88a5372
SM
1624 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1625 (where_is_internal): Strip it down to only traverse the keymaps.
1626 Move the cache handling from Fwhere_is_internal to here.
1627 (Fwhere_is_internal): Move the handling of remapping and the choice of
1628 the best binding from where_is_internal to here.
1629 Unify the cached/noncached paths, so remapping is also handled
1630 correctly when the cache is used, and so the cache can be used to
1631 speed up remap-handling when applicable.
1632 Give preference to non-remapped bindings.
1633 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1634 non-remapped bindings.
1635 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1636 command remapping.
1637
19f48442
SM
1638 * xdisp.c (display_mode_element): Move list length limit from 50 to
1639 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1640
599498c3 16412009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1642
1643 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1644
f9b7b5ac
SM
16452009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1646
a53af587
JB
1647 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1648 (Bug#4334)
1649
f9b7b5ac
SM
1650 * keymap.c (where_is_internal): Filter out shadowed remappings.
1651 Assume that where_is_internal returns unshadowed bindings to simplify
1652 the code and get rid of the gotos. Use ASIZE.
1653
04f4b72d
JD
16542009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1655
4da146f2
JD
1656 * xterm.c (x_focus_changed): If we get a focusout and pointer
1657 is invisible, make it visible.
1658
04f4b72d
JD
1659 * xterm.h: Remove condition for declaration of
1660 x_*_window_to_frame.
1661
7cef7ce3
SM
16622009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1663
1664 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1665 initial terminal as well.
1666
a54fa5b7
JD
16672009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1668
1669 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1670 x_menubar_window_to_frame.
a54fa5b7
JD
1671
1672 * xterm.c: Remove declarations also in xterm.h
1673 (XTmouse_position): Do not return valid positions
1674 for clicks in the menubar and the toolbar for Gtk+.
1675
1676 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1677 if the widget for the event has the same top level as a frame,
1678 return the frame.
1679 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1680 internal windows, bug #4122.
1681 (x_non_menubar_window_to_frame): Remove.
1682
5a021dd0
GM
16832009-09-02 Glenn Morris <rgm@gnu.org>
1684
1685 * buffer.c (default-major-mode): Move most of the doc from here...
1686 (major-mode): ... to here.
1687
548fe2f3
NR
16882009-08-30 Nick Roberts <nickrob@snap.net.nz>
1689
1690 * process.c (wait_reading_process_output): Keep the descriptor
1691 when pty is used by a non-child process, e.g., in I/O buffer of
1692 GDB this allows inferior to be restarted.
1693
e0840eef
EZ
16942009-08-29 Eli Zaretskii <eliz@gnu.org>
1695
1696 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1697 both branches into one.
1698
82e98df4
SM
16992009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1700
1701 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1702 (main): Use enable-multibyte-characters rather than
1703 default-enable-multibyte-characters. Output a warning message when
1704 running a unibyte session.
1705
890617cb
YM
17062009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1707
1708 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1709 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1710 (copy_data_segment): Also copy __program_vars section.
1711 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1712 (dump_it) [LC_DYLD_INFO]: Use it.
1713
1714 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1715
e7adeadc
EZ
17162009-08-28 Eli Zaretskii <eliz@gnu.org>
1717
1718 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1719 $(SRC)/buildobj.h.
1720 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1721 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1722 $(SRC)/buildobj.h.
1723 (clean): Add buildobj.h.
1724
3ed8bbdc
TZ
17252009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1726
1727 * print.c (print_object): Set escapeflag to 1 when printing
1728 hashtable keys and values.
1729
155a6764
SM
17302009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1731
1732 * lread.c (read_integer): Use doubles (and potentially return a float
1733 number) as we do in string-to-number.
1734 (read1): Use strtol to read integers, signal errors on strtol's
1735 overflow and use floats if strtol's output is too large for
1736 Elisp integers.
1737
877610de
EZ
17382009-08-27 Eli Zaretskii <eliz@gnu.org>
1739
1740 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1741 (make-buildobj-SH): Fix last change.
1742 (SRC): Move to before where it's first used.
1743
ef73e7be
KH
17442009-08-27 Kenichi Handa <handa@m17n.org>
1745
550c8289
KH
1746 * process.c (send_process): Use encode_coding_object instead of
1747 encode_coding_string to perform eol-conversion even if the string
1748 is unibyte.
1749
60afa08d
KH
1750 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1751 character.
1752
ef73e7be 1753 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1754 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1755
7b3a82d7
DN
17562009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1757
5654bf63
DN
1758 * callproc.c (Fcall_process): Remove always true #if.
1759
7b3a82d7
DN
1760 * lisp.h: Replace #if 0 code for checking with text pointing to
1761 the --enable-checking configure flag.
1762
1763 * emacs.c (main): Mention the --enable-profiling configure flag
1764 instead of using CFLAGS.
1765
878bde49
KR
17662009-08-26 Ken Raeburn <raeburn@raeburn.org>
1767
1768 * Makefile.in (buildobj.h): New target.
1769 (doc.o): Depend on it.
1770 (temacs${EXEEXT}): Don't generate buildobj.lst.
1771 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1772 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1773 ($(BLD)/doc.$(O)): Depend on it.
1774 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1775 provided by Eli Zaretskii.)
1776 ($(TEMACS)): Don't generate buildobj.lst.
1777 * doc.c: Include buildobj.h.
1778 (buildobj): New static variable.
1779 (Fsnarf_documentation): Use it, instead of opening and reading
1780 buildobj.lst.
1781
1574224c
MA
17822009-08-25 Michael Albinus <michael.albinus@gmx.de>
1783
1784 * dbusbind.c (Fdbus_call_method)
1785 (Fdbus_call_method_asynchronously): Use English numeric format for
1786 timeout values in doc string.
1787
d9da2f45
KH
17882009-08-25 Kenichi Handa <handa@m17n.org>
1789
ef73e7be
KH
1790 * alloc.c (mark_char_table): New function.
1791 (mark_object): Use mark_char_table for a char-table.
1792
d9da2f45
KH
1793 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1794 (CHAR_TABLE_REF): Use it.
1795
c8edcc01
KR
17962009-08-23 Ken Raeburn <raeburn@raeburn.org>
1797
1798 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1799 before invoking the newly build emacs to check for load-path
1800 shadowing.
1801
7763401b
GM
18022009-08-22 Glenn Morris <rgm@gnu.org>
1803
1804 * Makefile.in (bootstrap_exe): New variable.
1805 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1806 Use ${bootstrap_exe}.
1807
729eadda
EZ
18082009-08-22 Eli Zaretskii <eliz@gnu.org>
1809
1810 * coding.h (encode_coding_string): Don't encode unibyte strings.
1811 (Bug#4047)
1812
eb4c6ace
MA
18132009-08-22 Michael Albinus <michael.albinus@gmx.de>
1814
1815 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1816
1817 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1818 intended as hotfix only.
1819 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1820
36e34d1b
AR
18212009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1822
1823 * nsterm.m (ns_get_color): Update documentation properly for last
1824 change, and clean up loose ends in the code left by it. Fix
1825 longstanding bug with 16-bit hex parsing, and add support for
1826 yet another X11 format (rgb:r/g/b) for compatibility.
1827 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1828 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1829
f983eb8a
SM
18302009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1831
1832 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1833
3f56d3c6
MA
18342009-08-20 Michael Albinus <michael.albinus@gmx.de>
1835
1836 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1837 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1838 (xd_initialize, xd_pending_messages): Check, whether
1839 $DBUS_SESSION_BUS_ADDRESS is set.
1840
fb641d68
YM
18412009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1842
1843 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1844
1845 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1846
cf59a374
GM
18472009-08-20 Glenn Morris <rgm@gnu.org>
1848
1849 * emacs.c (system-type): Doc fix.
1850
1373f3be
SM
18512009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1852
1853 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1854 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1855
058ed861
MA
18562009-08-18 Michael Albinus <michael.albinus@gmx.de>
1857
1373f3be
SM
1858 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1859 New functions.
058ed861
MA
1860 (xd_initialize): Revert change from 2009-08-16.
1861
563a866e 18622009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1863
1864 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1865 font-group vector, return nil.
5fc05db0 1866
e42bdf01
CY
18672009-08-17 Chong Yidong <cyd@stupidchicken.com>
1868
1869 * process.c (status_notify): Don't perform redisplay.
1870 (Fdelete_process, list_processes_1, process_send_signal):
1871 Expliticly perform redisplay.
1872 (wait_reading_process_output): Always check process status, but
1873 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1874
4230ab74
KR
18752009-08-17 Ken Raeburn <raeburn@raeburn.org>
1876
1373f3be 1877 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1878 (XFLOAT_INIT): New macro for storing a float value.
1879 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1880 * fns.c (sxhash): Copy out the value of a float in order to
1881 examine its bytes.
1882 * dbusbind.c (xd_append_arg): Likewise.
1883
4230ab74
KR
1884 * emacs.c (main): Don't call syms_of_data twice.
1885
a0645cdd
MA
18862009-08-16 Michael Albinus <michael.albinus@gmx.de>
1887
1888 * dbusbind.c (xd_initialize): Add connection file descriptor to
1889 input_wait_mask, in order to let select() detect, whether a new
1890 message has been arrived.
ca4f31ea 1891 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1892
485db0ba
MA
18932009-08-15 Michael Albinus <michael.albinus@gmx.de>
1894
1373f3be
SM
1895 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1896 New functions.
485db0ba
MA
1897
1898 * lisp.h (xd_pending_messages): Declare.
1899
1900 * keyboard.c (readable_events): Call xd_pending_messages.
1901
b5b98ff4
CY
19022009-08-15 Chong Yidong <cyd@stupidchicken.com>
1903
1373f3be 1904 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 1905
f8354c6e
CY
1906 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1907
b5b98ff4
CY
1908 * buffer.c (set_buffer_internal_1)
1909 (swap_out_buffer_local_variables): Check for unbound local
1910 variables (Bug#4138).
1911
8b9fc636
EZ
19122009-08-14 Eli Zaretskii <eliz@gnu.org>
1913
1914 * process.c (create_pty): Fix last change.
1915
ce959360
CY
19162009-08-13 Chong Yidong <cyd@stupidchicken.com>
1917
1918 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1919 (xbm_load_image): Caller changed.
64b807c9 1920 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 1921
c7baf7e9
NR
19222009-08-13 Nick Roberts <nickrob@snap.net.nz>
1923
1924 * process.c (create_pty): New function.
1925 (Fstart_process): Use it to allow Emacs to just associate a pty
1926 with the buffer. See associated change in gdb-mi.el.
1927 (list_processes_1): Deal with no program name.
1928 (start_process_unwind): Use pid == -2 to mean no process.
1929
1ac9108a
SM
19302009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1931
1932 * cmds.c (nonundocount): New global variable.
1933 (keys_of_cmds): Initialize it.
1934 (Fself_insert_command): Use it to combine upto 20 sequential chars
1935 into a single undo entry, just like the Qself_insert_command code in
1936 keyboard.c does.
1937 Call frame_make_pointer_invisible, also like the Qself_insert_command
1938 code in keyboard.c does.
1939 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1940 than its own local replacement for it.
1941
e267324c
KR
19422009-08-10 Ken Raeburn <raeburn@raeburn.org>
1943
1ac9108a 1944 * fns.c (concat): Don't re-set string length to its current value.
77437343 1945
1ac9108a
SM
1946 * coding.h (decode_coding_string, encode_coding_string):
1947 Use SBYTES macro.
f0bed503 1948
1ac9108a 1949 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
1950 (doprnt): Merge with doprnt1, discarding lispstrings code.
1951 * lisp.h (doprnt_lisp): Don't declare.
1952
416e006d
JL
19532009-08-07 Juri Linkov <juri@jurta.org>
1954
1955 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1956
6f7d5780
DN
19572009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1958
1959 * print.c (syms_of_print): Undo previous change.
1960
f19a0f5b
TZ
19612009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1962
1963 * lread.c (read1, syms_of_lread): Read hashtables back from the
1964 readable format.
1965
1966 * print.c (print_preprocess, print_object): Print hashtables fully
1967 and readably.
1968 (syms_of_print): Provide 'hashtable-print-readable.
1969
b9173dc2
AR
19702009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1971
1972 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1973 no family set.
1974 (nsfont_open): Handle case when entity has no family.
1975
1586503c
AR
19762009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1977
1978 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1979 element, not a list, for match case.
1980
087048cd
KH
19812009-07-28 Kenichi Handa <handa@m17n.org>
1982
1983 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1984 rigidly.
1985
1986 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1987 font_parse_xlfd. Check font properties more rigidly.
1988
780c2506
DN
19892009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1990
31fd7c5c
JB
1991 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1992 bsd-common.h.
780c2506 1993
a8c0cc18
KH
19942009-07-27 Kenichi Handa <handa@m17n.org>
1995
1996 * xfaces.c (face_with_height): Call font_clear_prop.
1997
4fbe2306
CY
19982009-07-26 Chong Yidong <cyd@stupidchicken.com>
1999
111d9af3
CY
2000 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
2001
2002 * xterm.c (x_term_init): Use Qx.
2003
4fbe2306
CY
2004 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
2005
1ac9108a 2006 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
2007 (ns_get_color): Revert 2009-07-16 change.
2008
beb0b7f9
EZ
20092009-07-25 Eli Zaretskii <eliz@gnu.org>
2010
2011 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 2012 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 2013
2baf5e76
KR
20142009-07-25 Ken Raeburn <raeburn@raeburn.org>
2015
1ac9108a
SM
2016 * coding.h (decode_coding_string, encode_coding_string):
2017 Use SCHARS macro.
8890e5f5 2018
2baf5e76 2019 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 2020 (load_depth): Delete.
2baf5e76
KR
2021 (Qload_in_progress): New variable.
2022 (load_unwind): Don't reference load_depth or load_in_progress.
2023 (Fload): Likewise; specbind Qload_in_progress instead.
2024 (init_lread): Don't initialize load_depth.
2025 (syms_of_lread): Initialize and protect Qload_in_progress.
2026
1395c6f5
AR
20272009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2028
2029 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
2030
4e2f36cf
AR
20312009-07-23 Yavor Doganov <yavor@gnu.org>
2032
2033 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
2034
5dd9a6f7
AR
20352009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2036
2037 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
2038 Bugs 3792, 3720, 2402.
2039 (ns_lookup_indexed_color): Check for bad index.
2040 (ns_index_color): Init unused slot to 0.
2041 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
2042 Bug 3714, possibly 3082.
5dd9a6f7 2043
c902b920
JR
20442009-07-22 Jason Rumney <jasonr@gnu.org>
2045
1ac9108a
SM
2046 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
2047 Position IME window at cursor (Bug#2570).
c902b920
JR
2048 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
2049 (globals_of_w32fns): Dynamically load functions required above.
2050
2051 * w32term.c (w32_draw_window_cursor): Send message to reposition
2052 any IME window.
2053
090101cf
CY
20542009-07-21 Chong Yidong <cyd@stupidchicken.com>
2055
2056 * fileio.c: Revert 2009-07-16 changes.
2057 (Vauto_save_include_big_deletions): New variable.
2058 (Fdo_auto_save): Disable auto-save only if
2059 auto-save-include-big-deletions is nil.
2060
e6583e3d
CY
20612009-07-21 Chong Yidong <cyd@stupidchicken.com>
2062
2063 * xdisp.c (move_it_to): For continued lines ending in a tab, take
2064 the overflowed pixels into account (Bug#3879).
2065
ece435a5
KR
20662009-07-21 Ken Raeburn <raeburn@raeburn.org>
2067
2068 * lread.c (load_depth): New variable.
2069 (Fload, load_unwind, init_lread): Set it to the load recursion
2070 depth; set load_in_progress as a simple boolean based on the
2071 current load_depth. (Bug#3892)
2072
40b2d973
AR
20732009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2074
2075 * nsfont.m (ns_has_attribute): Remove.
2076 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
2077
10be7e0d
JL
20782009-07-18 Juri Linkov <juri@jurta.org>
2079
2080 * process.c (Fset_process_query_on_exit_flag): Mention killing
2081 a buffer in docstring.
2082
fa055055
KH
20832009-07-17 Kenichi Handa <handa@m17n.org>
2084
2085 * casetab.c (shuffle): Fix the logic of setting up the cycle.
2086
042f7b69
YM
20872009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2088
2089 * nsfns.m (Fns_set_alpha): Remove function.
2090 (syms_of_nsfns): Don't defsubr it.
2091
2092 * nsterm.m (ns_get_color): Remove incompatible color formats.
2093 (ns_color_to_lisp): Generate #rrggbb color format string.
2094
4be941e3
RS
20952009-07-16 Richard Stallman <rms@gnu.org>
2096
2097 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
2098 (Fset_buffer_auto_saved): Handle save_length = -2.
2099
4e6b227d
CY
21002009-07-16 Chong Yidong <cyd@stupidchicken.com>
2101
2102 * xterm.c (Qx_gtk_map_stock): New var.
2103
2104 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
2105 of calling intern each time.
2106
a1856973
YM
21072009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2108
2109 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
2110 does tiling.
2111
2112 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
2113
497e54d8
KH
21142009-07-14 Kenichi Handa <handa@m17n.org>
2115
72d36834
KH
2116 * font.c (font_vconcat_entity_vectors): New function.
2117 (struct font_sort_data): New member font_driver_preference.
2118 (font_compare): Check font_driver_preference.
2119 (font_sort_entities): The format of the first argument changed.
2120 (font_delete_unmatched): Likewise.
2121 (font_list_entities): The return type changed.
2122 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
2123 (font_find_for_lface): Adjuste for the above changes.
2124 Don't suppress the checking of C even if the repertory supports it.
2125 (Flist_fonts): Adjust for the above changes.
72d36834 2126
1ac9108a
SM
2127 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
2128 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
2129 Reject a font who has adstyle property that is different from a
2130 langname derived from registry property.
1ac9108a 2131 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 2132
b6046155
EZ
21332009-07-13 Eli Zaretskii <eliz@gnu.org>
2134
2135 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
2136 local copy of dirfilename.
2137
fb6b6049
KH
21382009-07-13 Kenichi Handa <handa@m17n.org>
2139
e2402a5e
KH
2140 * chartab.c (sub_char_table_ref_and_range): Fix the range check
2141 against max_char.
2142
fb6b6049
KH
2143 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
2144 calling XSYMBOL (sym).
2145
65156807
EZ
21462009-07-11 Eli Zaretskii <eliz@gnu.org>
2147
1ac9108a
SM
2148 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
2149 New function.
2150 (directory_files_internal) [WINDOWSNT]:
2151 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
2152 the filesystem of the directory is fast or slow.
2153
2154 * w32.c (logon_network_drive): Don't assume PATH is an absolute
2155 file name.
2156 (is_slow_fs): New function.
2157 (stat): Use it to determine whether to issue more system calls to
2158 get accurate file attributes, when w32-get-true-file-attributes is
2159 `local'.
2160
e0ab5fcf
JD
21612009-07-10 Jan Djärv <jan.h.d@swipnet.se>
2162
2163 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 2164 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
2165 parameter font-parameter as default to the font dialog.
2166
784ceded
KH
21672009-07-10 Kenichi Handa <handa@m17n.org>
2168
2169 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
2170
fb8edc0b
EZ
21712009-07-09 Eli Zaretskii <eliz@gnu.org>
2172
1ac9108a 2173 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 2174
fb8edc0b
EZ
2175 * w32.c (stat): Treat UNC file names as residing on remote
2176 drives. (Bug#3542)
2177
635c75b1
KH
21782009-07-09 Kenichi Handa <handa@m17n.org>
2179
2180 * fontset.c (fontset_find_font): Fix previous change.
2181
c1d5ce94
MA
21822009-07-08 Michael Albinus <michael.albinus@gmx.de>
2183
2184 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
2185 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
2186 error flag.
2187
edb61b39
KH
21882009-07-08 Kenichi Handa <handa@m17n.org>
2189
374bf7e4
KH
2190 * fontset.c (fontset_find_font): Fix the logic of handling
2191 charset_matched.
2192 (font_for_char): Delete unused var.
2193 (generate_ascii_font_name): Delete it.
2194
edb61b39
KH
2195 * coding.h (JIS_TO_SJIS2): Fix the code range check.
2196
2197 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
2198 (encode_coding_sjis): Fix the code range check.
2199
0f3f018c
CY
22002009-07-07 Chong Yidong <cyd@stupidchicken.com>
2201
2202 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
2203 (Fexpand_file_name): Copy string data properly (Bug#3772).
2204
fcaf6f3a
JD
22052009-07-07 Jan Djärv <jan.h.d@swipnet.se>
2206
2207 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
2208 first MapNotify.
2209
6809ca75
KH
22102009-07-07 Kenichi Handa <handa@m17n.org>
2211
2212 * character.h (unibyte_has_multibyte_table): Delete extern.
2213 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
2214
2215 * charset.c (Fset_charset_priority): Update charset_unibyte.
2216 (syms_of_charset): Initialize charset_unibyte.
2217
2218 * character.c (unibyte_has_multibyte_table): Delete it.
2219 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
2220 charset_unibyte.
2221 (multibyte_char_to_unibyte_safe): Likewise.
2222 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
2223
1ac9108a 2224 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
2225 (x_produce_glyphs): Likewise.
2226
2227 * .gdbinit (xcharset): Fix the treating $arg0.
2228
ad9e2d54
EZ
22292009-07-04 Eli Zaretskii <eliz@gnu.org>
2230
2231 Emulation of `getloadavg' on MS-Windows.
2232 * w32.c: Include float.h
2233 (g_b_init_get_native_system_info, g_b_init_get_system_times)
2234 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
2235 (get_native_system_info, get_system_times): New functions.
2236 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
2237 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
2238 (globals_of_w32): Initialize g_b_init_get_native_system_info,
2239 g_b_init_get_system_times, and num_of_processors.
2240
0a3472c7
JR
22412009-07-03 Jason Rumney <jasonr@gnu.org>
2242
2243 * w32term.c (w32_initialize): Use standard types.
2244
80904120
EZ
22452009-07-03 Eli Zaretskii <eliz@gnu.org>
2246
2247 * dired.c (Ffile_attributes): Decode user and group names by the
2248 locale's encoding. (Bug#3443)
2249
6978862d
DN
22502009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
2251
f8d23104
DN
2252 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
2253 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
2254
2255 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
2256
2257 * term.c (init_tty): Remove spurious #ifdef.
2258
6978862d
DN
2259 * m/mips.h: Mention this file is also used for netbsd.
2260 * m/pmax.h: Remove file.
2261
e044e4fc
JD
22622009-07-03 Jan Djärv <jan.h.d@swipnet.se>
2263
2264 * xterm.h (struct x_display_info): Add invisible_cursor.
2265 (struct x_output): Add current_cursor.
2266
2267 * xterm.c (XTtoggle_invisible_pointer): New function.
2268 (x_define_frame_cursor): Don't define cursor if invisible or the
2269 same as before. Set current_cursor.
2270 (x_create_terminal): Set toggle_invisible_pointer_hook.
2271
2272 * xfns.c (make_invisible_cursor): New function.
2273 (x_set_mouse_color): Call make_invisible_cursor.
2274 Set current_cursor.
2275 (x_window): Set current_cursor.
2276
2277 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
2278
2279 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
2280 inserting a character.
2281 (read_avail_input): Call frame_make_pointer_visible.
2282
2283 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
2284 (frame_make_pointer_invisible, frame_make_pointer_visible):
2285 New functions.
e044e4fc
JD
2286 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
2287
2288 * frame.h: Declare frame_make_pointer_invisible and
2289 frame_make_pointer_visible.
2290 (struct frame): Add pointer_invisible.
2291
574c8efa
JD
22922009-07-02 Jan Djärv <jan.h.d@swipnet.se>
2293
7b507248
JD
2294 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
2295 frame isn't visible.
2296 (xg_frame_resized): If width/height is -1, get size of window
2297 from X server.
2298
2299 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
2300 for MapNotify.
2301
835bdaa7 2302 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 2303 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 2304 (flush_and_sync): Reintroduce.
574c8efa 2305
3f1c6666 23062009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 2307
31fd7c5c 2308 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
2309
2310 * xterm.c (x_handle_net_wm_state): Also look for sticky.
2311 (x_term_init): Initialize Xatom_net_wm_state_sticky.
2312
2313 * frame.h: Declare Qsticky.
2314
cad9ef74
JD
2315 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
2316
2317 * nsfns.m (ns_frame_parm_handlers): Ditto.
2318
2319 * frame.c: Declare Qsticky.
2320 (frame_parms): Add sticky.
2321
2322 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
2323
2324 * xterm.h: Declare x_set_sticky.
2325
2326 * xterm.c (x_set_sticky): New function.
2327
69b16610
JD
2328 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
2329 (xg_tool_bar_menu_proxy): Attach enter/leave events to
2330 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
2331
2332 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
2333
2334 * frame.c: Qmaximized is new.
2335 (x_set_frame_parameters): Do not handle fullscreen specially.
2336 Only set width and height if explicitly set.
2337 (x_set_fullscreen): Handle Qmaximized.
2338 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
2339 (syms_of_frame): Initialize Qmaximized.
2340
1ac9108a
SM
2341 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
2342 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
2343
2344 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
2345 for Expose event. Add call to x_check_fullscreen for MapNotify event.
2346 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
2347 set gravity to NorthWestGravity when USE_GTK.
2348 (set_wm_state): New function.
31fd7c5c 2349 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
2350 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
2351 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 2352 or the case when no window manager is running. That means remove calls
3f1c6666
JD
2353 to x_real_positions and x_fullscreen_adjust.
2354
2355 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
2356 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
2357 flush_and_sync.
2358 (xg_height_changed): New function.
2359 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
2360 and gtk_window_set_policy. Set frame gravity after parsing the
2361 geometry string.
3f1c6666
JD
2362 (xg_update_frame_menubar, free_frame_menubar)
2363 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
2364 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
2365 Remove calls to xg_frame_set_char_size.
2366
fd503d99
KH
23672009-07-01 Kenichi Handa <handa@m17n.org>
2368
2369 * keyboard.c (decode_keyboard_code): New function.
2370 (tty_read_avail_input): Decode the input bytes if necessary.
2371
1ac9108a
SM
2372 * coding.c (setup_coding_system):
2373 Initialize coding->carryover_bytes to 0.
fd503d99
KH
2374 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
2375 use Qno_conversion.
2376
24ed93fb
YM
23772009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2378
2379 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
2380
99061dfc
CY
23812009-06-30 Chong Yidong <cyd@stupidchicken.com>
2382
1ac9108a 2383 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 2384
ff90fbde
JR
23852009-06-30 Jason Rumney <jasonr@gnu.org>
2386
2387 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2388 is already loaded.
2389 Set user model ID if supported (bug#1849).
2390
5f445726
JM
23912009-06-29 Jim Meyering <meyering@redhat.com>
2392
2393 Remove useless if-before-xfree test.
2394 * nsfont.m (nsfont_close): Remove useless test.
2395 * term.c (delete_tty): Likewise.
2396 * w32.c (system_process_attributes): Likewise.
2397 * w32font.c (w32font_close): Likewise.
2398 * xfaces.c (x_free_gc): Likewise.
2399 * xselect.c (buffer): Likewise.
2400
b9607587
AS
24012009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2402
2403 * process.c (send_process): Keep decoded string in a local
2404 variable and protect it from GC. (Bug#3521)
2405
89ba96f4
EZ
24062009-06-28 Eli Zaretskii <eliz@gnu.org>
2407
2408 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2409 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2410
098a1589
CY
24112009-06-28 Chong Yidong <cyd@stupidchicken.com>
2412
485422be
CY
2413 * xdisp.c (start_display, handle_face_prop)
2414 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
2415 (redisplay_window, try_window_id, produce_image_glyph):
2416 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 2417
098a1589
CY
2418 * xterm.c (x_update_window_begin, x_new_focus_frame)
2419 (x_scroll_bar_handle_click, handle_one_xevent)
2420 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2421 (x_make_frame_visible, x_make_frame_invisible)
2422 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2423 code chunks that are now obsolete.
2424
78c38319
MA
24252009-06-28 Michael Albinus <michael.albinus@gmx.de>
2426
2427 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2428 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2429 for hours, when optimzation is enabled.
2430 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2431 (xd_read_message): Make them static.
2432
4189ed40
CY
24332009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2434
2435 * term.c (turn_on_face): Allow simultaneously bold and dim
2436 terminal faces (Bug#3530).
2437
cd9b5e16
CY
24382009-06-27 Chong Yidong <cyd@stupidchicken.com>
2439
4e23bedb
CY
2440 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2441
cd9b5e16
CY
2442 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2443 truncation glyphs (Bug#3686).
2444
07cc3c35
GM
24452009-06-27 Glenn Morris <rgm@gnu.org>
2446
2447 * m/pmax.h: Restore file, with only netbsd portions.
2448
31fd7c5c 24492009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 2450
cd9b5e16 2451 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 2452
42d4a64f
KH
24532009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2454
2455 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2456 the arg FORCE_SYMBOL.
2457
930fe55b 24582009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
2459
2460 * fontset.c (fontset_find_font): When a usable rfont_def is found
2461 in a fallback font-group, make it the first element of the group.
2462
57ebc3fd
CY
24632009-06-24 Chong Yidong <cyd@stupidchicken.com>
2464
2465 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2466
f084f942
KH
24672009-06-24 Kenichi Handa <handa@m17n.org>
2468
2469 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2470 set for C.
2471 (fontset_font): Record the availability of a font for C both in
2472 the realized fontsets of the current one and the default one.
2473
2f686c87
DN
24742009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2475
2476 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2477 conditional, it is always defined on AIX.
2478
666e158e
MB
24792009-06-23 Miles Bader <miles@gnu.org>
2480
2481 * window.c (Vrecenter_redisplay): New variable.
2482 (syms_of_window): Initialize it.
2483 (Qtty): New extern declaration.
2484 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2485
c6da7cd2
JM
24862009-06-23 Jim Meyering <meyering@redhat.com>
2487
1ac9108a
SM
2488 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2489 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 2490 pointer dereferences are guaranteed to be valid.
c6da7cd2 2491
678dca3d
KH
24922009-06-23 Kenichi Handa <handa@m17n.org>
2493
74d75424
KH
2494 * emacs.c (main): Call init_font ().
2495
2496 * font.h (Vfont_log): Extern it.
2497 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2498
2499 * font.c (font_sort_entities, font_list_entities)
2500 (font_matching_entity, font_open_entity)
2501 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2502 (Vfont_log): Delete static.
2503 (font_log_env_checked): Delete this variable.
2504 (font_add_log): Don't check font_log_env_checked.
2505 (font_deferred_log): Check Vfont_log.
2506 (init_font): New function.
2507
678dca3d
KH
2508 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2509
2510 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2511
2512 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2513
2514 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2515
2516 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2517 (face_for_char): Don't call font_deferred_log here.
2518 (font_for_char): Likewise.
2519
8a668709
CY
25202009-06-22 Chong Yidong <cyd@stupidchicken.com>
2521
9a01ee33
CY
2522 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2523 rather than its background_width for drawing the overline and
2524 underline (Bug#489).
2525
2526 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2527 rather than its background_width for drawing the overline and
2528 underline (Bug#489).
ec7c9926
CY
2529 (xg_default_icon_file): New variable.
2530 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2531 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 2532
8a668709
CY
2533 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2534 (load_overlay_strings): Remove externs.
2535 (fast_find_position): Function deleted.
2536 (mouse_face_from_buffer_pos): New function, based on
2537 fast_find_position. Correctly handle before-strings,
2538 display-strings, and after-strings (Bug#1220).
2539 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2540
4d4c02d8
CY
25412009-06-21 Chong Yidong <cyd@stupidchicken.com>
2542
1ac9108a 2543 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
2544 (move_it_in_display_line_to, move_it_in_display_line_to)
2545 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2546
70243478
CY
25472009-06-21 Chong Yidong <cyd@stupidchicken.com>
2548
2549 * Branch for 23.1.
2550
13087e59
JR
25512009-06-21 Jason Rumney <jasonr@gnu.org>
2552
2553 * w32term.c (keyboard_codepage): New static variable.
2554 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2555 (w32_read_socket) [WM_CHAR]: Use it to decode character
2556 input (bug#3237).
2557 (w32_initialize): Initialize it.
2558 (codepage_for_locale): New function.
2559
4735b74e
KR
25602009-06-20 Ken Raeburn <raeburn@raeburn.org>
2561
2562 * process.c (status_message): Pass Faset index argument as a lisp
2563 object, so as to work with USE_LISP_UNION_TYPE.
2564
0e727afa
YM
25652009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2566
2567 * coding.c (Ffind_coding_systems_region_internal):
2568 Cache checked characters.
2569
cf299835
KH
25702009-06-18 Kenichi Handa <handa@m17n.org>
2571
1ac9108a 2572 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2573
90f20d94
AS
25742009-06-18 Andreas Schwab <aschwab@redhat.com>
2575
2576 * xdisp.c (redisplay_internal): Check that the frame is still
2577 live after redisplay of its windows.
2578 (redisplay_windows): Check that the window is still live.
2579
7f1faf1c
KH
25802009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2581
2582 * coding.c (detect_coding_utf_16): Fix previous change.
2583
cc13543e
KH
25842009-06-16 Kenichi Handa <handa@m17n.org>
2585
2586 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2587 UTF-16 by checking the dispersion of Eth and Oth bytes.
2588
977b85f4
AS
25892009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2590
2591 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2592
66bd43d1
KH
25932009-06-15 Kenichi Handa <handa@m17n.org>
2594
2595 * process.c (status_message): Fix previous change. Be sure to
2596 decode a localized string.
2597
cb5ca9c5
YM
25982009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2599
2600 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2601 add comment explaining why.
2602
ec7709ba 26032009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2604
ec7709ba 2605 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2606
4b7f335c
AR
26072009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2608
2609 * nsfont.m (ns_attribute_value): Remove.
2610 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2611 (ns_has_attribute): Shrink the normal range.
2612 (ns_findfonts): Don't worry about requested spec in determining
2613 need for synthItal.
e41820ee 2614 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2615
73b26103
SZ
26162009-06-14 Seiji Zenitani <zenitani@mac.com>
2617
2618 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2619
5753e4da
KH
26202009-06-11 Kenichi Handa <handa@m17n.org>
2621
2622 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2623 overhang for the static composition case.
2624
3561b671
KH
26252009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2626
5753e4da
KH
2627 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2628 overhang for the automatic composition case.
2629
3561b671
KH
2630 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2631 composition case.
2632
852bbd41
CY
26332009-06-10 Chong Yidong <cyd@stupidchicken.com>
2634
2635 * xdisp.c (get_next_display_element): When handling wrap-prefix
2636 and line-prefix, treat \n as a control character (bug#3502).
2637
9903d1e6
KH
26382009-06-10 Kenichi Handa <handa@m17n.org>
2639
2640 * font.c (font_parse_family_registry): Fix for one-char foundry.
2641 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2642
0bcbaaaa
CY
26432009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2644
2645 * process.c (status_message): Fix handling of multibyte signal
2646 string (Bug#3499).
2647
40aa3f13
JM
26482009-06-09 Jim Meyering <meyering@redhat.com>
2649
1f80c7e2
CY
2650 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2651 color name is missing.
40aa3f13 2652
72d51285
KH
26532009-06-09 Kenichi Handa <handa@m17n.org>
2654
2655 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2656 FROM-CODE and TO-CODE are codepoints of CHARSET.
2657
c1d04d84
AR
26582009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2659
2660 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2661
26622009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2663
2664 Changes to support :script/:lang/:otf in NS font driver.
2665 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2666 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2667 indicate not part of font driver interface, and change callers.
2668 (ns_get_family): Remove pointless null check.
2669 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2670 ns_spec_to_descriptor, ns_descriptor_to_entity.
2671 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2672 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2673 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2674 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2675 (ns_get_req_script, ns_accumulate_script_ranges)
2676 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2677 New functions.
2678 (nsfont_list, nsfont_match): Use ns_findfonts.
2679 (nsfont_open): Use font descriptor instead of traits.
2680 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2681 (dump_glyphstring): Rename to ns_dump_glyphstring.
2682
c7eb9816
AR
2683 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2684
c1d04d84
AR
2685 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2686
2687 * fontset.c (fontset_from_font): Remove NS-specific code.
2688
ec7709ba 26892009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2690
2691 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2692 nonactive windows.
2693
31fd7c5c 26942009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2695
1ac9108a 2696 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2697
68852c13 26982009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2699
2700 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2701
6756cd1d
CY
27022009-06-07 Chong Yidong <cyd@stupidchicken.com>
2703
2704 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2705 account for the overflowing of newlines into the last glyph on the
2706 display line (Bug#3482).
2707
28bf482a
DR
27082009-06-05 David Reitter <david.reitter@gmail.com>
2709
ec7709ba
JB
2710 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2711 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2712 Fns_selection_exists_p, Fns_selection_owner_p.
2713
fdb55376
JR
27142009-06-03 Jason Rumney <jasonr@gnu.org>
2715
2716 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2717 available. (Bug#3379)
2718
05129fbe
KH
27192009-05-29 Kenichi Handa <handa@m17n.org>
2720
1ac9108a
SM
2721 * coding.c (get_translation_table):
2722 Check Venable_character_translation.
05129fbe 2723
ec7709ba 27242009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2725
ec7709ba
JB
2726 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2727 (x_make_frame_visible): Move frame to front rather than calling
15891144 2728 ns_raise_frame().
ec7709ba 2729 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2730 isn't key window.
ec7709ba 2731 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2732 drawRect may be called by NSView even if the frame is hidden.
2733
ec7709ba
JB
2734 * nsfns.m (Fx_create_frame): Follow other ports in
2735 determining visibility; default to t. Ensure async_visible is set.
15891144 2736
21f73755
EZ
27372009-05-23 Eli Zaretskii <eliz@gnu.org>
2738
2739 * dired.c (Ffile_attributes): Doc fix.
2740
34001e41
CY
27412009-05-22 Chong Yidong <cyd@stupidchicken.com>
2742
2743 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2744
46306a17
SM
27452009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2746
2747 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2748 and xfont_scratch_props.
2749 (syms_of_xfont): Do it here instead.
2750 (xfont_find_ccl_program): Delete, unused.
2751 (xfont_open): Delete unused var `i'.
2752
ef6e0694
KH
27532009-05-21 Kenichi Handa <handa@m17n.org>
2754
2755 * fontset.c (Qlatin): Don't make it static.
2756
46306a17
SM
2757 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2758 New functions.
ef6e0694
KH
2759 (xfont_scripts_cache, xfont_scratch_props): New variables.
2760 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2761 (xfont_list_pattern): Argument changed. Callers changed.
2762 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2763 (xfont_list): Don't reject a font spec with :script property.
2764 (xfont_has_char): Fix setting of encoding.
2765 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2766 xfont_scratch_props.
2767
27682009-05-19 Kenichi Handa <handa@m17n.org>
2769
46306a17 2770 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2771 Callers changed.
2772
27732009-05-18 Kenichi Handa <handa@m17n.org>
2774
2775 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2776
ac71ced7
SM
27772009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2778
2779 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2780 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2781
1c6d1051
YM
27822009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2783
2784 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2785 (x_delete_terminal): Dissociate resource database from display and
2786 then call XrmDestroyDatabase before closing display.
2787
9b9b779c
AR
27882009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2789
2790 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2791 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2792 whether selected frame is viable before raising it (based on patch
2793 by David Reitter), and improve commentary.
2794 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2795
cccd42d5
KH
27962009-05-15 Kenichi Handa <handa@m17n.org>
2797
2798 * font.c (Ffont_spec): Check arguments.
2799
337fbd17
CY
28002009-05-14 Chong Yidong <cyd@stupidchicken.com>
2801
2802 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2803 weight when testing attributes (Bug#3282).
2804
47a6002f
JD
28052009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2806
2807 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2808 what we expect to get in the next ConfigureNotify event.
2809
9cb363db
YM
2810 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2811 before Xft one (Bug#1696).
2812
b9126609
CY
28132009-05-07 David Reitter <david.reitter@gmail.com>
2814
2815 * nsfns.m (Fx_display_planes): Compute bitplanes using
2816 NSBitsPerPixelFromDepth (Bug#3207).
2817
27a69fd9
CY
28182009-05-10 Chong Yidong <cyd@stupidchicken.com>
2819
2820 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2821
00f37552
TTN
28222009-05-10 Ulrich Mueller <ulm@gentoo.org>
2823
2824 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2825
2d82a920
DR
28262009-05-07 David Reitter <david.reitter@gmail.com>
2827
ec7709ba
JB
2828 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2829 Respect mouse face background.
2d82a920 2830
46b0d52d
DR
28312009-05-07 David Reitter <david.reitter@gmail.com>
2832
ec7709ba
JB
2833 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2834 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2835 in ns_update_begin and ns_update_end.
2836
ce1b23bb
SM
28372009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2838
5996e1b7
SM
2839 * nsfns.m (ns_get_screen): Rewrite.
2840 Don't presume selected-frame is of type `ns'.
2841
ba98e3a0
SM
2842 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2843 all drivers.
2844
ce1b23bb
SM
2845 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2846
bcda200f
YM
28472009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2848
2849 * keyboard.h (add_user_signal): Fix typo in extern.
2850
2851 * lisp.h (add_user_signal): Remove extern.
2852
2853 * unexelf.c (unexec): Consider a section to precede the .bss section
2854 if its addresses overlap that of .bss.
2855 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2856 instead of dumping process.
2857
864660a2
SM
28582009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2859
2860 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2861
50da4e56
SM
28622009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2863
2864 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2865
51520a1a
DN
28662009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2867
2868 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2869 any statements.
2870
409ea3a1
AS
28712009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2872
59c4c60f
AS
2873 * process.c (read_process_output): Make sure the current buffer is
2874 always restored.
2875
409ea3a1
AS
2876 * coding.c (record_conversion_result): Don't modify
2877 Vlast_code_conversion_error for successful result.
2878 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2879
56f00ed2
KH
28802009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2881
2882 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2883 (load_charset_map): Remove unnecessary code.
56f00ed2 2884
4491c9d2
DR
28852009-04-30 David Reitter <david.reitter@gmail.com>
2886
35f5b128 2887 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2888 through f24.
2889
6970f632
CY
28902009-04-30 Chong Yidong <cyd@stupidchicken.com>
2891
2892 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2893
2894 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2895 face_at_buffer_position.
2896 (face_before_or_after_it_pos, get_next_display_element)
2897 (note_mouse_highlight): Update face_at_buffer_position call.
2898
2899 * term.c (term_mouse_highlight):
2900 * msdos.c (IT_note_mouse_highlight):
2901 * fontset.c (Finternal_char_font):
35f5b128 2902 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
2903
2904 * dispextern.h (face_at_buffer_position): Update prototype.
2905
0c616f63
KH
29062009-04-30 Kenichi Handa <handa@m17n.org>
2907
35f5b128 2908 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 2909
ad3aaf33
AS
29102009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2911
2912 * callproc.c (Fcall_process): Fix GC protection. Make sure
2913 current buffer is always restored.
2914
c3c963a0
YM
29152009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2916
2917 * atimer.c (init_atimer): Also clear stopped_atimers.
2918
2919 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2920
7e3386cb
YM
2921 * process.c (create_process): Clean up merger residues of
2922 2008-07-17 change.
2923
91f68422
CY
29242009-04-29 Ulrich Mueller <ulm@gentoo.org>
2925
2926 * lread.c (Vread_circle): New variable.
2927 (read1): Disable recursive read if Vread_circle is nil.
2928
24b34550
KH
29292009-04-29 Kenichi Handa <handa@m17n.org>
2930
2931 * fontset.h (set_default_ascii_font): Delete extern.
2932
2933 * fontset.c (set_default_ascii_font): Delete this unused function.
2934
2935 * frame.c (x_set_font): When ARG is a font-object, check if the
2936 font-object matches with the ASCII font-spec of the frame's
9c358bda 2937 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 2938
77bf07e1
AS
29392009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2940
2941 * fns.c (Flocale_info): Protect vector from GC during decoding.
2942
2943 * process.c (Fstart_process): Protect argv strings from GC during
2944 encoding.
2945
2c55aacf
AS
29462009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2947
2948 * sysdep.c: Include <ctype.h>.
2949
b892d3c9
DR
29502009-04-27 David Reitter <david.reitter@gmail.com>
2951
35f5b128 2952 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
2953 Remove commented-out code.
2954
9d0644c4
JB
29552009-04-26 Johan Bockgård <bojohan@gnu.org>
2956
2957 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2958
b7053016
JR
29592009-04-25 Jason Rumney <jasonr@gnu.org>
2960
2961 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2962
4e8231f3
YM
29632009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2964
2965 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2966 Swap bytes in short integer if fringe bitmap width > 8.
2967
493dcf2c
KH
29682009-04-23 Kenichi Handa <handa@m17n.org>
2969
2970 * xfaces.c (Fx_list_fonts): If a font size is specified in
2971 PATTERN, set it in returned scalable fonts.
2972
401e9e57
CY
29732009-04-22 Chong Yidong <cyd@stupidchicken.com>
2974
708e05dc
CY
2975 * keyboard.c (Fset_input_meta_mode): Doc fix.
2976
2977 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2978
1ac9108a 2979 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
2980
2981 * coding.c (Fterminal_coding_system): Doc fix.
2982
2983 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2984 (Fx_display_pixel_height, Fx_display_planes)
2985 (Fx_display_color_cells, Fx_server_max_request_size)
2986 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2987 (Fx_display_mm_height, Fx_display_mm_width)
2988 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
2989 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2990 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
2991 (check_x_display_info): Handle terminal objects instead of
2992 terminal ids.
2993
401e9e57
CY
2994 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
2995 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
2996 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
2997 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 2998
df80c7f0
KH
29992009-04-21 Kenichi Handa <handa@m17n.org>
3000
5a8f12af 3001 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 3002 (font_score): Check AVGWIDTH too.
908567ef 3003
df80c7f0
KH
3004 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
3005 worst case.
1ac9108a
SM
3006 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
3007 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 3008
705af33f
JR
30092009-04-19 Jason Rumney <jasonr@gnu.org>
3010
3011 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 3012 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
3013
3014 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
3015 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
3016 get_phys_cursor_geometry.
3017
b71ac3dd 3018 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
3019 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
3020 using get_phys_cursor_geometry.
3021
3022 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
3023 correctly calculated.
3024
dc2933eb
JD
30252009-04-19 Jan Djärv <jan.h.d@swipnet.se>
3026
1ac9108a
SM
3027 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
3028 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
3029 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
3030 is deprecated.
3031
973e7849
AS
30322009-04-18 Andreas Schwab <schwab@linux-m68k.org>
3033
3034 * font.c (font_put_frame_data): Use xfree instead of free.
3035
314d66f4
JB
30362009-04-17 Juanma Barranquero <lekktu@gmail.com>
3037
3038 * w32font.c (Qja, Qko): Remove declarations.
3039 (syms_of_w32font): Don't DEFSYM them.
3040
cf702558
CY
30412009-04-17 Chong Yidong <cyd@stupidchicken.com>
3042
3043 * font.c (Qja, Qko): Move definitions here from ftfont.c.
3044
3045 * font.h (Qja, Qko): Extern them.
3046
3047 * ftfont.c (Qja, Qko): Remove declarations.
3048
3049 * xfont.c (Qja, Qko): Remove declarations.
3050
b50504f5
KH
30512009-04-17 Kenichi Handa <handa@m17n.org>
3052
bde25748
KH
3053 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
3054 string from a vector to handle Latin-1 characters correctly.
3055
b50504f5
KH
3056 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
3057 entity even if the cache hits.
3058
f4646fff
AS
30592009-04-16 Andreas Schwab <schwab@linux-m68k.org>
3060
3061 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 3062 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 3063
e7deaab0
AS
3064 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
3065 * lisp.h: Adjust prototypes.
3066
0a0e7d49
CY
30672009-04-16 Chong Yidong <cyd@stupidchicken.com>
3068
3069 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
3070 change (Bug#3003).
3071
3c908a57
KH
30722009-04-16 Kenichi Handa <handa@m17n.org>
3073
1ac9108a 3074 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
3075
3076 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
3077 adstyle.
3078
3079 * ftfont.c (Qja, Qko): Don't make them static.
3080 (enum ftfont_cache_for): New enum.
3081 (fc_charset_table): Undo the previous change.
3082 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
3083 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
3084 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
3085 non-scarable font, try to get AVERAGE_WIDTH.
3086 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
3087 Change ft_face_cache from a list of a hash-table. Don't check
3088 `ja' and `ko' adstyle here.
3089 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
3090 FTFONT_CACHE_FOR_CHARET.
3091 (ftfont_get_charset): Undo the previous change.
1ac9108a 3092 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
3093 (ftfont_close): Likewise.
3094 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
3095
3096 * font.c (font_sort_entites): Change the meaning of the arg
3097 BEST-ONLY. Don't optimize for VEC of lenght 1.
3098 (font_select_entity): Just return the value of font_sort_entites.
3099
3100 * xfaces.c (merge_face_vectors): Reflect font properties in
3101 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
3102 font_clear_prop if a face attribute doesn't change.
3103
3c908a57
KH
3104 * charset.h (charset_ksc5601): Extern it.
3105
3106 * charset.c (charset_ksc5601): New variable.
3107 (Fdefine_charset_internal): Set charset_ksc5601.
3108 (init_charset_once): Initialize charset_ksc5601 to -1.
3109
d65859c3
DN
31102009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
3111
3112 * fileio.c (history_delete_duplicates): Remove unused declaration.
3113
3114 * callint.c (history_delete_duplicates): New declaration.
3115 (Fcall_interactively): Remove command history duplicates when
3116 history_delete_duplicates is true.
3117
3ba010e5
EZ
31182009-04-14 Eli Zaretskii <eliz@gnu.org>
3119
3120 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
3121
06f19b91
KH
31222009-04-14 Kenichi Handa <handa@m17n.org>
3123
3124 * font.c (Ffont_info): Fix docstring. Fix the second element of
3125 the returned value (bug#2949).
3126
2cce8bfc
CY
31272009-04-14 Chong Yidong <cyd@stupidchicken.com>
3128
3129 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
3130
d156542d
KH
31312009-04-14 Kenichi Handa <handa@m17n.org>
3132
3133 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
3134 encoding charset is ascii_compatible.
3135
3136 * charset.c (Fdefine_charset_internal): Make charset
3137 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
3138 code_offset is 0, and covers all ASCII characters.
3139
86fa089e
SM
31402009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
3141
3142 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
3143 (ns_string_to_pasteboard_internal):
3144 * nsmenu.m (process_dialog):
3145 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
3146 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
3147 * lisp.h (Fx_load_color_file): Declare.
3148
a8a3728b
KH
31492009-04-13 Kenichi Handa <handa@m17n.org>
3150
1ac9108a 3151 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
3152 (font_select_entity): Suppress the code to optimize for the same
3153 kind of fonts.
3154 (font_load_for_lface): Get a font that supports at least ASCII
3155 characters.
3156
3157 * ftfont.c (Qja, Qko): New variables.
3158 (fc_charset_table): Delete uniquifier data for iso8859-1.
3159 (ftfont_get_latin1_charset): New function.
3160 (get_adstyle_property): New function.
3161 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
3162 bitmap fonts.
3163 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
3164 Delete iso-8859-1 range from the charset of fonts whose adstyle is
3165 `ko' or `ja'.
3166 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 3167 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
3168 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
3169 property.
3170 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
3171 (syms_of_ftfont): DEFSYM Qja and Qko.
3172
483670b5
KH
31732009-04-09 Kenichi Handa <handa@m17n.org>
3174
12b55765
KH
3175 * charset.c (map_charset_chars): For a charset of `superset'
3176 method, fix calculation of code range.
3177
483670b5
KH
3178 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
3179 from the list of extra properties.
3180 (font_clear_prop): Be sure to delete `:name' font property.
3181
57d3b93b
KH
31822009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3183
b4b2c2ca
YM
3184 * dispnew.c (redraw_overlapping_rows): Fix detection of
3185 overlapping for topmost and bottommost rows.
3186
1ac9108a 3187 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 3188
472c3609
JR
31892009-04-06 Jason Rumney <jasonr@gnu.org>
3190
3191 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
3192
ab193662
KH
31932009-04-06 Kenichi Handa <handa@m17n.org>
3194
3195 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
3196
3197 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
3198
0c26f026
KH
31992009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3200
3201 * ftfont.c (ftfont_open): Fix checking of the return value of
3202 FT_Load_Char. Fix setting font->underline_thickness.
3203
e173bbce
CY
32042009-04-04 Chong Yidong <cyd@stupidchicken.com>
3205
3206 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
3207 (Fterminal_parameters, Fterminal_parameter)
3208 (Fset_terminal_parameter): In doc string, refer to terminal
3209 objects rather than terminal ids.
3210
693a2698
EZ
32112009-04-04 Eli Zaretskii <eliz@gnu.org>
3212
3213 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
3214 ret_lim_data. (Bug#2867)
3215
d5221487
CY
32162009-04-03 Chong Yidong <cyd@stupidchicken.com>
3217
3218 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
3219 so they don't get wider than the window, matching 2006-01-23
3220 change to the partner function in xdisp.c (Bug#2800).
3221
223509a3
KH
32222009-04-03 Kenichi Handa <handa@m17n.org>
3223
3224 * print.c (print_object): Make each lowest sub_char_table start a
3225 new line (Bug#2866).
3226
74fcd0b1
KH
32272009-04-02 Kenichi Handa <handa@m17n.org>
3228
3229 * fontset.c (fontset_font): Record no-font when a fontset
3230 explicitly tells not to try another font-specs.
3231
c542407d
SM
32322009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
3233
3234 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
3235
e3869731
KH
32362009-03-30 Kenichi Handa <handa@m17n.org>
3237
d8d2f142
KH
3238 * fontset.c (fontset_from_font): Specify only registry in a
3239 font-spec for all characters supported by that registry.
3240
e3869731
KH
3241 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
3242 even if HAVE_M17N_FLT is not defined.
3243
5da5f805
CY
32442009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
3245
3246 * ftfont.c: Conditionalize prototyping and use of
3247 ftfont_variation_glyphs.
3248
ab226c50
SM
32492009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3250
9628fed7
SM
3251 * frame.c (delete_frame): Work around compiler bug.
3252
3253 * editfns.c (general_insert_function): Adjust to insdel.c changes.
3254 * insdel.c (prepare_to_modify_buffer, signal_before_change):
3255 Some more EMACS_INT.
3256 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
3257
3258 * xdisp.c (dump_glyph): Fix typo.
3259
ae19ba7c
SM
3260 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
3261 (adjust_markers_gap_motion, adjust_markers_for_delete)
3262 (adjust_markers_for_insert, adjust_point)
3263 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
3264 (make_gap, copy_text, count_size_as_multibyte, insert)
3265 (insert_and_inherit, insert_before_markers)
3266 (insert_before_markers_and_inherit, insert_1)
3267 (count_combining_before, count_combining_after, insert_1_both)
3268 (insert_from_string, insert_from_string_before_markers)
3269 (insert_from_string_1, insert_from_gap, insert_from_buffer)
3270 (insert_from_buffer_1, adjust_after_replace)
3271 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
3272 (replace_range_2, del_range, del_range_1, del_range_byte)
3273 (del_range_both, del_range_2, modify_region)
3274 (prepare_to_modify_buffer, signal_before_change)
3275 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
3276 for buffer positions and sizes.
3277 * lisp.h: Adjust prototypes accordingly.
3278
3279 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
3280 (non_regular_inserted, non_regular_nbytes, read_non_regular)
3281 (Finsert_file_contents): Use EMACS_INT for buffer positions.
3282
ab226c50
SM
3283 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
3284
46dfb8fb
JD
32852009-03-27 Jan Djärv <jan.h.d@swipnet.se>
3286
3287 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
3288 lines and columns so we keep the same pixel height and width.
3289
3290 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
3291 the property _NET_WM_STATE has changed.
46dfb8fb
JD
3292 (x_handle_net_wm_state): New function to update frame parameter
3293 fullscreen.
3294 (x_term_init): Initialize atoms for _NET_WM_STATE.
3295
3296 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
3297
d347e494
SM
32982009-03-27 Kevin Ryde <user42@zip.com.au>
3299
3300 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
3301 Gpm_GetEvent as an error that justifies closing the filedescriptor.
3302 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
3303 (Fgpm_mouse_stop): Pass that new parameter.
3304 * termhooks.h (close_gpm): Adjust prototype.
3305
84db11d6
SM
33062009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
3307
c95a5008
SM
3308 * lisp.h (Fx_focus_frame): Declare.
3309
84db11d6
SM
3310 * callint.c (Fcall_interactively): For '^' just delegate the work to
3311 handle-shift-selection.
3312 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
3313
0a1958d6
CY
33142009-03-24 Chong Yidong <cyd@stupidchicken.com>
3315
0bfdff23
CY
3316 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
3317
0a1958d6
CY
3318 * data.c (Qinteractive_form): New variable.
3319 (Finteractive_form): Use it.
3320
3321 * eval.c (Fcommandp): Use Qinteractive_form.
3322
58aec0d6
JR
33232009-03-24 Jason Rumney <jasonr@gnu.org>
3324
3325 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
3326 Calculate total size precisely. Decode environment variables
3327 before substituting. (Bug#38)
3328
553dd618
KH
33292009-03-24 Kenichi Handa <handa@m17n.org>
3330
3331 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 3332 encoding (Bug#2722).
553dd618 3333
c39ea606
JD
33342009-03-23 Jan Djärv <jan.h.d@swipnet.se>
3335
3336 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
3337 that gdpy is set.
3338
bc9b2b5e
AM
33392009-03-22 Alan Mackenzie <acm@muc.de>
3340
3341 * callint.c (Finteractive): Clarify the doc string - even
3342 promptless elements need \n separators.
3343
9f995a76
JR
33442009-03-22 Jason Rumney <jasonr@gnu.org>
3345
3346 * w32term.c (syms_of_w32term): Doc fix for
3347 x-use-underline-position-properties.
3348
22749e9a
EZ
33492009-03-21 Eli Zaretskii <eliz@gnu.org>
3350
3351 * w32.c (getpwuid): Change argument type to unsigned.
3352 (struct w32_id): Change type of `rid' member to unsigned.
3353 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
3354 argument ID to unsigned. All callers changed.
3355 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
3356
e00553bf
EZ
33572009-03-20 Eli Zaretskii <eliz@gnu.org>
3358
3359 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
3360 negative, produce a float value.
3361
3362 * dired.c (make_uid, make_gid): New functions.
3363 (Ffile_attributes): Use them to avoid negative UID and GID.
3364
f761d6b6
JB
33652009-03-20 Juanma Barranquero <lekktu@gmail.com>
3366
3367 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
3368 (syms_of_keyboard) <command-hook-internal, input-method-function>:
3369 Fix typos in docstrings.
3370
d507f8d7
KH
33712009-03-19 Kenichi Handa <handa@m17n.org>
3372
3373 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
3374 changed, use font_load_for_lface to get a new font object.
3375 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
3376
3377 * frame.c (x_set_font): Handle the case that ARG is a cons.
3378
c68845e0
GM
33792009-03-19 Glenn Morris <rgm@gnu.org>
3380
3381 * fileio.c (Fsubstitute_in_file_name): Doc fix.
3382
bfa49dd1
CY
33832009-03-19 Chong Yidong <cyd@stupidchicken.com>
3384
3385 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
3386
8458d4c1
KH
33872009-03-19 Kenichi Handa <handa@m17n.org>
3388
3389 * charset.c (load_charset_map_from_file): When a mapfile can't be
3390 loaded, signal an error.
3391
78e7d1fe
EZ
33922009-03-18 Eli Zaretskii <eliz@gnu.org>
3393
3394 * dired.c (Ffile_attributes): Make sure UID and GID are always
3395 positive, even if the value is too large for a positive EMACS_INT.
3396 Doc fix.
3397
3398 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3399
5da9fdfa
YM
34002009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3401
3402 * xmenu.c (xdialog_show): Move Fredisplay call ...
3403 (Fx_popup_dialog): ... here.
3404
7519c40d
SM
34052009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3406
3407 * dired.c (file_name_completion): Disable the first optimization just
3408 installed, since it is not implemented correctly.
3409
2cd298e2
SM
34102009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3411
3412 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 3413 only if the entry can affect bestmatch.
2cd298e2
SM
3414 Stop the search early, as Ftry_completion already does.
3415
48d37adf
CY
34162009-03-17 Chong Yidong <cyd@stupidchicken.com>
3417
e10c9c93 3418 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 3419
9286b16a
CY
34202009-03-15 Chong Yidong <cyd@stupidchicken.com>
3421
3422 * keyboard.c (parse_menu_item): Don't display remappings as menu
3423 equivalent bindings (Bug#788).
3424
f7b146dc
JR
34252009-03-15 Jason Rumney <jasonr@gnu.org>
3426
3427 * w32term.h (WM_EMACS_PAINT): New message.
3428 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3429 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3430 before passing to lisp thread. (Bug#950)
3431
f761d6b6 34322009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 3433
d93f9575
CY
3434 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3435 variable as it was never reset.
3436 (ns_term_init): Remove initialization of Lisp-settable defaults
3437 and ns_expand_space.
3438 (-setPanelFromDefaultValues): Remove ns_expand_space.
3439 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3440 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
3441 i.e. no additional spacing, similar to Carbon port.
3442
d93f9575
CY
3443 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3444 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 3445
305018ec
JD
34462009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3447
3448 * sound.c (alsa_configure): Remove call to deprecated
3449 snd_pcm_sw_params_set_xfer_align.
3450
f761d6b6 34512009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
3452
3453 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3454 after clicking in a detached tool bar.
3455 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3456
46e722a9
SM
34572009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3458
348db3dd
SM
3459 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3460 int/Lisp_Object mixup).
46e722a9 3461
a3d16f39
KH
34622009-03-13 Kenichi Handa <handa@m17n.org>
3463
3464 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 3465 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
3466 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3467 (set_fontset_font): Change ARG to a vector. Handle range_list in
3468 ARG correctly.
3469 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 3470 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
3471 the above change.
3472 (fontset_from_font): Fix previous change.
fe24f56a 3473 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
3474 entry. If FONTSET is the default fontset, don't set the extra
3475 slot of the returning char-table.
3476
b066e6b6
JB
34772009-03-12 Juanma Barranquero <lekktu@gmail.com>
3478
3479 * nsfns.m (Fx_close_connection): Doc fix.
3480 (Fns_do_applescript): Reflow docstring.
3481 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3482 (Fx_display_pixel_width, Fx_display_pixel_height)
3483 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3484 Fix typos in docstrings.
3485 (Fns_set_alpha): Fix typos in error messages.
3486
d472514e 34872009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 3488
d472514e 3489 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
3490 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3491 were used for such events.
3492
d472514e
JB
3493 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3494 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 3495
d472514e 3496 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
3497 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3498
fb930676
KH
34992009-03-11 Kenichi Handa <handa@m17n.org>
3500
ff85581a
KH
3501 * font.h (font_open_by_spec): Extern it.
3502
c50b7e98
KH
3503 * font.c (font_open_by_spec): New function.
3504 (font_open_by_name): Use font_open_by_spec.
3505
fb930676
KH
3506 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3507 fontset of the frame.
3508
3509 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3510 modify the default font of frames that use this fontset.
3511 (num_auto_fontsets): New variable.
3512 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3513 name. Be sure to set FONTSET_ASCII to the correct font name.
3514 (update_auto_fontset_alist): New function.
3515
df4e8455
JB
35162009-03-11 Juanma Barranquero <lekktu@gmail.com>
3517
3518 * makefile.w32-in: Update dependencies.
3519
0a375797
AR
35202009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3521
3522 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3523
61313fa3
SM
35242009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3525
3526 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3527
b55103fb
CY
35282009-03-10 Chong Yidong <cyd@stupidchicken.com>
3529
3530 * lread.c (Feval_buffer): Doc fix.
3531
dde2559c
KH
35322009-03-09 Kenichi Handa <handa@m17n.org>
3533
3534 * charset.c (Qfile_name_handler_alist): Extern it.
3535 (load_charset_map_from_file): Temporarily bind
3536 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3537
df4e8455 35382009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 3539
47f588bb
GM
3540 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3541 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 3542
4ddf94bd
AR
35432009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3544
4c9bdfc2
AR
3545 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3546 (x_set_window_size): Change back to calculated method of setting
3547 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
3548 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3549 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3550
fe41ae9e
AR
3551 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3552
4c9bdfc2
AR
3553 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3554 accelerator in parens under GNUstep.
3555
825d0875
KH
35562009-03-06 Kenichi Handa <handa@m17n.org>
3557
3558 These changes are to detect incorrect composition sequence without
f3b3be74 3559 looking ahead the source. (Bug#2370)
825d0875
KH
3560
3561 * coding.h: Include "composite.h".
3562 (enum compisition_state): New enum.
3563 (struct compisition_status): New struct.
3564 (struct iso_2022_spec): New member cmp_status.
3565 (struct emacs_mule_spec): New struct.
3566 (struct coding_system): New members ctext_extended_segment_len and
3567 embedded_utf_8. Change the union member
3568 spec.emacs_mule_full_support to spec.emacs_mule.
3569
3570 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3571 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3572 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3573 (ADD_COMPOSITION_DATA): New arg nbytes.
3574 (emacs_mule_char): New arg cmp_status.
3575 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3576 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3577 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3578 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3579 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3580 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3581 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3582 (EMACS_MULE_COMPOSITION_END): New macro.
3583 (emacs_mule_finish_composition): New function.
3584 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3585 (decode_coding_emacs_mule): Avoid long looking ahead while
3586 handling composition.
3587 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3588 (ENCODE_COMPOSITION_RULE): New macro.
3589 (finish_composition): New function.
3590 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3591 (DECODE_COMPOSITION_START): New implementation.
3592 (DECODE_COMPOSITION_END): Likewise.
3593 (STORE_COMPOSITION_RULE): New macro.
3594 (decode_coding_iso_2022): Avoid long looking ahead while handling
3595 composition, CTEXT extended segment, and embedded UTF-8.
3596 (setup_coding_system): For a coding of type iso-2022, reset
3597 CODING_ISO_EXTSEGMENT_LEN (coding) and
3598 CODING_ISO_EMBEDDED_UTF_8 (coding).
3599 (get_translation): Delete arguments last_block, from_nchars,
3600 to_nchars. Callers changed.
3601 (produce_chars): Don't modify charbuf. Adjusted for the change of
3602 get_translation.
98a326f7 3603 (produce_composition): Adjust for the new annotation sequence.
825d0875 3604 (handle_composition_annotation): Likewise.
98a326f7 3605 (consume_chars): Adjust for the change of get_translation.
825d0875 3606
ccbc4452
AR
36072009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3608
4ddf94bd 3609 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3610
988a7ddb
KH
36112009-03-05 Kenichi Handa <handa@m17n.org>
3612
3613 * font.c (font_select_entity): New function.
3614 (font_find_for_lface): Use font_select_entity to select a font.
3615
3616 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3617 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3618 font with C restriction.
3619
98a326f7 36202009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3621
be1bce46 3622 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3623
10ea2b82
JR
36242009-03-04 Jason Rumney <jasonr@gnu.org>
3625
2c93b248 3626 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3627 characters that have already been read. (Bug#2569)
2c93b248 3628
10ea2b82
JR
3629 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3630 Log an error message if check_image_size failed.
3631 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3632 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3633
71a0c011
EZ
36342009-03-02 Eli Zaretskii <eliz@gnu.org>
3635
3636 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3637 when decoding process output.
3638
2f63bba8
RS
36392009-03-01 Richard M Stallman <rms@gnu.org>
3640
3641 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3642
3643 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3644
0a9564cb
EZ
36452009-02-28 Eli Zaretskii <eliz@gnu.org>
3646
3647 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3648 (decode_coding_emacs_mule, decode_coding_iso_2022)
3649 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3650 (decode_coding_raw_text, decode_coding_charset)
3651 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3652 Honor inhibit-eol-conversion. (Bug #2186)
3653
449148b3
JR
36542009-02-28 Jason Rumney <jasonr@gnu.org>
3655
3656 * coding.c (detect_coding_charset): If not checking latin extra,
3657 fail on characters between 0x80 and 0xA0. (Bug#2354)
3658
a4aee864
EZ
36592009-02-28 Eli Zaretskii <eliz@gnu.org>
3660
3661 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3662 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3663
d88bee5a
GM
36642009-02-27 Glenn Morris <rgm@gnu.org>
3665
3666 * callint.c (Finteractive): Doc fix.
3667
a808f22d
KH
36682009-02-27 Kenichi Handa <handa@m17n.org>
3669
3670 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3671
caf8d60c
CY
36722009-02-27 Chong Yidong <cyd@stupidchicken.com>
3673
3674 * font.c (font_style_to_value): Set value for unknown symbols to
3675 100 instead of 255.
b61137ea
CY
3676 (weight_table, slant_table, width_table): Treat "unspecified" as
3677 the default value.
caf8d60c 3678
1a0de25c
JB
36792009-02-26 Juanma Barranquero <lekktu@gmail.com>
3680
3681 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3682
8fc45744
JB
36832009-02-25 Juanma Barranquero <lekktu@gmail.com>
3684
107bd7d1
JB
3685 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3686 error as soon as a recursive load is detected.
8fc45744 3687
f097e223
AR
36882009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3689
3690 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3691 before caching.
3692
8810a12f
KH
36932009-02-24 Kenichi Handa <handa@m17n.org>
3694
3695 * fontset.c (fontset_find_font): Fix the condition for checking
3696 unavailable font.
3697
2c7d1565
GM
36982009-02-24 Glenn Morris <rgm@gnu.org>
3699
3700 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3701 whitespace that confuses documentation.
3702
a20878b6
MB
37032009-02-23 Miles Bader <miles@gnu.org>
3704
3705 * process.c (Flist_system_processes, Fprocess_attributes)
3706 (syms_of_process): Rename `system-process-attributes' to
3707 `process-attributes'.
3708
b3b58c01
AS
37092009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3710
1b3b981b
AS
3711 * coding.h (struct coding_system): Make safe_charsets a pointer to
3712 unsigned char.
3713 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3714 being 255.
3715 (SAFE_CHARSET_P): Likewise.
3716 (setup_iso_safe_charsets): Properly setup safe_charsets.
3717 (Fdefine_coding_system_internal): Likewise.
3718 (setup_coding_system): Likewise. Remove unneeded casts.
3719 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3720 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3721 unneeded casts.
3722
b3b58c01
AS
3723 * insdel.c (del_range_2): Don't modify gap contents when called
3724 from decode_coding_object. (Bug#1809)
3725
0b6f228c
CY
37262009-02-21 Chong Yidong <cyd@stupidchicken.com>
3727
3728 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3729 Qfont_object.
3730 (Ftype_of): Recognize font objects.
3731
3732 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3733
3734 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3735 moved to data.c.
3736
52f8870b
AR
37372009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3738
3739 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3740 async_iconified. Based on a patch by Christian Lynbech
3741 <christian.lynbech@tieto.com>.
3742 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3743
7087d5e9
GM
37442009-02-20 Glenn Morris <rgm@gnu.org>
3745
3746 * syntax.c (Fskip_chars_forward): Fix doc typo.
3747
41d2ceef
CY
37482009-02-20 Chong Yidong <cyd@stupidchicken.com>
3749
3750 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3751
1a3b7ca6
CY
37522009-02-19 Chong Yidong <cyd@stupidchicken.com>
3753
3754 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3755
73cce38d
KH
37562009-02-19 Kenichi Handa <handa@m17n.org>
3757
3758 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3759 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3760
a51092ee
DN
37612009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3762
3763 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3764
c423ecca
KH
37652009-02-18 Kenichi Handa <handa@m17n.org>
3766
3767 * font.c (font_check_otf_features): Fix handling of `nil' element.
3768 (Ffont_spec): Describe :lang and :otf in the docstring.
3769
4c1958f4
AS
37702009-02-16 Andreas Schwab <schwab@suse.de>
3771
3772 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3773 string.
3774
5704f39a
KH
37752009-02-16 Kenichi Handa <handa@m17n.org>
3776
3777 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3778 (Bug#1723)
5704f39a 3779
8f0085aa
CY
37802009-02-14 Chong Yidong <cyd@stupidchicken.com>
3781
a057d86a 3782 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3783
3784 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3785 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3786
aff01dd9
EZ
37872009-02-14 Eli Zaretskii <eliz@gnu.org>
3788
3789 * msdos.c (MAX_SCREEN_BUF): New macro.
3790 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3791 Encode the entire run of glyphs sharing the same face, instead of
3792 doing that one glyph at a time (fixes a bug with displaying
3793 double-size characters).
3794
ba301db3
AR
37952009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3796
3797 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3798
3799 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3800 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3801 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3802
3803 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3804 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3805
51d861de
SM
38062009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3807
3808 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3809 invisible areas.
3810
7fed8996
JR
38112009-02-12 Jason Rumney <jasonr@gnu.org>
3812
631ea4fb
JR
3813 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3814 (add_font_entity_to_list): Call check_face_name even when family
3815 is unspecified.
3816
cb4a3e42
JR
3817 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3818 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3819 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3820
7fed8996 3821 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3822 raster fonts. (Bug#2219)
7fed8996 3823
895416e3
KH
38242009-02-12 Kenichi Handa <handa@m17n.org>
3825
3826 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3827 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3828 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3829 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3830 (find_automatic_composition): While looking forward and backward,
3831 check static composition. Fix where to stop looking forward.
3832 (composition_adjust_point): Fix checking of static composition.
3833 (Fcomposition_get_gstring): Pay attention to
1dacf998 3834 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3835
3836 * lisp.h (fast_looking_at): Extern it.
3837
3838 * search.c (fast_looking_at): New function.
3839
51d861de 3840 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3841 <struct glyph>.u.cmp.to.
3842 (append_composite_glyph): Likewise.
3843
51d861de 3844 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3845 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3846 composition.
51d861de 3847 (append_composite_glyph): Adjust for the change of
895416e3
KH
3848 <strcut glyph>.u.cmp.to.
3849
8510724d
JB
38502009-02-11 Juanma Barranquero <lekktu@gmail.com>
3851
3852 * casetab.c (init_casetab_once):
3853 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3854 * font.c (font_update_lface):
3855 * fontset.c (Fnew_fontset):
3856 * ftfont.c (ftfont_drive_otf):
3857 * xfont.c (xfont_open):
3858 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3859
294fa707
SM
38602009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3861
3862 * fileio.c (Fwrite_region): !NILP -> CONSP.
3863
b5bfebec
AS
38642009-02-10 Andreas Schwab <schwab@suse.de>
3865
3866 * process.c (send_process): Properly relocate pointer into data
adab88bd 3867 when using encoded data. (Bug#2272)
b5bfebec 3868
cb84a2be
KH
38692009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3870
3871 * coding.c (detect_coding_charset): Fix previous change.
3872
89e09428
JR
38732009-02-08 Jason Rumney <jasonr@gnu.org>
3874
3875 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3876 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3877
4470a277
AS
38782009-02-07 Andreas Schwab <schwab@suse.de>
3879
3880 * unexelf.c (unexec): Fix error message.
3881
3175b12a
AR
38822009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3883
3884 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3885 when modal window is active. (Bug #2152)
3175b12a
AR
3886 (applicationShouldTerminate:): Remove now-unneeded while loop
3887 around NSRunAlertPanel.
3888
3889 * nsmenu.m (popupSession): New file-global variable.
3890 (pop_down_menu): End the popupSession before closing dialog.
3891 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3892 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3893 don't query NSApp for events (just sleep instead).
3894
8434d0b8
EZ
38952009-02-07 Eli Zaretskii <eliz@gnu.org>
3896
51d861de
SM
3897 * coding.c (syms_of_coding) <translation-table-for-input>:
3898 Modify doc string to discourage use for character code unification.
8434d0b8 3899
aa82edfd
CY
39002009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3901
3902 * atimer.c (run_timers): Update pending_atimers.
3903
2d283c7c
CY
39042009-02-06 Chong Yidong <cyd@stupidchicken.com>
3905
eb306cab
CY
3906 * image.c (svg_load_image): Fix last change.
3907
2d283c7c
CY
3908 * xfns.c (Fx_create_frame): Signal an error if no font is
3909 found (Bug#2147).
3910
4d8e170e
JB
39112009-02-05 Juanma Barranquero <lekktu@gmail.com>
3912
3913 * character.c (syms_of_character) <script-representative-chars>:
3914 Fix typo in docstring.
3915
c96169a0
AR
39162009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3917
3918 * nsmenu.m (pop_down_menu): New function.
3919 (ns_popup_dialog): Call it on unwind.
3920 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3921 call timer_check() (Bug#2154).
3922 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3923 handling_signal is set.
3924 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3925
31fd7c5c 3926 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
3927
3928 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3929
3930 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3931
51d861de
SM
3932 * keyboard.c (poll_for_input_1, handle_async_input):
3933 Set handling_signal under HAVE_NS.
c96169a0 3934
aacd8ba1
GM
39352009-02-04 Glenn Morris <rgm@gnu.org>
3936
3937 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3938
4cb75c4b
KH
39392009-02-04 Kenichi Handa <handa@m17n.org>
3940
3941 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3942
3943 * charset.c (Fchar_charset): New optional arg restriction.
3944
3945 * coding.h (coding_system_charset_list): Extern it.
3946
3947 * coding.c (coding_system_charset_list): New function.
3948
3949 * composite.c: Include coding.h and termhooks.h.
3950 (composition_gstring_p): Fix for the terminal case.
3951 (composition_gstring_width): Likewise.
3952 (fill_gstring_body): Likewise.
3953 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3954 the frame.
3955 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3956 is within a composition.
867d4bb3 3957 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
3958
3959 * term.c (encode_terminal_code): Fix handling of composition.
3960 (produce_composite_glyph): For static composition, get pixel_width
3961 from struct composition.
3962
826ba17e
AS
39632009-02-02 Andreas Schwab <schwab@suse.de>
3964
3965 * unexelf.c (unexec): Handle unaligned bss offset.
3966
8ad093db
AR
39672009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3968
3969 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3970 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 3971
8ad093db
AR
3972 * keyboard.c (handle_interrupt): Don't call
3973 quit_throw_to_read_char() under NS.
d0a76a6e 3974
8ad093db
AR
3975 * blockinput.h: Remove NS-specific code.
3976
4d18a7a2
DN
39772009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3978
db878925
DN
3979 * dispnew.c (window_change_signal): Don't try to get the size of a
3980 suspended tty frame.
3981 * term.c (Fresume_tty): Resize if the size has changed while the
3982 tty was suspended.
3983
4d18a7a2
DN
3984 * alloc.c (mark_stack): Properly conditionalize previous change.
3985
8984df7c
JB
39862009-01-30 Juanma Barranquero <lekktu@gmail.com>
3987
3988 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3989 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3990 Remove; this code is not used on Windows.
3991
75f4f1ac
EZ
39922009-01-30 Eli Zaretskii <eliz@gnu.org>
3993
3994 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
3995 EOLs that also has stray ^M characters.
3996
07a1e794
JB
39972009-01-30 Juanma Barranquero <lekktu@gmail.com>
3998
3999 * atimer.c (run_timers, alarm_signal_handler):
4000 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
4001 * w32inevt.c (w32_console_read_socket):
4002 * w32term.c (w32_read_socket):
4003 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
4004
a8b11cc9
CY
40052009-01-30 Chong Yidong <cyd@stupidchicken.com>
4006
4007 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
4008 Initialize it as a relative filename pattern.
4009 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
4010 (Fcall_process_region): Simplify temp file creation using
4011 temporary-file-directory.
4012
c279587b
EZ
40132009-01-29 Eli Zaretskii <eliz@gnu.org>
4014
4015 * msdos.c: Rename pending_signals to msdos_pending_signals.
4016 (sig_suspender, sigprocmask): Adjust.
4017
a8fe3242
CY
40182009-01-29 Chong Yidong <cyd@stupidchicken.com>
4019
4020 * keyboard.c (pending_signals): New var.
4021 (poll_for_input, input_available_signal, init_keyboard): Set it.
4022 (process_pending_signals): New function.
4023
4024 * lisp.h (QUIT): Check pending_signals instead of
4025 interrupt_input_pending. Use process_pending_signals.
4026
51d861de 4027 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 4028
51d861de 4029 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
4030
4031 * sysdep.c (emacs_write): Use process_pending_signals.
4032
4033 * xterm.c (XTread_socket): Update pending_signals.
4034
4035 * w32term.c (w32_read_socket): Update pending_signals.
4036
4037 * w32inevt.c (w32_console_read_socket): Update pending_signals.
4038
6570a1c4
KH
40392009-01-29 Kenichi Handa <handa@m17n.org>
4040
4041 * xftfont.c (xftfont_has_char): New function.
4042 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
4043
d72a4afa
AR
40442009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4045
4046 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
4047 under GNUstep.
4048 (ns_query_color): New declaration.
4049
4050 * nsterm.m (ns_confirm_quit): New variable.
4051 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
4052 (EmacsApp-applicationShouldTerminate:): Use it.
4053 (EmacsPrefsController): Let user set it.
4054 (ns_query_color): New function.
4055 (ns_defined_color): Use it.
4056 (ns_initialize): Drop.
4057 (ns_term_init): Add two lines from ns_initialize(), and set
4058 input_interrupt_mode to nil.
4059
4060 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 4061 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 4062
9fe78804
KH
40632009-01-28 Kenichi Handa <handa@m17n.org>
4064
4065 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
4066 (fontset_get_font_group): Remember that no font-group is specified
4067 for C.
9fe78804 4068
fa57de36
CY
40692009-01-27 Chong Yidong <cyd@stupidchicken.com>
4070
930600e9
CY
4071 * fns.c (concat): Check for string overflow (bug#1787).
4072
fa57de36
CY
4073 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
4074 Quadruple undo limits (bug#1501).
4075
7179ce7b
KH
40762009-01-27 Kenichi Handa <handa@m17n.org>
4077
4078 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
4079 directly use GT_Get_Char_index.
4080
4081 * xftfont.c (struct xftfont_info): New member `index'.
4082
4083 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 4084 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 4085
5be8fcc0
CY
40862009-01-26 Kenichi Handa <handa@m17n.org>
4087
4088 * fontset.c (fontset_find_font): Fix handling of non-cons return
4089 value of fontset_get_font_group.
4090 (fontset_font): Revert last change.
4091
19ae3e61
JR
40922009-01-26 Jason Rumney <jasonr@gnu.org>
4093
4094 * w32font.c (w32font_list_internal): Return quickly if registry is
4095 unknown. Simplify final return.
4096 (add_font_entity_to_list): Break complex logic down into more
4097 manageable chunks. Move unknown registry check to
4098 w32font_list_internal.
4099
8612b71a
AR
41002009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
4101
4102 Changes to remove Feval calls from GUI under NS.
4103
d8038940
JB
4104 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
4105 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
4106 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
4107
4108 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
4109 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
4110 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
4111 instead of NON_ASCII_KEYSTROKE_EVENT.
4112 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
4113 (EmacsApp-applicationShouldTerminate:): Query user.
4114 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
4115 instead of Feval.
4116
4117 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
4118
4119 * keyboard.c (kbd_buffer_get_event): Check for it.
4120 (keys_of_keyboard): Define lispy keys for
4121 ns-put/unput-working-text.
4122
4123 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
4124 versions.
4125 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
4126
6288ae55
CY
41272009-01-25 Chong Yidong <cyd@stupidchicken.com>
4128
4129 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 4130 setting current_buffer directly. (Bug#2044)
6288ae55 4131
289e7f8f
CY
41322009-01-24 Chong Yidong <cyd@stupidchicken.com>
4133
5ce87308 4134 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 4135 any work. (Bug#1952, bug#1990).
5ce87308 4136
64cc3cf6 4137 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 4138
b3243e6f
AR
41392009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4140
4141 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
4142 (ns_no_defaults): New declaration.
4143 (main): Use it.
e0d2e69a 4144
d900b2af 4145 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 4146
d900b2af 4147 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 4148
d900b2af
AR
4149 * nsterm.m (ns_no_defaults): New variable.
4150 (ns_initialize): Don't read defaults when ns_no_defaults.
4151 (EmacsView-readSelectionFromPasteboard:)
4152 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 4153 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
4154 (ns_dumpglyphs_stretch): New function.
4155 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 4156 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 4157
e0d2e69a
AR
4158 * nsimage.m (setPixmapData:): Set to ignore image DPI.
4159
3ac71f5d
CY
41602009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
4161
4162 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
4163 call for Sparc64.
4164
3fe53a83
AR
41652009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4166
4167 * nsfns.m:
4168 * nsgui.h:
4169 * nsmenu.m:
4170 * nsselect.m:
4171 * nsterm.h:
4172 * nsterm.m: Remove '23' comments that indicated code added during
4173 update from emacs-20 -> emacs-23.
4174
10f87c6f 41752009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
4176
4177 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 4178 ns_alternate_modifier. (Bug#1217)
a3b53a85 4179
c7cef62d
AR
4180 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
4181 Display all shortcuts, including those w/o super modifier.
4182
575fb8bd
AR
4183 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
4184
918b848b
CY
41852009-01-22 Chong Yidong <cyd@stupidchicken.com>
4186
4187 * fileio.c (Vwrite_region_post_annotation_function)
4188 (Vwrite_region_annotation_buffers): New vars.
4189 (build_annotations_unwind): Just reset
4190 Vwrite_region_annotation_buffers.
4191 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
4192 Call write-region-post-annotation-function.
4193 (build_annotations): Add to Vwrite_region_annotation_buffers if
4194 buffer changes.
4195
a39e2539
AR
41962009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4197
4198 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
4199 Tiger.
51d861de
SM
4200 * nsfns.m (ns_do_applescript):
4201 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 4202
35ed44db
AR
42032009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4204
4205 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
4206
cbe0b5bf
AR
42072009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4208
4209 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 4210
6049d3a0
AR
4211 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
4212
4213 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
4214 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
4215 handle Ctrl-tab. (Bug#1841)
4216 (ns_get_color): Use unsigned long long for scanned hex string value.
4217 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 4218 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 4219 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 4220 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 4221 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 4222 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 4223 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 4224
d3810c21 4225 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 4226 DPI. (Bug#1316)
d3810c21
AR
4227 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
4228 values in onTiger section.
4c7077c3 4229
e301e634
CY
42302009-01-19 Chong Yidong <cyd@stupidchicken.com>
4231
7f82490b
CY
4232 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
4233 Check return value of font_spec_from_name.
64cc3cf6 4234 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
4235
4236 * font.c (font_spec_from_name): Return Qnil if font name could not
4237 be parsed.
4238 (font_parse_name): Treat a `?' character as part of an XLFD.
4239
e301e634
CY
4240 * fns.c (Fsubstring): Doc fix.
4241
1c0db158
KH
42422009-01-19 Kenichi Handa <handa@m17n.org>
4243
51d861de 4244 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
4245 (ftfont_list): Likewise.
4246
acf20901
JB
42472009-01-18 Juanma Barranquero <lekktu@gmail.com>
4248
fff4e459
JB
4249 * dbusbind.c (Fdbus_register_signal):
4250 * process.c (conv_sockaddr_to_lisp):
4251 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
4252
acf20901
JB
4253 * callproc.c (Fgetenv_internal): Doc fix.
4254
e7abcdfb
CY
42552009-01-16 Chong Yidong <cyd@stupidchicken.com>
4256
4257 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
4258 it is not even used.
4259
b60861e6
GM
42602009-01-16 Glenn Morris <rgm@gnu.org>
4261
4262 * font.c (Ffont_variation_glyphs): Silence compiler.
4263
8db52afe
JB
42642009-01-15 Juanma Barranquero <lekktu@gmail.com>
4265
4266 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
4267 Reported by David Robinow <drobinow@gmail.com>.
4268
4cddb209
KH
42692009-01-15 Kenichi Handa <handa@m17n.org>
4270
51d861de 4271 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 4272
f247f67b
JR
42732009-01-14 Jason Rumney <jasonr@gnu.org>
4274
4275 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 4276 never a fontset. (Bug#1562)
f247f67b 4277
f56a4450
KH
42782009-01-14 Kenichi Handa <handa@m17n.org>
4279
4280 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 4281 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 4282
4e99855e
CY
42832009-01-13 Chong Yidong <cyd@stupidchicken.com>
4284
4285 * font.c (font_clear_prop): If clearing the family, clear the font
4286 width index too.
4287
fff4e459 4288 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 4289
24f01470
JB
42902009-01-12 Juanma Barranquero <lekktu@gmail.com>
4291
4292 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
4293 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
4294 functions, use sizeof.
4295
a41240a3
MR
42962009-01-12 Martin Rudalics <rudalics@gmx.at>
4297
4298 * keyboard.c (read_char): Fix case where last_nonmenu_event
4299 returned a bad value with submenus. (Bug#447)
4300
944636b8
CY
43012009-01-12 Chong Yidong <cyd@stupidchicken.com>
4302
4303 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
4304 family, clear the font width index too.
4305
0dad7c6f
JR
43062009-01-11 Jason Rumney <jasonr@gnu.org>
4307
4308 * keyboard.c (cmd_error_internal): Exit when errors occur before
4309 frame creation and not in daemon mode. (Bug#1836)
4310
7c2363af
CY
43112009-01-10 Chong Yidong <cyd@stupidchicken.com>
4312
4313 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
4314 of a display vector, backtrack.
4315 (try_window_reusing_current_matrix): Check glyph type before
4316 referencing charpos member.
4317
97b1b294
EZ
43182009-01-10 Eli Zaretskii <eliz@gnu.org>
4319
4320 Fix Bug #876:
4321
4322 * coding.c (inhibit_null_byte_detection): New variable.
4323 (detect_coding, detect_coding_system): Don't pay attention to null
4324 bytes if inhibit_null_byte_detection is non-zero.
51d861de 4325 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
4326 <inhibit-iso-escape-detection>: Doc fix.
4327
4624b6e3
JR
43282009-01-09 Jason Rumney <jasonr@gnu.org>
4329
4330 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 4331 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
4332 Only report Unicode Plane 2 fonts as unicode-sip.
4333
323b840c
CY
43342009-01-09 Chong Yidong <cyd@stupidchicken.com>
4335
51d861de
SM
4336 * xfaces.c (Fx_font_family_list): Delete function.
4337 Move compatibility version to faces.el.
323b840c 4338
51d861de 4339 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 4340
eba7400d
MR
43412009-01-09 Martin Rudalics <rudalics@gmx.at>
4342
4343 * frame.c (x_set_frame_parameters): Remember requested value for
4344 fullscreen before it's reset by the parameter handler.
4345
4b09796d
GM
43462009-01-09 Glenn Morris <rgm@gnu.org>
4347
4348 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 4349 (last_command_event): ... and update all users.
4b09796d
GM
4350 (last_input_char): For clarity, rename to...
4351 (last_input_event): ... and update all users.
4352 (last-command-char, last-input-char): Move to subr.el as aliases.
4353 * cmds.c, commands.h: Update for last_command_char rename.
4354
14ccea62
CY
43552009-01-08 Chong Yidong <cyd@stupidchicken.com>
4356
51d861de 4357 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 4358
5f004711
JR
43592009-01-08 Jason Rumney <jasonr@gnu.org>
4360
4361 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
4362 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
4363 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
4364 Don't declare.
fff4e459 4365 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
4366 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
4367
b71f6f73
KH
43682009-01-07 Kenichi Handa <handa@m17n.org>
4369
50b06221 4370 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 4371 remember the coding system used for decoding in
50b06221
KH
4372 coding_system (Bug#1039).
4373
b71f6f73 4374 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 4375 breaking the loop. (Bug#870)
b71f6f73
KH
4376 (decode_coding_utf_16, decode_coding_emacs_mule)
4377 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4378 (decode_coding_charset): Likewise.
4379
56f668f7
MR
43802009-01-05 Martin Rudalics <rudalics@gmx.at>
4381
4382 * frame.c (x_set_frame_parameters): Make sure height (width) get
4383 applied when fullwidth (fullheight) is set. (Bug#1522)
4384
5da9424d
JB
43852009-01-04 Juanma Barranquero <lekktu@gmail.com>
4386
4387 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4388 (utc_base): Declare as ULONGLONG, not long double.
4389 (convert_time_raw): Delete.
4390 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4391 (initialize_utc_base): New function.
4392 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4393 (convert_from_time_t): Use initialize_utc_base; compute result with
4394 64-bit arithmetic.
4395 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4396
c4605e09
EZ
43972009-01-03 Eli Zaretskii <eliz@gnu.org>
4398
9acef61c 4399 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
4400 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4401 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4402 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4403 [!subprocesses]: Define.
4404 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4405 (Flist_system_processes, Fsystem_process_attributes)
4406 [!subprocesses]: Call list_system_processes and
4407 system_process_attributes instead of returning Qnil.
4408
9acef61c
JB
4409 * dosfns.c (system_process_attributes, list_system_processes):
4410 New functions.
c4605e09
EZ
4411
4412 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4413
4414 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4415 Don't use the default (no-op) implementation.
4416
8b7d0a16
JR
44172009-01-03 Jason Rumney <jasonr@gnu.org>
4418
a6d46bc1
JR
4419 * keyboard.c (parse_modifiers_uncached): Wheel events are
4420 clicks (bug#687).
4421
8b7d0a16
JR
4422 * w32term.c (x_query_colors, x_query_color): New functions.
4423
4424 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4425 (svg_load_image): Cast returned pointers from dynamically loaded
4426 functions. Eliminate W32 specific code.
4427
bfe11752
DN
44282009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4429
89e2438a
DN
4430 * nsfns.m (x_set_foreground_color, x_set_background_color)
4431 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4432 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4433 x_ prefix instead of ns_. Update references.
4434 (syms_of_nsfns): Add a FIXME comment.
4435
4436 * nsterm.m (x_set_cursor_type): New prototype.
4437 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4438
bfe11752
DN
4439 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4440 for Solaris instead of incorrectly providing Qutime and Qcutime.
4441
031da700
EZ
44422009-01-02 Eli Zaretskii <eliz@gnu.org>
4443
4444 * w32.c (process_times): Compute sum of utime and stime.
4445 (system_process_attributes): Add Qtime to the alist.
4446
4447 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4448 and add them to the alist.
4449
4450 * process.c (top level) <Qtime, Qctime>: New variables.
4451 (syms_of_process): staticpro them.
4452 (Fsystem_process_attributes): Add their documentation to the doc
4453 string.
4454
4455 * process.h: Declare Qtime and Qctime.
4456
df23bf08
JR
44572009-01-02 Jason Rumney <jasonr@gnu.org>
4458
9acef61c 4459 * image.c (Qgobject): New symbol.
df23bf08
JR
4460 (syms_of_image): Initialize it.
4461 (init_svg_functions): Load some functions from gobject library.
4462
5bbdf7aa
DN
44632009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4464
4465 * frame.c (make_terminal_frame): Remove redundant code and useless
4466 block.
4467
63136da6
AS
44682009-01-01 Andreas Schwab <schwab@suse.de>
4469
4470 * process.c (conv_sockaddr_to_lisp): Add workaround for
4471 getsockname bug on BSD.
4472
9ef69046
CY
44732009-01-01 Chong Yidong <cyd@stupidchicken.com>
4474
d6fafbe0
CY
4475 * xfns.c (x_create_tip_frame): Set border width of the X window.
4476
51d861de 4477 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 4478
f9c34147
JR
44792009-01-01 Jason Rumney <jasonr@gnu.org>
4480
9acef61c 4481 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
4482 Don't block input, as per earlier xterm.c changes.
4483
f5497e45
AR
44842008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4485
4486 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4487 (ns_appkit_version_int): New function.
4488 (x-server-version): Use ns_appkit_version_int and follow 21+
4489 convention of returning 3 integers.
4490
c19cab20
KH
44912008-12-30 Kenichi Handa <handa@m17n.org>
4492
4493 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4494 (CHAR_SURROGATE_PAIR_P): New macro.
4495
4496 * font.h (struct font_driver): New member get_variation_glyphs.
4497
9acef61c 4498 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
4499 (Ffont_variation_glyphs): New function.
4500 (syms_of_font): Defsubr it.
4501
4502 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4503 ftfont_variation_glyphs.
4504 (setup_otf_gstring): New function.
4505 (ftfont_drive_otf): Use it.
4506 (ftfont_shape_by_flt): Handle variation selector.
4507 (ftfont_variation_glyphs): New function.
4508
28cd591f
MR
45092008-12-30 Martin Rudalics <rudalics@gmx.at>
4510
4511 * frame.c (Vemacs_iconified): Remove.
4512
7f714baf
JR
45132008-12-30 Jason Rumney <jasonr@gnu.org>
4514
4515 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 4516 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 4517
9d2d22ab
CY
45182008-12-30 Chong Yidong <cyd@stupidchicken.com>
4519
4520 * indent.c (Fvertical_motion): Don't advance iterator if we have
4521 reseated to the desired position.
4522
4523 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4524 checking for pos match.
4525
545312c2
KH
45262008-12-30 Kenichi Handa <handa@m17n.org>
4527
1ede3eb6
KH
4528 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4529 just get the low 8-bit of the code.
4530
545312c2
KH
4531 * font.c (font_intern_prop): Validate str as multibyte.
4532
bd7bbf29
DN
45332008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4534
31e0750e
DN
4535 * dispextern.h (struct face): Move lface and hash from the middle
4536 of bitfields.
4537
bd7bbf29
DN
4538 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4539
b5672e7c
DN
45402008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4541
4542 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4543 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4544 instead of intervals.h.
4545
d704470f
AS
45462008-12-26 Andreas Schwab <schwab@suse.de>
4547
4548 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4549 cons.
4550
54b33868
MR
45512008-12-26 Martin Rudalics <rudalics@gmx.at>
4552
4553 * textprop.c (Qminibuffer_prompt): New variable.
4554 (syms_of_textprop): Initialize it.
4555 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4556 in minibuffer-prompt face. (Bug#1662)
4557
40b615d6
JR
45582008-12-25 Jason Rumney <jasonr@gnu.org>
4559
4560 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4561
baae5c2d
JR
45622008-12-24 Jason Rumney <jasonr@gnu.org>
4563
4564 * ralloc.c (r_alloc_reset_variable): New function.
4565
4566 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4567 record of what points where. (Bug#716)
baae5c2d 4568
a9051c88
DN
45692008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4570
4571 * minibuf.c (read_minibuf): Follow the non-interactive case when
4572 running as a daemon, before detaching.
4573
8b146312
AS
45742008-12-22 Andreas Schwab <schwab@suse.de>
4575
4576 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4577 * gtkutil.c (free_widget_value): Use xfree instead of free.
4578
56f2de10
MR
45792008-12-22 Martin Rudalics <rudalics@gmx.at>
4580
4581 * frame.c (delete_frame): New function derived from
4582 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4583 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4584 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4585 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4586 * frame.h: Extern delete_frame.
4587 * window.c (window_loop):
4588 * terminal.c (delete_terminal):
4589 * xterm.c (x_connection_closed):
4590 * xfns.c (Fx_hide_tip):
9acef61c 4591 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4592
1fc200d6
JR
45932008-12-21 Jason Rumney <jasonr@gnu.org>
4594
4595 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4596 when character maps to .notdef character.
4597
5e252df2
SM
45982008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4599
4600 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4601
99b72cc4
JR
46022008-12-20 Jason Rumney <jasonr@gnu.org>
4603
4604 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4605 a graphical frame on Windows. (Bug#1325)
99b72cc4 4606
acc49a52
JD
46072008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4608
4609 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4610
6ea15123
CY
46112008-12-20 Chong Yidong <cyd@stupidchicken.com>
4612
4613 * minibuf.c (Fread_buffer): Doc fix.
4614
b2dab6c8
JR
46152008-12-20 Jason Rumney <jasonr@gnu.org>
4616
54ea0c87 4617 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4618 server name in UNC paths. (Bug#719)
54ea0c87 4619
b2dab6c8 4620 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4621 charbuf. (Bug#1035)
b2dab6c8 4622
6d1921be
DN
46232008-12-19 Daniel Engeler <engeler@gmail.com>
4624
4625 * sysdep.c (serial_configure): Fix typo.
4626
53934c98
DN
46272008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4628
4629 * sysdep.c: Include alloca.h.
f4f634e8
DN
4630 (system_process_attributes): Add implementation for Solaris.
4631
4632 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4633
06e111a6
DN
46342008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4635
4636 Reorganize implementation of Flist_system_processes and
4637 Fsystem_process_attributes. No functional changes.
4638 * process.c: Don't #include pwd.h, grp.h and limits.h.
4639 (Flist_system_processes): Just call list_system_processes.
4640 (Fsystem_process_attributes): Just call system_process_attributes.
4641 (procfs_list_system_processes, time_from_jiffies)
4642 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4643 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4644
4645 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4646 (list_system_processes): Rename from
4647 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4648 Provide a do nothing implementation.
4649 (system_process_attributes): Rename from
4650 procfs_list_system_processes.
4651 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4652 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4653
4654 * w32.c (list_system_processes): Rename from
4655 w32_list_system_processes.
4656 (system_process_attributes): Rename from
4657 w32_system_process_attributes.
4658
4659 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4660
4661 * process.h (w32_list_system_processes)
4662 (w32_system_process_attributes): Remove.
362654a6
JB
4663 (list_system_processes, system_process_attributes):
4664 New prototypes.
06e111a6 4665
6a705b23
KH
46662008-12-19 Kenichi Handa <handa@m17n.org>
4667
4668 * xfont.c (xfont_decode_coding_xlfd): New function.
4669 (xfont_encode_coding_xlfd): New function.
4670 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4671 (xfont_list): Decode and encode XLFD by iso-8859-1.
4672 (xfont_match): Likewise.
4673 (xfont_list_family): Likewise.
4674 (xfont_open): Likewise.
4675
d66c0241 4676 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4677 names are utf-8.
4678
d66c0241 4679 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4680 names are utf-8.
4681
5a130941
JD
46822008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4683
4684 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4685 changed.
bfd20325
JD
4686 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4687 clicked on a detached tool bar button.
5a130941 4688
fd95644b
DN
46892008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4690
4691 * emacs.c (main): Print and error and exit when no data is read
4692 from the pipe.
4693
e6eee6ae
JR
46942008-12-17 Jason Rumney <jasonr@gnu.org>
4695
4696 * w32font.c (w32font_has_char): Always return -1.
4697
a35dd56b
KH
46982008-12-16 Kenichi Handa <handa@m17n.org>
4699
4700 * font.c (font_open_entity): Fix previous change.
4701
0e3635c2
DN
47022008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4703
4704 * process.c: Include <limits.h>.
4705
d4835507 47062008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4707
4708 * font.c (font_update_drivers): Fix mistake in reconstructing the
4709 driver list.
4710
47112008-12-16 Chong Yidong <cyd@stupidchicken.com>
4712
4713 * font.c (font_clear_cache): Fix format of font cache data.
4714
e2cbc401
CY
47152008-12-15 Chong Yidong <cyd@stupidchicken.com>
4716
4717 * xftfont.c (xftfont_open): Free Xft font pattern if
4718 XftFontOpenPattern fails.
4719
4720 * xterm.c (x_free_frame_resources): Remove extraneous call to
4721 free_frame_faces.
4722
b131d535
CY
47232008-12-13 Chong Yidong <cyd@stupidchicken.com>
4724
4725 * xterm.c (x_delete_display): Move xim_close_dpy call to
4726 x_delete_terminal.
4727 (x_delete_terminal): Call xim_close_dpy.
4728
e6df5336
JR
47292008-12-13 Jason Rumney <jasonr@gnu.org>
4730
4731 * w32font.c (intern_font_name): New function.
4732 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4733 (w32font_open_internal, Fx_select_font): Decode font name.
4734 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4735
4736 * w32font.h (intern_font_name): Declare new function.
4737
4738 * w32uniscribe.c (add_opentype_font_name_to_list):
4739 Use intern_font_name.
4740
20d68145
CY
47412008-12-13 Chong Yidong <cyd@stupidchicken.com>
4742
9f2554de
CY
4743 * frame.c (Fdelete_frame): Call free_font_driver_list.
4744
3d9bec9a
CY
4745 * font.c (free_font_driver_list): Implement missing function.
4746
20d68145
CY
4747 * w32term.c (w32_term_init): Don't initialize the image cache
4748 here; it will be done in init_frame_faces.
4749
4750 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4751 (struct x_display_info): Remove unused member null_pixel. New
4752 member xim_callback_data.
4753
4754 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4755 (xim_initialize): Save pointer to callback function data.
4756 (xim_close_dpy): Free callback function data. Call XCloseIM,
4757 reverting 2008-11-04 change by David Smith.
4758 (x_term_init): Don't initialize the image cache here; it will be
4759 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4760 (x_delete_display): Free x_dnd_atoms member.
4761
96f9306b
KH
47622008-12-13 Kenichi Handa <handa@m17n.org>
4763
6dec9044
JB
4764 * font.c (font_rescale_ratio): Moved from xfaces.c.
4765 Argument type changed. Handle a font-spec too.
96f9306b 4766 (font_score): Check Vface_font_rescale_alist.
6dec9044 4767 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4768
4769 * xfaces.c (font_rescale_ratio): Moved to font.c.
4770
8d5b4964
CY
47712008-12-13 Chong Yidong <cyd@stupidchicken.com>
4772
4773 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4774
e6df5336
JR
47752008-12-12 Jason Rumney <jasonr@gnu.org>
4776
4777 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4778 Vwindow_system_version to the real w32 major version.
4779
97c6058a
DN
47802008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4781
4782 * term.c (init_tty): Move setting the terminal name before the
4783 potential user: maybe_fatal.
4784
ec4e88d7
CY
47852008-12-11 Chong Yidong <cyd@stupidchicken.com>
4786
d4835507
JB
4787 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4788 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4789
b4233ec9
JR
47902008-12-11 Jason Rumney <jasonr@gnu.org>
4791
8ec71e23 4792 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4793 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4794
b4233ec9 4795 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4796 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4797
011a0143
JB
47982008-12-11 Juanma Barranquero <lekktu@gmail.com>
4799
4800 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4801
3c309f34
JB
48022008-12-11 Juanma Barranquero <lekktu@gmail.com>
4803
4804 * process.c (Fsystem_process_attributes, syms_of_process):
4805 Fix typo in name of Ssystem_process_attributes.
4806 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4807
fedc6ab5
JB
48082008-12-11 Juanma Barranquero <lekktu@gmail.com>
4809
4810 * syntax.c (Fmodify_syntax_entry): Doc fix.
4811
ba3de0e8
JB
48122008-12-10 Juanma Barranquero <lekktu@gmail.com>
4813
4814 * font.c (Ffont_spec): Move usage to end of docstring.
4815
174f1c74
JR
48162008-12-10 Jason Rumney <jasonr@gnu.org>
4817
4818 * w32font.c (Qcham): New symbol.
4819 (font_supported_scripts): Add cham, and comments for other new
4820 scripts in bitfield from OpenType spec.
9d32f818
JR
4821 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4822 contain characters beyond the bmp.
174f1c74 4823
7b649478
KH
48242008-12-10 Kenichi Handa <handa@m17n.org>
4825
4826 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4827 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4828 Qunicode_sip.
4829
2133e2d1
JB
48302008-12-10 Juanma Barranquero <lekktu@gmail.com>
4831
4832 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4833 (Fcoding_system_put): Use QCdefault_char.
4834 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4835
9af886ee
CY
48362008-12-09 Chong Yidong <cyd@stupidchicken.com>
4837
74d819eb
CY
4838 * xftfont.c (syms_of_xftfont): Fix typo.
4839
4ccfa1c0 4840 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4841
7c19d3ae
DN
48422008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4843
4844 * emacs.c (main): Close daemon_pipe on exec.
4845
567826bb
CY
48462008-12-08 Chong Yidong <cyd@stupidchicken.com>
4847
4848 * termchar.h (struct tty): New members termcap_term_buffer and
4849 termcap_strings_buffer.
4850
4851 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4852 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4853 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4854 All callers changed.
4855 (init_tty): Store termcap data and string buffers in new struct
4856 tty members termcap_term_buffer and termcap_strings_buffer.
4857 (delete_tty): Free them.
4ccfa1c0 4858 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4859
aa96c42b
SZ
48602008-12-07 Seiji Zenitani <zenitani@mac.com>
4861
4862 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4863 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4864
b7e1d896
CY
48652008-12-06 Chong Yidong <cyd@stupidchicken.com>
4866
4867 * coding.c (make_conversion_work_buffer): Disable buffer
4868 modification hooks in the work buffer.
4869
b5ec91a5
EZ
48702008-12-05 Eli Zaretskii <eliz@gnu.org>
4871
4872 * process.c (procfs_system_process_attributes): If `nread' has a
4873 negative value, assign zero to it.
4874
a5d2a52b
CY
48752008-12-05 Chong Yidong <cyd@stupidchicken.com>
4876
68c5540b 4877 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4878
7bf1bb21
KH
48792008-12-05 Kenichi Handa <handa@m17n.org>
4880
4881 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4882 second character is a combining character.
4883
2fdc7d00
EZ
48842008-12-05 Eli Zaretskii <eliz@gnu.org>
4885
4886 * process.c (procfs_system_process_attributes): Don't use cmd,
4887 cmdsize, and q without initializing them first.
4888
bf6bfba8
JR
48892008-12-04 Jason Rumney <jasonr@gnu.org>
4890
4891 * w32font.c (w32font_draw): Initialize orig_clip before getting
4892 it, and delete it when finished.
4893
a3b1a468
DN
48942008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4895
4896 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4897 case when running as a daemon before detaching.
4898
8b8be8eb
JB
48992008-12-03 Juanma Barranquero <lekktu@gmail.com>
4900
805f2638 4901 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 4902
b1bde622
KH
49032008-12-03 Kenichi Handa <handa@m17n.org>
4904
e500c47d
KH
4905 * font.c (font_at): Set `multibyte' at first.
4906
ca516334
KH
4907 * coding.c (decode_coding_charset): Check type of an element of
4908 vector VALIDS.
7bf1bb21 4909 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 4910
4ccfa1c0 4911 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
4912 (font_for_char): Likewise.
4913
1e5ecd37
CY
49142008-12-03 Chong Yidong <cyd@stupidchicken.com>
4915
d5b01609 4916 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
4917 (font_update_lface): Handle fonts with corrupted size specs,
4918 i.e. non-int and non-float.
d5b01609 4919
11e3a6e4 4920 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 4921 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 4922 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 4923
ab06788b
CY
4924 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4925
1e5ecd37 4926 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 4927 underline_minimum_offset for underline position.
1e5ecd37 4928
63c125ab
DN
49292008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4930
4931 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4932
4933 * character.c (c_string_width): Specify the type for LEN.
4934
3a8406e1
KH
49352008-12-03 Kenichi Handa <handa@m17n.org>
4936
4ccfa1c0 4937 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 4938 (decode_coding_utf_8): Likewise.
4ccfa1c0 4939 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 4940 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 4941
651df7d9
CY
49422008-12-02 Chong Yidong <cyd@stupidchicken.com>
4943
4944 * keyboard.c (make_lispy_position): Only use PT if the selected
4945 window is current.
4946
1f625c6c
AS
49472008-12-02 Andreas Schwab <schwab@suse.de>
4948
f7741ce9
AS
4949 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4950
1f625c6c
AS
4951 * doprnt.c (doprnt1): Fix size of charbuf.
4952
92bc2678
CY
49532008-12-02 Chong Yidong <cyd@stupidchicken.com>
4954
4955 * keyboard.c (timer_check): Revert last change.
4956
93b9e8cc
JB
49572008-12-02 Juanma Barranquero <lekktu@gmail.com>
4958
4959 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4960
fd7a37d5
JB
49612008-12-01 Juanma Barranquero <lekktu@gmail.com>
4962
4963 * makefile.w32-in: Update dependencies.
4964 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4965
c115043b
AS
49662008-12-01 Andreas Schwab <schwab@suse.de>
4967
4968 * font.c (register_font_driver): Use xmalloc.
4969 (font_put_frame_data): Likewise.
4970
f5668d2a
CY
49712008-12-01 Chong Yidong <cyd@stupidchicken.com>
4972
860d96be
CY
4973 * xfaces.c (realize_x_face): Make abort condition clearer.
4974
f5668d2a
CY
4975 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4976
379c17e7
CY
49772008-11-30 Chong Yidong <cyd@stupidchicken.com>
4978
4979 * keyboard.c (timer_check): After a timer runs, ensure that the
4980 selected window's buffer is current.
4981
35f36d65
JB
49822008-11-30 Juanma Barranquero <lekktu@gmail.com>
4983
f952c61c
JB
4984 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4985 It was accidentally restored by the Unicode merge.
4986
35f36d65
JB
4987 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4988
b23077df
JB
49892008-11-29 Juanma Barranquero <lekktu@gmail.com>
4990
4991 * w32proc.c: Include "coding.h".
4992 (Fw32_short_file_name): Encode filename passed to Windows API.
4993 (Fw32_long_file_name): Encode filename passed to Windows API and
4994 decode back the result. (Bug#1433)
4995
b8ebe9dd
KH
49962008-11-29 Kenichi Handa <handa@m17n.org>
4997
8cc53f96
KH
4998 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
4999 not before accessing it.
5000
b8ebe9dd
KH
5001 * charset.c (Fdefine_charset_internal): After calculating
5002 min_char, max_char, and fastmap, copy the charset structure again.
5003 (encode_char): Fix the previous change.
5004
59bc82c0
SZ
50052008-11-28 Seiji Zenitani <zenitani@mac.com>
5006
5007 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
5008
5009 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
5010
5011 * nsterm.m (x_set_frame_alpha): New function.
5012
32247e3d
EZ
50132008-11-27 Eli Zaretskii <eliz@gnu.org>
5014
5015 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
5016
b003e5ff
JB
50172008-11-27 Juanma Barranquero <lekktu@gmail.com>
5018
5019 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
5020 pointer to check_face_name.
5021
708550f5
KH
50222008-11-27 Kenichi Handa <handa@m17n.org>
5023
5024 * category.h (SET_CATEGORY_SET): Call set_category_set.
5025 (set_category_set): Extern it.
5026
5027 * category.c (hash_get_category_set): New function.
5028 (Fmodify_category_entry): Adjusted for the change of
5029 char_table_ref_and_range. Call hash_get_category_set to get a
5030 category set to store in the table.
5031
5032 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
5033 Funify_charset.
5034
2ae37cf0 5035 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
5036 (DECODE_CHAR): Check if the decoder vector is ready.
5037 (ENCODE_CHAR): Check if the encoder char-table is ready.
5038 (maybe_unify_char): Extern it.
5039
5040 * charset.c (Vchar_unified_charset_table): Delete it.
5041 (inhibit_load_charset_map): New variable.
5042 (temp_charset_work): New variable.
5043 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
5044 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
5045 New macros.
5046 (load_charset_map): Meaning of control_flag changed. If
5047 inhibit_load_charset_map is nonzero, setup a table in
5048 temp_charset_work.
5049 (load_charset): New argument control_flag.
5050 (map_charset_for_dump): New function.
5051 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
5052 map_charset_for_dump.
5053 (Fdefine_charset_internal): If the charset method is MAP, load
5054 mapping tables by calling load_charset.
5055 (Funify_charset): Don't load a mapping table but directly set
5056 Vchar_unify_table.
5057 (maybe_unify_char): New function.
5058 (decode_char): Don't handle the deleted method MAP_DEFERRED.
5059 Handle the case of inhibit_load_charset_map being nonzero.
5060 (encode_char): Don't handle the deleted method MAP_DEFERRED.
5061 Handle the case of inhibit_load_charset_map being nonzero.
5062 (Fclear_charset_maps): Just free temp_charset_work.
5063 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
5064 variable.
5065
5066 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
5067 change of char_table_ref_and_range.
5068 (char_table_ref_and_range): Change the meaning of argument FROM
5069 and TO. Now the caller must provide initial values for *FROM
5070 and *TO.
5071
5072 * fontset.c (fontset_add): Adjusted for the change of
5073 char_table_ref_and_range.
5074 (fontset_get_font_group): Likewise.
5075 (Ffontset_info): Likewise.
5076
5077 * keymap.c (describe_vector): Adjusted for the change of
5078 char_table_ref_and_range. For char-table, put boundary between
5079 non-ASCII and 8-bit characters.
5080
5081 * print.c (print_object): For bool-vector, delete unnecessary
5082 check of ASCII_BYTE_P.
5083
9196133b
JR
50842008-11-26 Jason Rumney <jasonr@gnu.org>
5085
5086 * w32font.c (w32font_open_internal): Don't include external
9acef61c 5087 leading in font height. (Bug#879)
9196133b 5088
9f688acf
GM
50892008-11-26 Glenn Morris <rgm@gnu.org>
5090
5091 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
5092 redefinition with ifdef. (Bug#1383)
5093
90d19aff
AR
50942008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5095
5096 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
5097
4ccfa1c0 50982008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
5099
5100 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
5101 New EmacsView methods.
5102 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
5103 Fixes bug #1048,1357,1414.
5104
51052008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5106
5107 Fix bug #1362.
5108 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
5109 is not an indexed color.
5110 * nsterm.m (free_indexed_color): Add argument checking.
5111 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
5112
e7d5ecb3
CY
51132008-11-24 Chong Yidong <cyd@stupidchicken.com>
5114
5115 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
5116 Document confirm-after-completion value for
5117 minibuffer-completion-confirm.
5118
c285743c
JR
51192008-11-24 Jason Rumney <jasonr@gnu.org>
5120
5121 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
5122 warning.
5123
b0857706
JR
51242008-11-23 Jason Rumney <jasonr@gnu.org>
5125
5126 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
5127 restored before returning.
5128
5129 * w32font.c (check_face_name): New function.
5130 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 5131 fonts. (Bug#642)
b0857706 5132
ee50ff07
MR
51332008-11-22 Martin Rudalics <rudalics@gmx.at>
5134
5135 * buffer.c (Fswitch_to_buffer): Reword and mention new option
5136 confirm-nonexistent-file-or-buffer in doc-string.
5137
b8ff72fa
SM
51382008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
5139
5140 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
5141 Fix copy/paste typo. Add checks.
5142
cee53ed4
KH
51432008-11-21 Kenichi Handa <handa@m17n.org>
5144
5145 * coding.c (detect_coding_iso_2022): Reject invalid composition
5146 sequence.
5147 (DECODE_COMPOSITION_START): If the current source is the last
5148 block, and the current composition doesn't end, regard this
5149 sequence as invalid.
5150 (decode_coding_iso_2022): Handle invalid composition sequence.
5151
f6ef1e65
MR
51522008-11-20 Martin Rudalics <rudalics@gmx.at>
5153
5154 * window.c (coordinates_in_window): Don't return
5155 ON_VERTICAL_BORDER for the rightmost position of a mode/header
5156 line when the window is not the rightmost one. (Bug#1372)
5157
e08b1705
MR
51582008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
5159
5160 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
5161
ad98e89f
EZ
51622008-11-15 Eli Zaretskii <eliz@gnu.org>
5163
5164 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
5165 and bright_bg if noninteractive is non-zero.
5166
fb098a4b
CY
51672008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5168
5169 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
5170 x_draw_glyph_string_background.
5171
5172 * w32term.c (x_draw_glyph_string): Likewise.
5173
ce952b6e
CY
51742008-11-15 Chong Yidong <cyd@stupidchicken.com>
5175
5176 * xterm.c (x_draw_glyph_string): Stop drawing the background of
5177 the next glyph string once past the overhang width.
5178
5179 * nsterm.m (ns_draw_glyph_string): Likewise.
5180
5181 * w32term.c (x_draw_glyph_string): Likewise.
5182
26ea7079
CY
51832008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
5184
5185 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
5186 double file close.
5187
1c33c906
MR
51882008-11-14 Martin Rudalics <rudalics@gmx.at>
5189
5190 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
5191 dedicated status of window before attempting to display another
5192 buffer in it.
5193
8fc29035
JB
51942008-11-14 Juanma Barranquero <lekktu@gmail.com>
5195
5196 * msdos.c (Fmsdos_long_file_names):
5197 (syms_of_msdos) <dos-unsupported-char-glyph>:
5198 * dosfns.c (Fint86): Fix typos in docstrings.
5199
55fb4286
EZ
52002008-11-14 Eli Zaretskii <eliz@gnu.org>
5201
5202 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
5203
3fda0315
KY
52042008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
5205
5206 * puresize.h (BASE_PURESIZE): Increase to 1260000.
5207
7e849c17
CY
52082008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
5209
5210 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
5211
5212 * frame.h: Negative alpha means "don't touch".
5213
5214 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
5215
5216 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
5217
b9fd67bd
DN
52182008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
5219
5220 * hftctl.c:
5221 * chpdef.h:
5222 * acldef.h: Remove files used only for systems no longer supported.
5223
5224 * Makefile.in: Fix .o alphabetical ordering.
5225 (hftctl.o): Remove dependency, file removed.
5226 (keymap.o, print.o): Depend on charset.h.
5227
d5998e03
KH
52282008-11-10 Kenichi Handa <handa@m17n.org>
5229
2ae37cf0 5230 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 5231
be70e183
CY
52322008-11-08 Chong Yidong <cyd@stupidchicken.com>
5233
5234 * dired.c (file_name_completion): If completion_ignore_case is
5235 enabled, ignore case when checking completion-regexp-list.
5236
7cf94eac
EZ
52372008-11-08 Eli Zaretskii <eliz@gnu.org>
5238
5239 * vm-limit.c (get_lim_data): Fix last change.
5240
ee107a89
KH
52412008-11-08 Kenichi Handa <handa@m17n.org>
5242
5243 * character.c (Fget_byte): New function.
5244 (syms_of_character): Defsubr Fget_byte.
5245
5fd15622
CY
52462008-11-07 Chong Yidong <cyd@stupidchicken.com>
5247
5248 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
5249 cursor position is valid after scrolling.
5250
13d62fad
JB
52512008-11-06 Juanma Barranquero <lekktu@gmail.com>
5252
5253 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
5254
a1dd2936
GM
52552008-11-06 Glenn Morris <rgm@gnu.org>
5256
5257 * xterm.c (handle_one_xevent): Don't let popup menus cause
5258 mouse-autoselect-window related window switching. (Bug#1261)
5259
860cd236
CY
52602008-11-04 David Smith <davidsmith@acm.org> (tiny change)
5261
5262 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
5263
653a3150
AS
52642008-11-04 Andreas Schwab <schwab@suse.de>
5265
5266 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
5267
870f5cac
CY
52682008-11-03 Chong Yidong <cyd@stupidchicken.com>
5269
5270 * xfns.c (Fx_wm_set_size_hint): New function.
5271
1e02f3cb
MR
52722008-11-03 Martin Rudalics <rudalics@gmx.at>
5273
5274 * textprop.c (Fprevious_single_char_property_change): Return 0
5275 when there's no change in a string. (Bug#1301)
5276
e630dfc6
MR
52772008-11-02 Martin Rudalics <rudalics@gmx.at>
5278
5279 * frame.c (do_switch_frame): New argument NORECORD passed to
5280 Fselect_window.
5281 (Fselect_frame): New argument NORECORD passed to
5282 do_switch_frame.
5283 (Fset_frame_selected_window): New argument NORECORD passed to
5284 Fselect_frame.
5285 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
5286 in call of do_switch_frame.
5287 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
5288 Handle NORECORD argument in call of Fselect_frame.
5289 * lisp.h (do_switch_frame, Fselect_frame)
5290 (Fset_frame_selected_window): Adjust declarations.
5291 * window.c (select_frame_norecord): New function.
5292 (run_window_configuration_change_hook): Use it and call
5293 Fselect_frame with NORECORD set.
5294 (Fselect_window): Pass NORECORD to Fselect_frame.
5295 (Fset_window_configuration): Handle NORECORD argument in call of
5296 do_switch_frame.
5297 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
5298 Fset_frame_selected_window.
5299 * keyboard.c (command_loop_1): Handle NORECORD in call of
5300 Fselect_frame (currently ifdefd).
5301
9020b223
GM
53022008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
5303
5304 * emacs.c (USAGE2): Untabify.
5305
793ffee8
SM
53062008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
5307
5308 * composite.c (fill_gstring_header): Fix copy/paste typo.
5309
ab6d1131
MR
53102008-10-31 Martin Rudalics <rudalics@gmx.at>
5311
5312 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
5313 (Fother_window): Rename argument and rewrite doc-string.
5314 (select_window_norecord): Fix return value. (Bug#1276)
5315
601a9cf1
JB
53162008-10-30 Juanma Barranquero <lekktu@gmail.com>
5317
5318 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
5319 new frames overriding foreground for tooltips. Based on similar patch
5320 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
5321
813b0652
CY
53222008-10-29 Chong Yidong <cyd@stupidchicken.com>
5323
5324 * emacs.c (Fdaemon_initialized): Initialize nfd.
5325
4414f58f
MR
53262008-10-29 Martin Rudalics <rudalics@gmx.at>
5327
5328 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
5329 (Fwindow_text_height): Clarify doc-strings.
5330 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
5331 doc-string of window-scroll-functions.
5332
ecdcaa09
RS
53332008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
5334
5335 * category.c (syms_of_category): Fix typo in docstring.
5336
23fe745a
JB
53372008-10-28 Juanma Barranquero <lekktu@gmail.com>
5338
5339 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
5340 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
5341 Fix typos in docstrings.
5342
ff808935
DN
53432008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
5344
5345 * emacs.c (daemon_pipe): Make non-static.
5346 (IS_DAEMON): Move definition ...
5347 * lisp.h (IS_DAEMON): ... here.
5348 (daemon_pipe): Declare.
5349 (is_daemon): Remove.
5350 * dispnew.c (init_display): Use IS_DAEMON.
5351
fc012771
SM
53522008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5353
5354 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
5355 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
5356
5357 * emacs.c (is_daemon): Remove.
5358 (main): Don't set is_daemon.
5359 (IS_DAEMON): New macro.
5360 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 5361 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
5362 parent exits.
5363 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
5364
d8bdbe6f
CY
53652008-10-27 Chong Yidong <cyd@stupidchicken.com>
5366
d1a072bf
CY
5367 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
5368 over-sized glyph, draw it with the default glyph width.
5369
e2e325aa
CY
5370 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5371 glyph, draw it with the default glyph width.
5372
5373 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5374 glyph, draw it with the default glyph width.
5375
d8bdbe6f
CY
5376 * xdisp.c (try_scrolling): When computing the distance from the
5377 scroll margin to PT, try moving some distance past the window
5378 bottom before giving up.
5379
7bfac547
MR
53802008-10-27 Martin Rudalics <rudalics@gmx.at>
5381
5382 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
5383 (Fset_window_buffer): Explain in doc-string that a window can be
5384 "strongly" dedicated to its buffer.
5385
4ff029f6
DN
53862008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
5387
5388 * emacs.c (daemon_name): New variable.
5389 (main): Deal with --daemon=SERVER_NAME.
5390 (Fdaemonp): Return a name if one was passed to --daemon.
5391
5790ef40
DN
53922008-10-26 Romain Francoise <romain@orebokech.com>
5393
f9bd0df9 5394 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
5395 (main): Create a pipe before forking, make the parent exit only after
5396 the child has closed its end of the pipe. Move closing the
5397 descriptors ...
5398 (Fdaemon_initialized): ... here. New function.
5399
f5385255
SM
54002008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5401
4d632321
SM
5402 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5403 the previous unoptimized table.
5404
f5385255
SM
5405 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5406 the distinction between non-nil and non-t value of `dedicated'.
5407
6c56a0f3
CY
54082008-10-25 Chong Yidong <cyd@stupidchicken.com>
5409
5410 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 5411 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 5412
fec89261
MR
54132008-10-25 Martin Rudalics <rudalics@gmx.at>
5414
5415 * window.c (Fget_buffer_window, Fdelete_windows_on)
5416 (Freplace_buffer_in_windows): Make buffer argument optional and
5417 rename to buffer_or_name.
5418
34fcddd0
CY
54192008-10-24 Chong Yidong <cyd@stupidchicken.com>
5420
f5385255
SM
5421 * xdisp.c (handle_single_display_spec, handle_display_prop):
5422 Undo 2005-05-16 change.
34fcddd0
CY
5423 (handle_stop): Pop iterator if it's loaded with an empty string.
5424 (get_overlay_strings_1): Don't save iterator if it's loaded with
5425 an empty string (bug#1201).
5426
064766f2
KH
54272008-10-24 Kenichi Handa <handa@m17n.org>
5428
5429 * ftfont.c (ftfont_otf_features): Fix previous change.
5430 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5431 calling ftfont_otf_features.
5432
f9bd0df9 54332008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
5434
5435 * font.c (font_match_p): Fix for the case that a vector of
5436 characters is in script-representative-chars.
5437
1dae9197
MA
54382008-10-24 Michael Albinus <michael.albinus@gmx.de>
5439
5440 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 5441 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
5442 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5443 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 5444 macro. (Bug#1186)
1dae9197 5445
f9bd0df9 54462008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
5447
5448 * s/sol2-10.h: New file.
5449
878a4584
JB
54502008-10-23 Juanma Barranquero <lekktu@gmail.com>
5451
5452 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5453 poor beast has survived 9+ years and the jump from xterm.c!).
5454
cd265ca6
MR
54552008-10-23 Martin Rudalics <rudalics@gmx.at>
5456
5457 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5458 Reword doc-string.
f5385255 5459 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 5460
472a4dc9
JB
54612008-10-23 Juanma Barranquero <lekktu@gmail.com>
5462
5463 * character.c (syms_of_character) <script-representative-chars>:
5464 <unicode-category-table>: Doc fixes.
5465
159bd5a2
NF
54662008-10-23 Noah Friedman <friedman@splode.com>
5467
5468 * coding.c (make_conversion_work_buffer): Check that
5469 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5470 Fget_buffer_create.
5471
49f9c344
KH
54722008-10-23 Kenichi Handa <handa@m17n.org>
5473
5474 * font.c (font_add_log): Check the values of extra properties.
5475
12bb3111
MR
54762008-10-22 Martin Rudalics <rudalics@gmx.at>
5477
5478 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5479 Reword doc-string.
5480 (Fset_window_parameter): Use NILP.
5481 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 5482 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 5483
bbeb4e99
JB
54842008-10-22 Juanma Barranquero <lekktu@gmail.com>
5485
5486 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5487
54882008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
5489
5490 * nsfns.m (ns_appkit_version): New function.
5491 (x-server-version): Use it.
5492 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5493 (x-server-vendor): Don't check_ns().
5494
5495 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5496
a9b555d3
JB
54972008-10-22 Juanma Barranquero <lekktu@gmail.com>
5498
5499 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5500 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5501
4626499f
KH
55022008-10-22 Kenichi Handa <handa@m17n.org>
5503
e3681952
KH
5504 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5505 scripts.
5506
4626499f
KH
5507 * category.c (word_boundary_p): Check scripts instead of charset.
5508 Handle nil value in word-separating-categories and
5509 word-combining-categories.
5510 (syms_of_category): Fix docstrings of word-separating-categories
5511 and word-combining-categories.
5512
1560f91a
EZ
55132008-10-21 Eli Zaretskii <eliz@gnu.org>
5514
5515 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5516 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5517
f4668441
MR
55182008-10-21 Martin Rudalics <rudalics@gmx.at>
5519
5520 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5521 Rename arg "buffer" to "buffer_or_name".
5522 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5523 it optional.
5524 (no_switch_window): Remove since the return value is not used.
a9b555d3 5525 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
5526 Consider window as dedicated when Fwindow_dedicated_p returns a
5527 non-nil value.
5528 * lisp.h: Remove prototype for no_switch_window.
5529
fd75ddb2
JD
55302008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5531
5532 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 5533 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 5534
07295713
KH
55352008-10-21 Kenichi Handa <handa@m17n.org>
5536
5537 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5538 check Vlatin_extra_code_table.
5539
712adc82
EZ
55402008-10-20 Eli Zaretskii <eliz@gnu.org>
5541
5542 * fileio.c (Fset_file_modes): Doc fix.
5543
f549eb0b
MA
55442008-10-19 Michael Albinus <michael.albinus@gmx.de>
5545
5546 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5547 in arrays.
5548
aac0c6e3
MR
55492008-10-19 Martin Rudalics <rudalics@gmx.at>
5550
5551 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5552 Mention kill-buffer in doc-string.
5553 (Fset_window_buffer): Reinsert tem check removed in last commit.
5554 (Fenlarge_window, Fshrink_window): Have argument names and
5555 doc-string follow Elisp manual more closely.
5556
55572008-10-18 Eli Zaretskii <eliz@gnu.org>
5558
5559 * fileio.c (Fset_file_modes): Doc fix.
5560
55612008-10-18 Martin Rudalics <rudalics@gmx.at>
5562
5563 * window.c (Fwindow_width, Fset_window_start)
5564 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5565 (Fdelete_windows_on, Freplace_buffer_in_windows):
5566 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5567 (Fwindow_dedicated_p): Make window argument optional.
5568 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5569 (Fset_window_buffer): Respect any non-nil dedicated value for
5570 window. Rename "buffer" argument to "buffer_or_name".
5571
55722008-10-18 Ulrich Mueller <ulm@gentoo.org>
5573
5574 * m/sh3.h: New file, machine description for SuperH.
5575
55762008-10-17 Martin Rudalics <rudalics@gmx.at>
5577
5578 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5579
55802008-10-17 Kenichi Handa <handa@m17n.org>
5581
5582 * ftfont.c (ftfont_otf_features): Fix indexing
5583 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5584
55852008-10-16 Magnus Henoch <mange@freemail.hu>
5586
5587 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5588 (Fdbus_call_method_asynchronously): Ditto.
5589 This change makes C-h f display the argument list.
5590
55912008-10-16 Chong Yidong <cyd@stupidchicken.com>
5592
5593 * fileio.c (Fexpand_file_name): Doc fix.
5594
5595 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5596 of :foreground and :background equivalent to unspecified (20.x
5597 compatibility).
5598
55992008-10-15 Eli Zaretskii <eliz@gnu.org>
5600
5601 * buffer.c (syms_of_buffer): Doc fix.
5602
56032008-10-14 Kenichi Handa <handa@m17n.org>
5604
5605 * font.c (font_clear_prop): When clearing font width, clear the
5606 average width field too.
5607
56082008-10-12 Andreas Schwab <schwab@suse.de>
5609
5610 * ftfont.c (ftfont_shape_by_flt): Make static.
5611 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5612
5613 * font.c: Don't include <m17n-flt.h>.
5614
56152008-10-10 Eli Zaretskii <eliz@gnu.org>
5616
5617 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5618
56192008-10-09 Eli Zaretskii <eliz@gnu.org>
5620
5621 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5622 away code.
5623
56242008-10-09 Chong Yidong <cyd@stupidchicken.com>
5625
5626 * dispnew.c (update_text_area): Avoid looping due to large glyph
5627 overhangs (bug#1070).
5628
56292008-10-09 Kenichi Handa <handa@m17n.org>
5630
5631 * fontset.c (face_for_char): If face->fontset is negative, just
5632 return ascii_face.
5633
f5385255
SM
5634 * font.c (font_delete_unmatched): Fix previous change.
5635 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5636
56372008-10-09 Martin Rudalics <rudalics@gmx.at>
5638
5639 * frame.c (Fraise_frame): On text-only terminals select frame in
5640 order to make it visible. (Bug#1061)
5641
56422008-10-08 Chong Yidong <cyd@stupidchicken.com>
5643
5644 * fontset.c (fontset_find_font): Check frame validity.
5645
56462008-10-07 Chong Yidong <cyd@stupidchicken.com>
5647
a9b555d3 5648 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5649 (xg_display_close): Allow Emacs to close all displays (bug#985).
5650
56512008-10-06 Andreas Schwab <schwab@suse.de>
5652
f5385255 5653 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5654
56552008-10-06 Chong Yidong <cyd@stupidchicken.com>
5656
f5385255 5657 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5658
a9b555d3 5659 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5660
5661 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5662 during initialization.
5663
56642008-10-04 Eli Zaretskii <eliz@gnu.org>
5665
5666 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5667 whole thing on MSDOS frames as well as on a TTY.
5668
5669 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5670 well as for TTY.
5671 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5672 well as on a TTY.
5673
5674 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5675 as well as for TTY.
5676
5677 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5678
5679 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5680 MSDOS frames as well.
5681
56822008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5683
5684 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5685 correct arguments.
b71ac3dd 5686 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5687
56882008-10-03 Glenn Morris <rgm@gnu.org>
5689
5690 * emacs.c (USAGE1): Add --daemon.
5691
56922008-10-02 Eli Zaretskii <eliz@gnu.org>
5693
5694 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5695 100, so it's in percents as advertised.
5696
56972008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5698
5699 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5700 (ns_output.current_cursor, ns_output.desired_cursor)
5701 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5702 (FRAME_NEW_CURSOR_COLOR): Remove.
5703
5704 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5705 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5706 enumeration (HOLLOW_BOX_CURSOR, etc.).
5707
5708 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5709 (draw_window_cursor): Simplify code.
f5385255
SM
5710 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5711 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5712 updates manually.
a9b555d3
JB
5713 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5714 Use core Emacs cursor types.
aac0c6e3 5715
b8ff72fa 5716 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5717
57182008-10-02 Martin Rudalics <rudalics@gmx.at>
5719
5720 * process.c (Faccept_process_output): Fix doc-string.
5721
57222008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5723
5724 * gmalloc.c (__sbrk): Also define for uClibc.
5725
5726 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5727 for uClibc.
5728
57292008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5730
5731 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5732 styles.
5733 (nsfont_open): Reenable the cache.
5734
57352008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5736
5737 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5738 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5739
57402008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5741
5742 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5743 a suspended terminal.
5744
57452008-09-30 Michael Albinus <michael.albinus@gmx.de>
5746
5747 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5748
57492008-09-30 Eli Zaretskii <eliz@gnu.org>
5750
5751 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5752
57532008-09-30 Chong Yidong <cyd@stupidchicken.com>
5754
5755 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5756 in a continued line coincides with a line beginning.
5757
57582008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5759
5760 * nsfont.m (nsfont_trait_distance): Fix bug.
5761 (nsfont_list): Return a list rather than a vector (syncs with Handa
5762 changes of 2008-05-14).
5763 (nsfont_open): Improve logging.
5764
57652008-09-29 Andreas Schwab <schwab@suse.de>
5766
5767 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5768
57692008-09-28 Martin Rudalics <rudalics@gmx.at>
5770
5771 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5772 name as char-resolve-modifiers.
5773 Reported by: Markus Triska <markus.triska@gmx.at>
5774
57752008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5776
5777 * dispnew.c (init_display): Return earlier when running as a daemon.
5778
57792008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5780
5781 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5782
57832008-09-27 Eli Zaretskii <eliz@gnu.org>
5784
5785 * composite.c (Fcomposition_get_gstring)
5786 (Fcompose_region_internal, Fcompose_string_internal)
5787 (Ffind_composition_internal): Doc fix.
5788 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5789 (syms_of_composite) <auto-composition-function>: Doc fix.
5790 (syms_of_composite) <composition-function-table>: Doc fix.
5791
57922008-09-25 Chong Yidong <cyd@stupidchicken.com>
5793
5794 * search.c (wordify): New argument for lax word-ends.
5795 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5796
57972008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5798
5799 * lisp.h (is_daemon): Declare.
5800 * dispnew.c (init_display): Do not try to initialize the terminal
5801 when running as a daemon.
5802
58032008-09-22 Chong Yidong <cyd@stupidchicken.com>
5804
5805 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5806 x_display_pixel_height.
5807
58082008-09-22 Martin Rudalics <rudalics@gmx.at>
5809
5810 * undo.c (record_point): Don't call Fundo_boundary for first
5811 change. (Bug#731)
5812
58132008-09-22 Juanma Barranquero <lekktu@gmail.com>
5814
5815 * emacs.c (Fdaemonp): Doc fix.
5816
58172008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5818
5819 * emacs.c (main): Place #ifdef in the proper place.
5820
58212008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5822
5823 * emacs.c (standard_args): Add --daemon.
5824 (main): Disconnect from the terminal when --daemon is passed.
5825 (is_daemon): New variable.
5826 (Fdaemonp): New function.
5827 (syms_of_emacs): Defsubr it.
5828
58292008-09-20 Chong Yidong <cyd@stupidchicken.com>
5830
5831 * xdisp.c (get_next_display_element): Handle string display
5832 correctly when checking for the end of a box run.
5833
58342008-09-20 Glenn Morris <rgm@gnu.org>
5835
5836 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5837 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5838 (Frename_file): Avoid copying to trash if a rename involves
5839 a delete. (Bug#964).
5840
58412008-09-20 Eli Zaretskii <eliz@gnu.org>
5842
5843 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5844 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5845 frames as well as termcap frames.
5846 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5847 get_named_tty.
5848
58492008-09-19 Eli Zaretskii <eliz@gnu.org>
5850
5851 * process.c (procfs_system_process_attributes): Fix cmdline in
5852 case /proc/PID/cmdline is empty.
5853
5854 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5855 x_display_pixel_height.
5856
58572008-09-19 Juanma Barranquero <lekktu@gmail.com>
5858
5859 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5860
5861 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5862 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5863
58642008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5865
5866 * dispextern.h (struct it): Move line_wrap away from the middle of
5867 bitfields. Move voffset in struct iterator_stack_entry after the
5868 bitfields. Move tab_width near after another short.
5869
58702008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5871
5872 * frame.h (struct frame): Move alpha from the middle of bitfields.
5873
5874 * window.h (struct window): Move frozen_window_start_p after the
5875 rest of the bitfields to reduce padding.
5876
58772008-09-18 Chong Yidong <cyd@stupidchicken.com>
5878
5879 * xterm.h (x_display_info): Remove `height' and `width' members.
5880
5881 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5882
5883 * w32term.h (w32_display_info): Remove `height', `width',
5884 `height_in', and `width_in' members.
5885
b8ff72fa
SM
5886 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5887 New functions.
aac0c6e3
MR
5888 (x_calc_absolute_position): Use them.
5889 (x_term_init): Omit removed `height' and `width' members.
5890
b8ff72fa
SM
5891 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5892 New functions.
aac0c6e3
MR
5893 (w32_read_socket, x_calc_absolute_position): Use them.
5894 (w32_initialize_display_info, w32_term_init): Omit removed members
5895 of w32_display_info.
5896
b8ff72fa
SM
5897 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5898 New functions.
5899 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 5900
b8ff72fa
SM
5901 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5902 New functions.
aac0c6e3
MR
5903 (x_calc_absolute_position): Use them.
5904 (x_term_init): Omit removed `height' and `width' members.
5905
5906 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
5907 (compute_tip_xy):
5908 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
5909 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5910 x_display_pixel_width.
5911
59122008-09-18 Kenichi Handa <handa@m17n.org>
5913
5914 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5915 (composition_compute_stop_pos): Fix handling of static composition.
5916 (Fcomposition_get_gstring): Check FROM and TO at first.
5917
59182008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5919
46e722a9 5920 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
5921 mixup (YAILOM).
5922
59232008-09-17 Chong Yidong <cyd@stupidchicken.com>
5924
5925 * indent.c (Fvertical_motion): Use position reported by iterator
5926 instead of PT for determining screen motion (bug#943).
5927
59282008-09-17 Romain Francoise <romain@orebokech.com>
5929
5930 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5931
59322008-09-17 Kenichi Handa <handa@m17n.org>
5933
5934 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5935
5936 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5937 if necessary.
5938
59392008-09-16 Kenichi Handa <handa@m17n.org>
5940
5941 * coding.c (make_conversion_work_buffer): Avoid calling
5942 Fget_buffer_create if it is not necessary.
5943
59442008-09-15 Martin Rudalics <rudalics@gmx.at>
5945
5946 * window.c (Fselect_window): Don't update window_select_count and
5947 use_time when norecord is not nil.
5948
59492008-09-14 Kenichi Handa <handa@m17n.org>
5950
5951 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5952 specpdl_ptr.
5953
59542008-09-12 Kenichi Handa <handa@m17n.org>
5955
5956 * indent.c (scan_for_column): Don't handle automatic composition
5957 if the current buffer is not associated with a window.
5958
5959 * composite.c (composition_reseat_it): If the current buffer is
5960 not associated with a window, ignore the automatic composition.
5961 (find_automatic_composition): Likewise.
5962
59632008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5964
5965 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5966 (Fgpm_mouse_stop): Use it.
5967 * termhooks.h (close_gpm): Declare.
5968 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5969 connection if Gpm_GetEvent fails.
5970
5971 * window.c (set_window_buffer): Always preserve current-buffer.
5972
59732008-09-12 Glenn Morris <rgm@gnu.org>
5974
5975 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5976
59772008-09-11 Glenn Morris <rgm@gnu.org>
5978
5979 * charset.c (charset-map-path): Doc fix.
5980
59812008-09-10 Kenichi Handa <handa@m17n.org>
5982
5983 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5984
5985 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5986 compose a grapheme cluster with the preceding base glyph.
5987
5988 * composite.c (composition_compute_stop_pos): Fix previous change.
5989 Reset cmp_it->id to -1 at first.
5990
59912008-09-10 Glenn Morris <rgm@gnu.org>
5992
5993 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5994
59952008-09-09 Chong Yidong <cyd@stupidchicken.com>
5996
5997 * keyboard.c (read_key_sequence): Reapply translation maps when
5998 switching keyboards.
5999
60002008-09-09 Kenichi Handa <handa@m17n.org>
6001
6002 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
6003 characters.
6004
6005 * composite.c (FORWARD_CHAR): Fix calculation
6006 of (POSITION).pos_byte.
6007 (composition_compute_stop_pos): Limit the search of composition to
6008 at most 500 characters ahead. If we reach the limit or find a
6009 newline, set cmp_it->ch to -2 and return 0.
6010 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
6011
60122008-09-08 Kenichi Handa <handa@m17n.org>
6013
6014 * indent.c (Fvertical_motion): Be sure to set
6015 it_overshoot_expected if it.cmp_it.id is non-negative.
6016
60172008-09-07 Andreas Schwab <schwab@suse.de>
6018
6019 * callproc.c (Fcall_process): Don't hold references to string data
6020 across garbage collection. Move initialisation of new_argv down
6021 to avoid compiler bug.
6022
60232008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6024
6025 * process.c (Fsystem_process_attributes): Doc fix.
6026
60272008-09-07 Chong Yidong <cyd@stupidchicken.com>
6028
6029 * callproc.c (Fcall_process): Canonicalize current directory name.
6030
6031 * xdisp.c (move_it_to): When moving by vpos, ensure that the
6032 iterator advances to the next line if the current line ends in a
6033 continued tab.
6034
60352008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
6036
6037 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
6038 member to point to cmp_from.
6039
6040 * xdisp.c: Doc fix for references to gidx data member.
6041
60422008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6043
6044 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
6045
60462008-09-07 Kenichi Handa <handa@m17n.org>
6047
6048 * composite.c (FORWARD_CHAR): Check STOP after
6049 incrementing (POSITION).pos.
6050
60512008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6052
6053 * process.c (Fsystem_process_attributes): Doc fix.
6054
60552008-09-06 Chong Yidong <cyd@stupidchicken.com>
6056
6057 * keyboard.c (Ftop_level): Doc fix.
6058
60592008-09-06 Eli Zaretskii <eliz@gnu.org>
6060
6061 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
6062 minibuffer, don't let lower part of menu invade the echo area.
6063
6064 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
6065 "char *q" to access menu text and advance through it. Revert the
6066 change that displayed ">" instead of ASCII character 0x10.
6067
60682008-09-05 Eli Zaretskii <eliz@gnu.org>
6069
6070 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
6071 toggle boxes and radio buttons on MS-DOS as well.
6072
60732008-09-05 Kenichi Handa <handa@m17n.org>
6074
6075 * composite.c (autocmp_chars): Check lookback count.
6076 (composition_compute_stop_pos): Set cmp_it->lookback.
6077 (composition_reseat_it): Check lookback count.
6078 (struct position_record): New struct.
6079 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
6080 (find_automatic_composition): New function.
6081 (composition_adjust_point): Use find_automatic_composition.
6082
6083 * dispextern.h (struct composition_it): New member lookback.
6084
60852008-09-02 Chong Yidong <cyd@stupidchicken.com>
6086
6087 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
6088 if moving by a single line.
6089
60902008-09-02 Andreas Schwab <schwab@suse.de>
6091
6092 * xterm.c (x_delete_display): Fix merge error.
6093
6094 * fileio.c (Fexpand_file_name): Remove unused variables.
6095
60962008-09-02 Eli Zaretskii <eliz@gnu.org>
6097
6098 * fileio.c (Fexpand_file_name): Copy argument `name' into local
6099 storage on all platforms, not just on DOS_NT.
6100
61012008-09-02 Jason Rumney <jasonr@gnu.org>
6102
b8ff72fa
SM
6103 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
6104 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
6105
61062008-09-01 Chong Yidong <cyd@stupidchicken.com>
6107
6108 * xfaces.c (Finternal_set_alternative_font_family_alist)
6109 (Finternal_set_alternative_font_registry_alist): Properly copy
6110 entire alist structure.
6111
61122008-09-01 Kenichi Handa <handa@m17n.org>
6113
d66c0241 6114 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 6115 representative chars of the script is a vector.
d66c0241
JB
6116 (ftfont_list): Handle the case where the representative chars of
6117 the script is a vector.
aac0c6e3
MR
6118
6119 * character.c (syms_of_character): Docstring of
6120 script-representative-chars fixed.
6121
61222008-08-31 Eli Zaretskii <eliz@gnu.org>
6123
6124 * msdos.c (BUILD_CHAR_GLYPH): New macro.
6125 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
6126 the menu. Allocate larger buffer for `text', to account for
6127 possible ^C characters.
6128
61292008-08-31 Martin Rudalics <rudalics@gmx.at>
6130
6131 * xdisp.c (prepare_menu_bars): Don't call
6132 Vwindow_size_change_functions with arg Qt.
6133
61342008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
6135
6136 * font.h (font_range):
6137 * fileio.c (report_file_error):
46e722a9
SM
6138 * composite.c (composition_update_it): Yet another int/Lisp_Object
6139 mixup (YAILOM).
aac0c6e3
MR
6140
61412008-08-30 Glenn Morris <rgm@gnu.org>
6142
6143 * data.c (Fmake_variable_frame_local): Doc fix.
6144
6145 * frame.c (Fmodify_frame_parameters): Doc fix.
6146
61472008-08-30 Eli Zaretskii <eliz@gnu.org>
6148
6149 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
6150 needed by GetTokenInformation.
6151 (w32_system_process_attributes): Check return values of all system
6152 APIs.
6153
6154 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
6155 only when the state changes.
6156 (IT_update_begin, IT_update_end): Add termscript trace.
6157
6158 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
6159 clipboard is unavailable. Set dst to NULL if it doesn't point to
6160 malloc'ed data.
6161 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
6162 passing random values to xfree.
6163
6164 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 6165 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
6166
61672008-08-29 Jason Rumney <jasonr@gnu.org>
6168
6169 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
6170
61712008-08-29 Eli Zaretskii <eliz@gnu.org>
6172
6173 * composite.c (fill_gstring_body): Avoid compiler warnings.
6174
6175 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
6176 LGLYPH_SET_CODE to avoid compiler warnings.
6177
2ae37cf0 6178 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
6179
6180 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
6181
6182 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
6183 LGLYPH_SET_CODE.
6184
61852008-08-29 Kenichi Handa <handa@m17n.org>
6186
6187 * fileio.c (report_file_error): Don't downcase the first character
6188 of errstring if it is still unibyte.
6189
61902008-08-29 Kenichi Handa <handa@m17n.org>
6191
6192 These changes are to re-implement the automatic composition so
6193 that it doesn't use text properties.
6194
6195 * Makefile.in (ftfont.o): Depend on composite.h.
6196 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
6197
6198 * character.h (Vunicode_category_table): Extern it.
6199
6200 * character.c (Vunicode_category_table): New variable.
6201 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
6202
6203 * chartab.c (optimize_sub_char_table): Perform more greedy
6204 optimization.
6205
b8ff72fa
SM
6206 * composite.h (enum composition_method):
6207 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
6208 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
6209 (Vcomposition_function_table): Extern it.
6210 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
6211 (composition_gstring_put_cache, composition_gstring_from_id)
6212 (composition_gstring_p, composition_gstring_width)
6213 (composition_compute_stop_pos, composition_reseat_it)
6214 (composition_update_it, composition_adjust_point): Extern them.
6215 (Fcomposition_get_gstring): EXFUN it.
6216
d66c0241 6217 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
6218 (Vcomposition_function_table)
6219 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
6220 (gstring_hash_table, gstring_work, gstring_work_headers):
6221 New variables.
aac0c6e3
MR
6222 (gstring_lookup_cache, composition_gstring_put_cache)
6223 (composition_gstring_from_id, composition_gstring_p)
6224 (composition_gstring_width, fill_gstring_header)
6225 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
6226 (composition_reseat_it, composition_update_it)
b8ff72fa 6227 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
6228 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
6229 and gstring_work_headers. DEFVAR_LISP composition-function-table.
6230 Defsubr compostion_get_gstring.
6231
6232 * dispextern.h (struct glyph): New union u.cmp. Delete the member
6233 cmp_id.
6234 (struct glyph_string): Delete the member gidx. New members
6235 cmp_id, cmp_from, and cmp_to.
6236 (enum it_method): Delete GET_FROM_COMPOSITION.
6237 (struct composition_it): New struct.
6238 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
6239 Delete c, len, cmp_id, cmp_len in u.comp.
6240
6241 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 6242 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 6243 (enum lglyph_indices): Likewise.
b8ff72fa 6244 (font_range): Adjust extern.
aac0c6e3
MR
6245 (font_fill_lglyph_metrics): Extern it.
6246
6247 * font.c (QCf): New variable.
6248 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6249 (font_prepare_composition): Delete this function.
6250 (font_range): Type and arguments changed.
6251 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
6252 (font_fill_lglyph_metrics): New function.
b8ff72fa 6253 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 6254 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
6255 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
6256 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
6257
6258 * fontset.h (font_for_char): Extern it.
6259
6260 * fontset.c (font_for_char): New function.
6261
6262 * ftfont.c: Include composite.h.
6263 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 6264 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
6265
6266 * indent.c: Include composite.h and dispextern.h.
6267 (check_composition): Delete this function.
6268 (scan_for_column): Handle composition by
6269 composition_compute_stop_pos, composition_reseat_it, and
6270 composition_update_it.
6271 (compute_motion): Likewise.
6272 (Fvertical_motion): Fix checking of composition.
6273
6274 * keyboard.c (adjust_point_for_property): Check composition by
6275 composition_adjust_point.
6276
b8ff72fa 6277 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
6278 struct glyph_string.
6279
b8ff72fa
SM
6280 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
6281 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
6282 struct glyph.
6283 (produce_composite_glyph): Likewise.
6284
b8ff72fa
SM
6285 * w32term.c (x_draw_composite_glyph_string_foreground):
6286 Adjust for the change of struct glyph_string.
aac0c6e3
MR
6287 (x_draw_glyph_string): Likewise.
6288
6289 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
6290 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6291
6292 * xdisp.c: Include font.h.
6293 (it_props): Delete the entry for Qauto_composed.
6294 (init_iterator): Initialize it->cmp_it.id to -1.
6295 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 6296 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
6297 (handle_auto_composed_prop): Delete it.
6298 (handle_composition_prop): Handle only static composition.
6299 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
6300 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 6301 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
6302 (pop_it): Likewise.
6303 (get_next_element): Delete next_element_from_composition.
6304 (CHAR_COMPOSED_P): New macro.
6305 (get_next_display_element): For automatic composition, get a face
6306 from the font in the glyph-string.
6307 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 6308 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
6309 (next_element_from_string): Check if the character at the current
6310 position is composed by CHAR_COMPOSED_P.
6311 (next_element_from_buffer): Likewise.
d66c0241
JB
6312 (next_element_from_composition): Adjust for the change of struct it.
6313 Update it->cmp_it.
b8ff72fa
SM
6314 (dump_glyph): Adjust for the change of struct glyph.
6315 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
6316 it and struct glyph. Don't handle automatic composition here.
6317 (fill_gstring_glyph_string): New function.
6318 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 6319 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
6320 (BUILD_GSTRING_GLYPH_STRING): New macro.
6321 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
6322 automatic composition.
b8ff72fa 6323 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 6324 struct glyph.
b8ff72fa 6325 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 6326
b8ff72fa 6327 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
6328 the change of struct glyph_string.
6329 (x_draw_glyph_string): Likewise.
6330
63312008-08-29 Glenn Morris <rgm@gnu.org>
6332
6333 * buffer.c (word-wrap): Doc fix.
6334 * xdisp.c (truncate-partial-width-windows): Doc fix.
6335 Increase default to 50.
6336
63372008-08-29 Chong Yidong <cyd@stupidchicken.com>
6338
6339 * xdisp.c (update_tool_bar_unwind): New function.
6340 (update_tool_bar): Temporarily set selected frame before building
6341 tool-bar items.
6342
63432008-08-28 Michael Albinus <michael.albinus@gmx.de>
6344
6345 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
6346 snprintf, respectively.
6347 (xd_append_arg): Convert strings with Fstring_make_unibyte.
6348
63492008-08-28 Chong Yidong <cyd@stupidchicken.com>
6350
6351 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
6352 LDFLAGS to GNUstep CC invocation.
6353
63542008-08-27 Chong Yidong <cyd@stupidchicken.com>
6355
6356 * indent.c (Fvertical_motion): Revert last change. Handle the
6357 general case where we are moving forward, and PT spans multiple
6358 screen lines.
6359
6360 * eval.c (find_handler_clause): Temporarily increase
6361 max-lisp-eval-depth while printing the backtrace buffer, to
6362 guarantee that help-mode code can run.
6363
63642008-08-27 Eli Zaretskii <eliz@gnu.org>
6365
6366 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
6367 colors under -rv.
6368 (IT_set_frame_parameters): Don't swap foreground and background
6369 colors if `(reverse . t)' is present in the frame properties.
6370 (internal_terminal_init): Call init_frame_faces only for the
6371 initial frame.
6372
63732008-08-27 Andreas Schwab <schwab@suse.de>
6374
6375 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
6376
63772008-08-27 Andreas Schwab <schwab@suse.de>
6378
6379 * search.c (search_buffer): Set char_base to zero only at the end.
6380
63812008-08-27 Kenichi Handa <handa@m17n.org>
6382
b8ff72fa 6383 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
6384
63852008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
6386
6387 * xterm.c (x_term_init): Temporarily hide the partially
6388 initialized terminal while calling vendor-specific-keysyms.
6389
63902008-08-26 Eli Zaretskii <eliz@gnu.org>
6391
6392 * msdos.c (internal_terminal_init): Most initializations done only
6393 once, especially initial_screen_colors[] and termscript open.
6394
63952008-08-26 Chong Yidong <cyd@stupidchicken.com>
6396
6397 * eval.c (Fcondition_case): Doc fix.
6398
6399 * widgetprv.h (EmacsFramePart): Change font member to the new font
6400 struct.
6401
6402 * widget.c: Include character.h and font.h for XSETFONT.
6403 (setup_frame_gcs): Compute X font id from font struct, just once.
6404
64052008-08-26 Eli Zaretskii <eliz@gnu.org>
6406
6407 * term.c (get_named_tty): Fix last change.
6408
64092008-08-26 Chong Yidong <cyd@stupidchicken.com>
6410
6411 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 6412 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
6413
64142008-08-25 Eli Zaretskii <eliz@gnu.org>
6415
6416 * frame.c (do_switch_frame): Mark previously displayed frame as
6417 obscured for FRAME_MSDOS_P frames as well.
6418
64192008-08-24 Eli Zaretskii <eliz@gnu.org>
6420
6421 * frame.c (make_terminal_frame): Initialize f->terminal,
6422 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6423 Set the top frame to newly created frame.
6424 (Fmake_terminal_frame): Reuse the_only_display_info.
6425
6426 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6427 estimating available memory.
6428
b97439ce 64292008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
6430
6431 * nsterm.m (ns_draw_window_cursor): Don't call
6432 NSDisableScreenUpdates and NSEnableScreenUpdates on
6433 non-NS_IMPL_COCOA systems.
6434
64352008-08-23 Andreas Schwab <schwab@suse.de>
6436
6437 * process.c (procfs_system_process_attributes): Fix use of
6438 uninitialized variables.
6439
64402008-08-23 Eli Zaretskii <eliz@gnu.org>
6441
6442 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6443
6444 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6445 calling tty-set-up-initial-frame-faces.
6446
b8ff72fa
SM
6447 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6448 Allow MSDOS frames along with X frames.
aac0c6e3
MR
6449
6450 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6451 addition to output_termcap.
6452
6453 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6454
6455 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6456 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6457 highlight.
6458
6459 * process.c [!subprocesses]: Define QCname.
6460 (syms_of_process): Intern and staticpro it.
6461
6462 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
6463 Adjust for changes in encoding/decoding routines.
6464 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
6465 encode_coding and decode_coding.
6466
b8ff72fa 6467 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
6468
6469 * dosfns.c: Include frame.h before termhooks.h.
6470 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6471 variable termscript.
6472
6473 * s/msdos.h (USER_FULL_NAME): Define.
6474 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6475
6476 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6477 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6478 pw->pw_gecos.
6479
6480 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6481 SELECTED_FRAME as additional (1st) argument.
6482 (tty_read_avail_input): Handle output_msdos_raw in
6483 addition to output_termcap.
6484
6485 * msdos.c: Include frame.h before termhooks.h.
6486 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6487 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6488 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6489 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6490 (IT_set_terminal_modes, IT_reset_terminal_modes)
6491 (IT_set_frame_parameters): Use tty->termscript instead of a global
6492 variable termscript.
6493 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6494 global variable terminal_coding. Don't refer to
6495 Vnonascii_translation_table.
6496 (internal_terminal_init): Set Vwindow_system in current_kboard.
6497 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6498 Announce date and time of session start, if termscript is open.
6499 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
6500 term.c:init_tty). Open termscript only of not already open.
6501 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
6502 here instead of dos_ttraw. Don't initialize display if this is an
6503 initial tty. Don't set FRAME_FONT.
6504 (Vwindow_system_version): Bump to 23.
6505 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6506 is available, set up mouse_position_hook.
6507 (dos_ttraw, IT_set_terminal_modes): If called with initial
6508 terminal, do nothing.
6509 (IT_set_frame_parameters): Handle the Qtty_type frame
6510 parameter by calling internal_terminal_init.
6511 (dos_set_window_size, show_mouse_face)
6512 (clear_mouse_face, IT_note_mode_line_highlight)
6513 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6514 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6515 (initialize_msdos_display): New function.
6516 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6517 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6518 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6519 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 6520 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
6521 (request_sigio, unrequest_sigio): Don't define, now defined on
6522 sysdep.c.
6523 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6524
6525 * term.c [MSDOS]: Include msdos.h.
6526 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6527 conditional to DOS_NT. Allow only one call to this function in a
6528 session. Don't allocate a new struct tty_display_info; instead,
6529 reuse the_only_display_info. Call get_tty_size to get screen
6530 dimensions. Call init_baud_rate to set bad_rate.
6531 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6532 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 6533 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
6534 (get_tty_terminal, get_named_tty, Ftty_type)
6535 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6536 output_termcap.
b8ff72fa
SM
6537 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6538 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 6539 only when subprocesses are supported.
aac0c6e3
MR
6540
6541 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6542 f->output_data.x.
6543 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6544 terminal devices.
6545
5582fbc7 6546 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
6547 x_output.
6548 (FRAME_FONT): Use output_data.tty.
6549 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
6550 (struct x_display_info): Rename from display_info. Update all users in
6551 msdos.c.
aac0c6e3 6552 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 6553 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
6554 (dos_ttraw): Update prototype.
6555
6556 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6557 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6558
65592008-08-23 Jason Rumney <jasonr@gnu.org>
6560
6561 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6562 (fn_TIFFSetDirectory): New library function used.
6563 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6564 (tiff_load): Use :index to select among multiple images. Set count
6565 property when multiple images exist.
6566 (gif_format): Use :index, not :image.
6567
65682008-08-23 Chong Yidong <cyd@stupidchicken.com>
6569
6570 * xdisp.c (try_scrolling): Check INT_MAX instead of
6571 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6572 to obtain INT_MAX.
6573
65742008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6575
6576 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6577
65782008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6579
6580 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6581 GNUstep library location.
6582
65832008-08-21 Chong Yidong <cyd@stupidchicken.com>
6584
6585 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6586 before using it.
6587
6588 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6589
65902008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6591
6592 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6593 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6594 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6595 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6596 (EmacsApp-cursor_blink_handler): Remove declaration.
6597 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6598 match 01 Feb 2008 changes in xterm.c.
6599 (ns_read_socket): Add cast to avoid warning.
6600 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6601 GNUstep.
6602
66032008-08-20 Chong Yidong <cyd@stupidchicken.com>
6604
6605 * xselect.c (x_get_foreign_selection): Return nil if desired
6606 selection could not be obtained, instead of signalling an error.
6607
66082008-08-20 David Reitter <david.reitter@gmail.com>
6609
6610 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6611 * nsterm.m: Remove ns-specific code for cursor blinking.
6612 (ns_draw_window_cursor): Clear cursor properly rather than
6613 redrawing the area. Respect width of bar cursors.
6614 These changes enable the use of generic blink-cursor-mode and
6615 generic cursor types in NS and support smooth cursor movements (do
6616 not blink off after command).
6617 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6618 Nextstep, too.
6619
66202008-08-19 Kenichi Handa <handa@m17n.org>
6621
6622 * font.c (Vfont_log_deferred): New variable.
6623 (font_add_log): Check Vfont_log_deferred.
6624 (font_deferred_log): New function.
6625
6626 * font.h (font_deferred_log): Extern it.
6627
6628 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6629 for sorting.
6630 (face_for_char): Use deferred log.
6631
66322008-08-18 Kenichi Handa <handa@m17n.org>
6633
6634 * fontset.c (face_for_char): Add font log.
6635
6636 * font.c (font_add_log): Add the font properties :script, :lang,
6637 and :otf in the log.
6638
66392008-08-17 Chong Yidong <cyd@stupidchicken.com>
6640
6641 * xdisp.c: Remove dead code.
6642 (handle_invisible_prop, next_overlay_string): Defer call to
6643 setup_for_ellipsis.
6644 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6645
66462008-08-15 Chong Yidong <cyd@stupidchicken.com>
6647
6648 * xfaces.c (lookup_derived_face): Properly handle possible zero
6649 return value of get_lface_attributes.
6650 (merge_faces): Don't tell lookup_derived_face to signal an error
6651 if face is not found.
6652
6653 * dired.c (Fdirectory_files): Doc fix.
6654
6655 * process.c (make_process): Initialize kill_without_query struct
6656 member.
6657
66582008-08-15 Eli Zaretskii <eliz@gnu.org>
6659
6660 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6661 Alternative calculation of totphys for Visual Studio 6.
6662
6663 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6664
6665 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6666 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6667 All users changed.
6668 (stat): Only root directory passed to GetDriveType. Allow RAM
6669 disk as well as local fixed disk when w32-get-true-file-attributes
6670 is set to `local'.
6671 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6672 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6673 (w32_cached_id, w32_add_to_cache): New functions.
6674 (get_name_and_id): Look account names in the cache before calling
6675 lookup_account_sid.
6676 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6677 New initialization flags.
6678 (globals_of_w32): Initialize them to zero.
6679 (w32_system_process_attributes): Use w32_cached_id and
6680 w32_add_to_cache.
6681
66822008-08-14 Lawrence Mitchell <wence@gmx.li>
6683
6684 * lread.c (Fread_char, Fread_char_exclusive): If no character
6685 event is read before timeout is reached, return nil, rather than
6686 converting to a number.
6687
66882008-08-14 Chong Yidong <cyd@stupidchicken.com>
6689
6690 * fns.c (use_dialog_box): Doc fix.
6691
6692 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6693 on OS X.
6694
66952008-08-13 Chong Yidong <cyd@stupidchicken.com>
6696
6697 * frame.c (Qns_parse_geometry): New var.
6698 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6699
67002008-08-11 Chong Yidong <cyd@stupidchicken.com>
6701
6702 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6703 space character in calculating tabs.
6704
67052008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6706
6707 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6708
67092008-08-10 Glenn Morris <rgm@gnu.org>
6710
6711 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6712 silence gcc "limited range of data type" warnings in some
6713 make_fixnum_or_float calls.
6714
67152008-08-09 Eli Zaretskii <eliz@gnu.org>
6716
6717 * w32.c (w32_system_process_attributes): If the process does not
6718 exist, return nil.
6719
6720 * w32.c: Include thelp32.h, psapi.h and coding.h.
6721 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6722 declarations.
6723 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6724 (Process32Next_Proc): New typedefs.
6725 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6726 (g_b_init_process32_next, g_b_init_open_thread_token)
6727 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6728 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6729 (g_b_init_get_process_working_set_size)
6730 (g_b_init_global_memory_status_ex): New static variables.
6731 (globals_of_w32): Initialize them.
6732 (create_toolhelp32_snapshot, process32_first, process32_next)
6733 (open_thread_token, impersonate_self, revert_to_self)
6734 (get_process_memory_info, get_process_working_set_size)
6735 (global_memory_status, global_memory_status_ex): New wrapper
6736 functions.
6737 (w32_list_system_processes, w32_system_process_attributes)
6738 (enable_privilege, restore_privilege, ltime, process_times):
6739 New functions.
6740 (convert_time_raw): New function.
6741 (convert_time): Remove conversion of FILETIME into time in 100
6742 nsec units, call convert_time_raw instead.
6743
6744 * process.h (w32_list_system_processes, w32_system_process_attributes):
6745 Add prototypes.
6746 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6747 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6748 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6749 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6750
6751 * process.c (Fsystem_process_attributes): Doc fix.
6752
67532008-08-08 Chong Yidong <cyd@stupidchicken.com>
6754
6755 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6756 a continued multi-char glyph; if so, advance to the actual glyph.
6757
67582008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6759
6760 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6761
6762 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6763 (.m.o): Use it.
6764 * config.in: Regenerate.
6765
67662008-08-07 Chong Yidong <cyd@stupidchicken.com>
6767
6768 * xdisp.c (redisplay_window): Revert last change.
6769 (try_window): Check bottom scroll margin too.
6770
67712008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6772
6773 * config.in: Regenerate.
6774
6775 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6776 -list-load-path-shadows'.
6777 (nsgui.h): Reduce number of things depending on it.
6778
67792008-08-06 Chong Yidong <cyd@stupidchicken.com>
6780
6781 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6782 instead of window-end which does the wrong thing at eob.
6783 (try_cursor_movement): Minor optimization.
6784 (redisplay_window): If scroll margin is defined, don't assume
6785 window doesn't need scrolling.
6786
67872008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6788
6789 * config.in: Regenerate.
6790
6791 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6792 (mostlyclean): Don't delete *.d under NS.
6793
6794 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6795
67962008-08-06 Kenichi Handa <handa@m17n.org>
6797
6798 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6799
68002008-08-06 Andreas Schwab <schwab@suse.de>
6801
6802 * config.in: Regenerate.
6803
68042008-08-05 Chong Yidong <cyd@stupidchicken.com>
6805
6806 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6807 forcing a window start.
6808
6809 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6810 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6811
68122008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6813
6814 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6815 argument.
6816
68172008-08-05 Juanma Barranquero <lekktu@gmail.com>
6818
6819 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6820 <scroll-down-aggressively, before-change-functions>:
6821 <after-change-functions>: Reflow docstrings.
6822
68232008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6824 Ken Raeburn <raeburn@gnu.org>
6825
6826 Dock menu customization, based on a patch by Ken Raeburn, plus some
6827 other fixes.
6828 * nsmenu.m (dockMenu): New variable.
6829 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6830
6831 * nsterm.h (dockMenu): Declare.
6832
6833 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6834 (ns_term_init): Initialize dockMenu.
6835 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6836 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6837 left.
6838
6839 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6840
68412008-08-04 Chong Yidong <cyd@stupidchicken.com>
6842
6843 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6844
6845 * config.in: Regenerate.
6846
68472008-08-04 Seiji Zenitani <zenitani@mac.com>
6848
6849 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6850
68512008-08-04 Chong Yidong <cyd@stupidchicken.com>
6852
6853 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6854
68552008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6856
6857 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6858
6859 * keyboard.h: Comment an #endif.
6860
6861 * lisp.h (have_menus_p): Adjust comment.
6862
6863 * menu.c (find_and_return_menu_selection): Fix comparison with
6864 client_data.
6865
6866 * nsmenu.m (popup_activated_flag): New variable.
6867 (popup_activated): New function.
6868 (menu-or-popup-active-p): New exported lisp definition.
6869 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6870 when popup done.
6871 (ns_popup_dialog): Set popup_activated_flag.
6872
6873 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6874 version for GNUstep (handled by conditional typedef in nsterm.m).
6875 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6876 in rgb.txt).
6877
6878 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6879
6880 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6881
6882 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6883
6884 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6885 shortcircuit if popup_activated like GTK and X toolkit.
6886
6887 * m/inter386.h: Change DARWIN to DARWIN_OS.
6888
6889 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6890 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6891 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6892 comment on NO_SOCK_SIGIO.
6893
68942008-08-03 Chong Yidong <cyd@stupidchicken.com>
6895
6896 * nsterm.m (windowDidResize): Remove stopModal call.
6897
68982008-08-03 Andreas Schwab <schwab@suse.de>
6899
6900 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6901 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6902
69032008-08-02 Chong Yidong <cyd@stupidchicken.com>
6904
6905 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6906 Don't use uninitialized pointer variable when using getrlimit.
6907
69082008-08-02 Jason Rumney <jasonr@gnu.org>
6909
6910 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6911
69122008-08-02 Eli Zaretskii <eliz@gnu.org>
6913
6914 * alloc.c (NSTATICS): Bump to 0x640.
6915
6916 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6917
6918 * lisp.h: Add prototype for directory_files_internal.
6919
6920 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6921 New functions.
6922 (syms_of_process): Defsubr them. Add initializations for various
6923 Q* symbols used in procfs_system_process_attributes.
6924 (procfs_list_system_processes, procfs_system_process_attributes)
6925 [HAVE_PROCFS]: New functions.
6926 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6927 (procfs_get_total_memory): New functions.
6928
69292008-08-01 Juanma Barranquero <lekktu@gmail.com>
6930
6931 * xfaces.c (Fx_load_color_file): Fix previous change;
6932 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6933
69342008-08-01 Michael Albinus <michael.albinus@gmx.de>
6935
6936 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6937
69382008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6939
6940 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6941
69422008-08-01 Chong Yidong <cyd@stupidchicken.com>
6943
6944 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6945
6946 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6947 define NSApplicationDelegateReplySuccess.
6948 (EmacsView -converstationIdentifier): Use long instead of
6949 NSInteger for GNUstep, since it doesn't have NSInteger.
6950
6951 * xmenu.c: Revert last change.
6952
6953 * keyboard.h: Fix last change.
6954
69552008-08-01 Juanma Barranquero <lekktu@gmail.com>
6956
6957 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6958 on Windows.
6959
69602008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6961
6962 Warning clearing and clean-up in NS port.
6963 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6964 Add prototypes.
6965 * nsgui.h (FACE_DEFAULT): Remove, unused.
6966 (XGCValues): Change colors to unsigned long.
6967 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6968 nsterm.m.
6969 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6970 (ns_list_fonts): Remove, unused.
6971 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6972 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6973 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6974 (nsfont_draw): Compare face colors to 0, not nil.
6975 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6976 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6977 (-addSubmenuWithTitle:): Use NSMenuItem class.
6978 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6979 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6980 (ns_clip_to_row): Make gc arg a BOOL.
6981 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6982 ns_clip_to_row() call.
6983 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6984 used). Cast FRAME_FONT assignments.
6985 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6986 (ns_string_to_lispmod): Change arg to const char.
6987 (ns_term_init): Use NSMenuItem class.
6988 (EmacsApp -openFile:): Move to different section of file.
6989 (EmacsApp -application:openFiles:): Don't return a value, call
6990 -replyToOpenOrPrint:.
6991 (EmacsView -keyDown:): Fix up cast.
6992 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6993 (EmacsView -menuDown:): Cast tag in call to
6994 find_and_call_menu_selection().
6995 (ns_list_fonts): Remove, unused.
6996 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
6997 (ns_fontname_to_xlfd): Make static.
6998 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
6999 Remove prototypes (now in keyboard.h).
7000 (next_menubar_widget_id): Remove, unused.
7001 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
7002 Remove prototypes (now in keyboard.h).
7003 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
7004
70052008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
7006
7007 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
7008 (floatfns.o): Depend on syssignal.h.
7009 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
7010
7011 * systty.h: Fix previous change that removed BSD_TERMIOS.
7012 Add comments to #ifdefs.
7013
70142008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7015
7016 * w32fns.c (w32-load-color-file): Remove.
7017 (x-open-connection): Use renamed Fx_load_color_file.
7018 * xfaces.c (x-load-color-file): Add.
7019 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
7020 Emacs.clr.
7021 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
7022
70232008-07-31 Michael Albinus <michael.albinus@gmx.de>
7024
7025 * dbusbind.c (Fdbus_call_method_asynchronously)
7026 (Fdbus_method_error_internal): New defuns.
7027 (xd_read_message): Handle also reply messages.
7028 (Vdbus_registered_functions_table): Extend docstring.
7029
70302008-07-31 Juanma Barranquero <lekktu@gmail.com>
7031
7032 * keyboard.c (gobble_input): Fix previous change.
7033
70342008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7035
7036 * bitmaps/README:
7037 * xfns.c:
7038 * termcap.c:
7039 * term.c:
7040 * syswait.h:
7041 * systty.h:
7042 * systime.h:
7043 * syssignal.h:
7044 * sysdep.c:
7045 * process.h:
7046 * process.c:
7047 * print.c:
7048 * ndir.h:
7049 * lread.c:
7050 * keyboard.c:
7051 * getpagesize.h:
7052 * floatfns.c:
7053 * fileio.c:
7054 * emacs.c:
7055 * doc.c:
7056 * dispnew.c:
7057 * dired.c:
7058 * data.c:
7059 * callproc.c:
7060 * buffer.c:
7061 * README:
7062 * Makefile.in:
7063 * s/template.h:
7064 * s/msdos.h:
7065 * m/vax.h: Remove VMS support.
7066 * s/vms.h:
7067 * vlimit.h:
7068 * uaf.h:
7069 * temacs.opt:
7070 * param.h:
7071 * ioctl.h: Remove file.
7072
70732008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7074
7075 * s/ms-w32.h (MULTI_KBOARD): Remove.
7076 * xterm.c:
7077 * xselect.c:
7078 * xfns.c:
7079 * window.c:
7080 * w32term.c:
7081 * w32fns.c:
7082 * terminal.c:
7083 * termhooks.h:
7084 * term.c:
7085 * sysdep.c:
7086 * keyboard.h:
7087 * keyboard.c:
7088 * frame.h:
7089 * frame.c:
7090 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
7091 * config.in: Regenerate.
7092
70932008-07-30 Jason Rumney <jasonr@gnu.org>
7094
7095 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
7096
7097 * w32font.c (w32font_encode_char): Leave as unicode if in range.
7098 (w32font_open_internal): Get unicode version of textmetrics.
7099 Don't enable or disable glyph indices here.
7100 (w32font_open): Disable use of glyph indices.
7101
7102 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
7103
71042008-07-30 Chong Yidong <cyd@stupidchicken.com>
7105
7106 * minibuf.c (Vread_buffer_function): Doc fix.
7107
71082008-07-30 John Paul Wallington <jpw@pobox.com>
7109
7110 * minibuf.c (read_buffer_completion_ignore_case): New var.
7111 (Fread_buffer): Use it.
7112
71132008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
7114
7115 * systty.h (sensemode): Remove empty #if. Remove reference to
7116 BSD_TERMIOS, unused.
7117
7118 * sysdep.c: Remove reference to DGUX.
7119 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
7120
7121 * config.in: Regenerate.
7122
71232008-07-30 Jason Rumney <jasonr@gnu.org>
7124
7125 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
7126
71272008-07-29 Jason Rumney <jasonr@gnu.org>
7128
7129 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
7130 is populated.
7131 (uniscribe_encode_char): Always use uniscribe.
7132 Avoid using context if cache is populated.
7133
71342008-07-29 Jan Djärv <jan.h.d@swipnet.se>
7135
7136 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
7137 open menu.
7138
7139 * gtkutil.c (menu_nav_ended): Remove.
7140 (create_menus): Remove signal connect for menu_nav_ended.
7141
71422008-07-28 Chong Yidong <cyd@stupidchicken.com>
7143
7144 * xdisp.c (redisplay_window): Check return value of
7145 compute_window_start_on_continuation_line before forcing a window
7146 start.
7147
71482008-07-28 Jason Rumney <jasonr@gnu.org>
7149
7150 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
7151
7152 * w32term.c (w32_enable_unicode_output, cleartype_active):
7153 Remove obsolete display options.
7154 (x_draw_glyph_string_background): Don't use old cleartype_active
7155 workaround.
7156 (w32_initialize): Remove cleartype_active initialization.
7157 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
7158
71592008-07-28 Andreas Schwab <schwab@suse.de>
7160
7161 * lisp.h (init_weak_hash_tables, syms_of_font)
7162 (xd_read_queued_messages, syms_of_dbusbind): Declare.
7163 (remove_hash_entry): Don't declare.
7164 * eval.c (maybe_call_debugger): Make static and move before use.
7165 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
7166 * xdisp.c: Include "gtkutil.h" if USE_GTK.
7167 * xterm.h (x_set_frame_alpha): Declare.
7168
71692008-07-28 Jan Djärv <jan.h.d@swipnet.se>
7170
7171 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
7172 (create_menus): Connect selection-done to menu_nav_ended.
7173
71742008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7175
7176 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
7177 Set Vx_resource_name to a fallback. Replace read of 'buffered'
7178 parameter with read of 'alpha' one.
7179 (Qns_frame_parameter): Remove.
5582fbc7 7180 * nsselect.m (selection-coding-system)
aac0c6e3
MR
7181 (next-selection-coding-system, Vselection_coding_system)
7182 (Vnext_selection_coding_system): Drop.
7183
71842008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7185
7186 * nsfns.m (do-applescript, do_applescript): Rename to
7187 ns-do-applescript, ns_do_applescript, and move within file.
7188
71892008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
7190
7191 Remove support for Mac Carbon.
7192 * mactoolbox.c:
7193 * macterm.h:
7194 * macterm.c:
7195 * macselect.c:
7196 * macmenu.c:
7197 * macgui.h:
7198 * macfns.c:
7199 * mac.c: Remove file.
7200 * s/darwin.h:
7201 * m/intel386.h:
7202 * xfaces.c:
7203 * xdisp.c:
7204 * window.c:
7205 * tparam.c:
7206 * termhooks.h:
7207 * termcap.c:
7208 * term.c:
7209 * syssignal.h:
7210 * sysselect.h:
7211 * sysdep.c:
7212 * process.c:
7213 * lread.c:
7214 * lisp.h:
7215 * keyboard.c:
7216 * image.c:
7217 * fringe.c:
7218 * frame.h:
7219 * frame.c:
7220 * fontset.c:
7221 * font.h:
7222 * font.c:
7223 * fns.c:
7224 * fileio.c:
7225 * emacs.c:
7226 * dispnew.c:
7227 * dispextern.h:
7228 * config.in:
7229 * atimer.c:
2ae37cf0 7230 * Makefile.in: Remove code for Carbon.
aac0c6e3 7231
f0131492 72322008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
7233
7234 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
7235
72362008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7237
7238 * macterm.h (kCGBitmapByteOrder32Host): New define for
7239 non-universal SDKs.
7240
7241 * image.c (mac_create_cg_image_from_image, image_load_image_io)
7242 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7243
7244 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
7245 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7246
72472008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
7248
7249 * w32inevt.c: Include dispextern.h.
7250
72512008-07-26 Andreas Schwab <schwab@suse.de>
7252
7253 * print.c (print_object): Fix off-by-one in last change.
7254
72552008-07-25 Juanma Barranquero <lekktu@gmail.com>
7256
7257 * term.c (syms_of_term): Don't initialize default_orig_pair,
7258 default_set_foreground and default_set_background on Windows.
7259
72602008-07-25 Jason Rumney <jasonr@gnu.org>
7261
7262 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
7263 ScriptItemize. Clean up return value checking. Remove unused
7264 variables.
7265 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
7266 shaping engine.
7267
7268 * w32font.c (w32font_has_char): Handle the case where we can't
7269 determine the script for a character.
7270
72712008-07-25 Chong Yidong <cyd@stupidchicken.com>
7272
7273 * term.c (syms_of_term): Initialize default_orig_pair,
7274 default_set_foreground, and default_set_background.
7275
7276 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
7277 clash (bug#86).
7278 (getloadavg): Callers changed.
7279
7280 * image.c (svg_load_image): Fix last change.
7281 (svg_load_image): Use rsvg_handle_get_dimensions to check that
7282 image size is valid. Use g_object_unref instead of deprecated
7283 rsvg_handle_free to free rsvg handle.
7284 (x_from_xcolors): Don't initialize pixmap (silence compiler).
7285
72862008-07-25 Jason Rumney <jasonr@gnu.org>
7287
7288 * w32font.c (w32font_encode_char): Encode characters outside BMP as
7289 surrogates before looking up glyph index.
7290 (w32font_text_extents): Encode as surrogates if falling back to
7291 functions that need UTF-16 wide chars.
7292
7293 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
7294 BMP as surrogates before looking up glyph index.
7295
72962008-07-25 Chong Yidong <cyd@stupidchicken.com>
7297
7298 * image.c (svg_load_image): Check for failure in return value of
7299 rsvg_handle_get_pixbuf. Free rsvg handle when done.
7300
73012008-07-25 Jason Rumney <jasonr@gnu.org>
7302
7303 * w32font.c (Fx_select_font): Reverse sense of second arg.
7304
73052008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
7306
7307 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
7308 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
7309
7310 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
7311 (PURESIZE): Use it.
7312
73132008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
7314
7315 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
7316 * m/alpha.h (TEXT_END):
7317 * m/ibmrs6000.h (TEXT_END):
7318 * m/macppc.h (TEXT_END):
7319 * s/darwin.h (TEXT_END):
7320 * s/msdos.h (TEXT_END): Remove, unused.
7321 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
7322 * s/cygwin.h: Remove comment.
7323
7324 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
7325 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
7326 * m/intel386.h (DOT_GLOBAL_START):
7327 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
7328 (USG): Remove, file not used on USG platforms.
7329
7330 * Makefile.in (HAVE_X11): Remove empty #else.
7331
73322008-07-24 Andreas Schwab <schwab@suse.de>
7333
7334 * fileio.c (Finsert_file_contents): Properly adjust undo list
7335 after format conversion.
7336
73372008-07-24 Jan Djärv <jan.h.d@swipnet.se>
7338
7339 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
7340 (menu_nav_ended): Remove.
7341 (create_menus): Remove signal connect for menu_nav_ended.
7342 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
7343 create_menus.
7344 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
7345
73462008-07-23 Jason Rumney <jasonr@gnu.org>
7347
7348 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
7349 with opened font.
7350 (w32font_open): Set font type to gdi.
7351
7352 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
7353
73542008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
7355
7356 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
7357 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
7358 defines it.
7359 * unexec.c (ADDR_CORRECT): Define unconditionally.
7360
7361 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
7362
7363 * unexec.c: Remove code depending on !COFF and USG, the file is
7364 not used for such systems.
7365
7366 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
7367 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
7368 (LD_SWITCH_SYSTEM_1): Remove, update users.
7369
7370 * s/darwin.h (DATA_END):
7371 * m/intel386.h (DATA_END):
7372 * m/ibmrs6000.h (DATA_END):
7373 * m/alpha.h (DATA_END): Remove, unused.
7374
7375 * config.in: Regenerate.
7376 * s/ms-w32.h (subprocesses): Define unconditionally.
7377 * s/template.h (subprocesses): Update comment.
7378 * s/vms.h (subprocesses):
7379 * s/usg5-4.h (subprocesses):
7380 * s/hpux10-20.h (subprocesses):
7381 * s/gnu-linux.h (subprocesses):
7382 * s/cygwin.h (subprocesses):
7383 * s/bsd-common.h (subprocesses):
7384 * s/aix4-2.h (subprocesses):
7385 * s/darwin.h (subprocesses): Do not define, defined by default now.
7386
7387 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7388 Remove all references.
7389 (temacs): Add GNUstep specific ld flags.
7390
7391 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7392 similarly to what X does.
7393
73942008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7395
7396 * nsfns.m (x-list-fonts): Remove.
7397 (syms_of_nsfns): Drop the x-list-fonts declaration.
7398 * nsterm.m: Get rid of remaining "//" comments.
7399
74002008-07-22 Chong Yidong <cyd@stupidchicken.com>
7401
7402 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7403
7404 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7405 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7406 (Fns_own_selection_internal, Fx_disown_selection_internal)
7407 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7408
7409 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7410 ... */' style of docstrings. Doc fixes.
7411
74122008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7413
7414 * terminfo.c (UP, BC, PC): Undo previous change.
7415
7416 * nsfns.m: Rename ns prefixed functions/variables to the
7417 corresponding x versions. Update references.
7418
74192008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7420
7421 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7422
74232008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7424
7425 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7426 Remove forwarding functions.
7427 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7428 non-static.
7429 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7430 non-static.
7431 (ns_frame_parm_handlers): Use the new names.
7432 (syms_of_nsfns): Move to the end of file.
7433
7434 * nsterm.m (syms_of_nsterm): Move to the end of file.
7435
7436 * dispnew.c (init_display): Remove code for X10.
7437
74382008-07-22 Jason Rumney <jasonr@gnu.org>
7439
7440 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7441 bare drive.
7442
74432008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7444
7445 * nsterm.m (syms_of_nsterm): Remove debugging println.
7446
74472008-07-22 David Reitter <david.reitter@gmail.com>
7448
7449 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7450 Carbon implementation of the same functionality: execute arbitrary
7451 AppleScript code.
7452
74532008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7454
7455 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7456 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7457 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7458 (Fx_display_mm_height, Fx_display_mm_width)
7459 (Fx_display_backing_store, Fx_display_visual_class)
7460 (Fx_display_save_under, Fx_open_connection)
7461 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7462 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7463 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7464 (Fx_display_pixel_width, Fx_display_pixel_height)
7465 (Fx_display_usable_bounds, Fx_display_planes)
7466 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7467 ... */' style of docstrings.
7468
74692008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7470
7471 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7472 on this platform.
7473 (mips):
7474 * m/iris4d.h (mips): Do not define.
7475 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7476
7477 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7478
7479 * image.c:
7480 * nsfns.m:
7481 * nsselect.m:
7482 * nsterm.h:
7483 * nsterm.m: Rename ns prefixed functions/variables to the
7484 corresponding x versions. Update references.
7485
7486 * m/ibms390x.h (NO_REMAP): Do not undefine.
7487
7488 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7489
74902008-07-21 Chong Yidong <cyd@stupidchicken.com>
7491
7492 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7493 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7494 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7495 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7496 (Fns_display_mm_height, Fns_display_mm_width)
7497 (Fns_display_backing_store, Fns_display_visual_class)
7498 (Fns_display_save_under, Fns_open_connection)
7499 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7500 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7501 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7502 (Fns_display_pixel_width, Fns_display_pixel_height)
7503 (Fns_display_usable_bounds, Fx_display_planes)
7504 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7505
75062008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7507
7508 * print.c (print_object): Check print_depth before searching for
7509 circularities.
7510
75112008-07-21 Michael Albinus <michael.albinus@gmx.de>
7512
7513 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7514 only sprintf.
7515
75162008-07-21 Kenichi Handa <handa@m17n.org>
7517
7518 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7519
75202008-07-20 Andreas Schwab <schwab@suse.de>
7521
7522 * syntax.c (find_start_pos, find_start_value)
7523 (find_start_value_byte, find_start_begv, find_defun_start)
7524 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7525
75262008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7527
7528 * s/sol2-3.h: Insert contents of s/sol2.h.
7529 (LD_SWITCH_SYSTEM): Remove redundant definition.
7530 * s/sol2.h: Remove, unused.
7531
75322008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7533
7534 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7535
75362008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7537
7538 * Makefile.in (ns_appdir): Fix typo in find command.
7539
75402008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7541
7542 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7543
7544 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7545 added not supported anymore.
7546
7547 * s/usg5-4-2.h (LIBS_SYSTEM):
7548 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7549
7550 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7551 * s/lynxos.h (GETPGRP_NO_ARG):
7552 * s/hpux10-20.h (NO_SIOCTL_H):
7553 * s/gnu.h (GETPGRP_NO_ARG):
7554 * s/gnu-linux.h (NO_SIOCTL_H):
7555 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7556 * s/cygwin.h (GETPGRP_NO_ARG):
7557 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7558 (C_DEBUG_SWITCH): Remove duplicate definition.
7559
7560 * m/ibms390.h: Remove boilerplate comments.
7561
7562 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7563
7564 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7565 (wait_reading_process_output): Remove code for SunOS, platform not
7566 supported anymore. Use SOLARIS2 instead of sun.
7567
75682008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7569
7570 * font.c (font_open_by_name): Under NS, default lface height to zero.
7571 (font_open_for_lface): Under NS, set size based on frame fontsize.
7572 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7573 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7574
75752008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7576
7577 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7578 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7579 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7580 YES/NO.
7581 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7582 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7583 * Makefile.in (clean): Clear out build destination dir.
7584
75852008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7586
7587 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7588 xterm, xselect.
7589 * lisp.h: Remove declaration of hash_remove.
7590 * nsgui.h: Remove redefinitions of hash_remove.
7591 * fns.c (hash_remove): Rename to hash_remove_from_table.
7592
75932008-07-19 Seiji Zenitani <zenitani@mac.com>
7594
7595 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7596 strdup() the family UTF8String before modifying it.
7597
75982008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7599
7600 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7601 NS_FACE_BACKGROUND with 0 instead of nil.
7602 * nsfont.m (nsfont_draw): Same.
7603
76042008-07-19 Chong Yidong <cyd@stupidchicken.com>
7605
7606 * nsfns.m (ns_set_background_color): Fix crash.
7607
76082008-07-18 Chong Yidong <cyd@stupidchicken.com>
7609
7610 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7611
76122008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7613
7614 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7615
76162008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7617
7618 * gtkutil.c: Include <config.h> instead of "config.h".
7619
7620 * lisp.h (Foverlay_buffer): Add EXFUN.
7621
7622 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7623 child process to complete child_setup. Undo 2005-09-21 change.
7624
7625 * s/darwin.h: Mention setsid after vfork.
7626
76272008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7628
7629 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7630 Depend on macgui.h.
7631
7632 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7633 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7634
7635 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7636 and f19.
7637 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7638
7639 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7640 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7641 Remove enumerators.
7642
7643 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7644 Check if FACE_FROM_ID returns NULL.
7645
76462008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7647
7648 * w32inevt.c (change_frame_size): Remove extern declaration.
7649 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7650 change_frame_size.
7651
76522008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7653
7654 * getloadavg.c: Revert last change (2008-07-15).
7655
76562008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7657
7658 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7659 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7660 from configure.
7661
76622008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7663
7664 * s/sol2.h:
7665 * s/sol2-4.h: Reorganize conditionals.
7666
7667 * ecrt0.c: Remove code depending on m68000, not used anymore.
7668
7669 * fns.c (hash_remove): Make static.
7670 * lisp.h (hash_remove): Don't prototype.
7671
7672 * m/ibmrs6000.h:
7673 * m/ibms390x.h:
7674 * m/macppc.h: Remove boilerplate comments.
7675
7676 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7677 Solaris, which does not need them.
7678
7679 * m/vax.h: Remove comments about unsupported systems.
7680
7681 * s/darwin.h: Reorganize ifdefs.
7682
76832008-07-17 Andreas Schwab <schwab@suse.de>
7684
7685 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7686
76872008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7688
7689 Use SDATA. Follow coding convention of placing operators at
7690 beginning of next line rather than end of previous line, and placing
7691 spaces around infix operators.
7692
7693 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7694 in case it was defined already.
7695 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7696 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7697 ns_default.
7698 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7699 Lisp_Objects.
7700 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7701 (ns_defined_color, ns_color_to_lisp): Declare.
7702 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7703 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7704 it's accepted even with USE_LISP_UNION_TYPE.
7705 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7706 (update_frame_tool_bar): Remove apparently obsolete tests for
7707 non-integerness of f->tool_bar_lines.
7708 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7709 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7710 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7711 (nsfont_open): Don't confuse NULL for Qnil.
7712 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7713 * menu.h (find_and_call_menu_selection):
7714 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7715 (find_and_return_menu_selection): Always return something.
7716 * frame.h: Include dispextern.h for Display_Info.
7717 (display_x_get_resource): Declare.
7718
77192008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7720
7721 * syntax.c: Remove stdio.h include accidentally introduced in
7722 Emacs.app commit.
7723 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7724 NS_IMPL_COCOA.
7725 * keyboard.c (handle_async_input, input_available_signal): Remove
7726 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7727
77282008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7729
7730 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7731 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7732 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7733 Use SDATA.
7734
7735 * keymap.c: Remove all NS-specific code.
7736 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7737 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7738 where_is_preferred_modifier, return a different value depending on how
7739 preferred is the binding.
7740 (where_is_internal): Adjust accordingly.
7741 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7742 Adjust to new preferred_sequence_p.
7743 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7744 * keyboard.c (parse_solitary_modifier): Not static any more.
7745 * keyboard.h (parse_solitary_modifier): Declare.
7746
77472008-07-16 Andreas Schwab <schwab@suse.de>
7748
7749 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7750 of easymenu.
7751
77522008-07-16 Chong Yidong <cyd@stupidchicken.com>
7753
7754 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7755 that we don't move off the line.
7756
77572008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7758
7759 * keyboard.c (Qsuper): Remove.
7760 (parse_menu_item): Don't call where_is_internal specially for NS.
7761
77622008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7763
7764 * s/gnu-linux.h: Remove boilerplate comments.
7765
7766 * m/alpha.h (__ELF__): Consolidate conditions.
7767
7768 * m/m68k.h (linux): Use GNU_LINUX instead.
7769 Remove boilerplate comments.
7770
7771 * m/intel386.h: Undo refactoring from previous change.
7772 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7773 too, remove dead code.
7774 (linux): Use GNU_LINUX instead.
7775
77762008-07-16 Jason Rumney <jasonr@gnu.org>
7777
7778 * w32gui.h: Repeat 26 June changes lost by last change.
7779
77802008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7781
7782 * systty.h: Remove code for Aix on 386, unsupported platform.
7783
7784 * s/ms-w32.h: Remove boilerplate comments.
7785 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7786
7787 * s/gnu-linux.h (TERM): Remove support.
7788 (HAVE_SYSVIPC): Remove, unused.
7789 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7790 for this system.
7791
7792 * process.c: Remove support for IRIS, unused.
7793 Remove support for TERM, not relevant anymore.
7794
7795 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7796 used with the definition.
7797
7798 * s/aix4-2.h (static): Do not undef.
7799
7800 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7801 only used on Aix.
7802 (HAVE_SYSVIPC): Remove, unused.
7803
7804 * m/hp800.h (CANNOT_DUMP): Do not undef.
7805
7806 * m/alpha.h: Fix comment.
7807
7808 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7809 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7810 used by this configuration.
7811 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7812 * unexec.c: Remove code depending on HPUX and
7813 USG_SHARED_LIBRARIES, not used with this file. Remove code
7814 depending on IRIS, unused. Remove if 0-ed code.
7815
7816 * s/template.h: Remove comments about static.
7817
7818 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7819 Remove if 0-ed code.
7820 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7821 were the same as the default.
7822 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7823 Remove boilerplate comments.
7824 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7825 (HAVE_SYSVIPC): Remove, unused.
7826 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7827
7828 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7829 Remove boilerplate comments.
7830 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7831 Remove boilerplate comments.
7832 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7833 Remove boilerplate comments.
7834 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7835
7836 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7837 USG systems which do not use DATA_SEG_BITS.
7838 Refactor code. Remove boilerplate comments.
7839
7840 * m/ibms390.h:
7841 * m/m68k.h:
7842 * s/bsd-common.h:
7843 * s/cygwin.h:
7844 * s/darwin.h:
7845 * s/freebsd.h:
7846 * s/gnu.h:
7847 * s/msdos.h: Remove boilerplate comments.
7848
7849 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7850 do not use this file.
aac0c6e3
MR
7851 (IRIS_4D): Remove, unused.
7852
7853 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7854 do not use this file.
aac0c6e3
MR
7855 (SIGN_EXTEND_CHAR):
7856 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7857 * unexmips.c: Remove file, unused.
7858
7859 * editfns.c (Fuser_full_name): Replace the only use of
7860 USER_FULL_NAME with its value.
7861 * config.in: Regenerate.
7862
78632008-07-16 David Reitter <david.reitter@gmail.com>
7864
7865 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7866 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7867
78682008-07-16 Glenn Morris <rgm@gnu.org>
7869
7870 * emacs.c (system-type): Doc fix.
7871
78722008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7873
7874 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7875 If the cache doesn't work, let's fix it, rather than work around it.
7876
78772008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7878
7879 * Makefile.in: Correct additions for nsfont.o in last commit.
7880 * nsfont.m: New file (forgot last commit).
7881
78822008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7883
7884 * callproc.c (set_initial_environment): Initialize
7885 Vprocess_environment under CANNOT_DUMP (fixes crash when
7886 batch-compiling for bootstrap).
7887
78882008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7889 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7890
7891 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7892 fix crash due to different init order.
7893
78942008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7895
7896 Changes and additions for NeXTstep windowing system (Cocoa and
7897 GNUstep) support.
7898
7899 * Makefile.in:
7900 * config.in: Support defines and build commands for NS port.
7901 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7902 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7903 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7904 windowing.
7905 (struct face): Add synth_ital field.
7906 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7907 (init_display): Initialize Vinitial_window_system to "ns" when so
7908 compiled.
7909 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7910 (display_arg): Use under NS.
7911 (main): Under NS, allocate autorelease pool and handle command line
7912 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7913 (standard_args): Add NS-specific args.
7914 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7915 * font.c (DEFAULT_ENCODING): New variable.
7916 (font_find_for_lface): Use it.
7917 (syms_of_font): Load syms_of_nsfont under NS.
7918 * font.h: Declare nsfont_driver when compiled under NS.
7919 * fontset.c: When compiling under NS, include nsterm.h.
7920 (fontset_from_font): Autoconstruct fontset under NS.
7921 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7922 symbol, document and use it.
7923 (do_switch_frame): When for_deletion under Cocoa, add
7924 Fraise_frame(Qnil).
7925 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7926 (x_get_arg): Allow "yes" and "no" as boolean values.
7927 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7928 Qright under Cocoa.
7929 (focus-follows-mouse): Default to 0 under NS.
7930 * frame.h (enum output_method): Add output_ns.
7931 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7932 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7933 (FRAME_WINDOW_P): NS-specific definition.
7934 * fringe.c (max_used_fringe_bitmap): Make public.
7935 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7936 (getloadavg): Use NeXT code under descendant OS's.
7937 * image.c (includes and header section, x_create_bitmap_from_data)
7938 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7939 (image_background_transparent, x_clear_image_1)
7940 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7941 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7942 (x_to_xcolors, x_from_xcolors, x_disable_image)
7943 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7944 other GUIs, including XPM support using code originally written for
7945 Carbon GUI.
7946 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7947 using NS API.
7948 (image_ascent): Use font metrics macros instead of direct struct field
7949 access.
7950 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7951 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7952 Also, handle NS as GTK for menu bar purposes.
7953 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7954 toolkit where they differ.
7955 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7956 use cachelist, still needed under NS.
7957 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7958 (struct widget_value): Define it here for menu.c.
7959 * keymap.c (includes): Include modifier internals.
7960 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7961 NS.
7962 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7963 support for preferring sequences using certain modifiers, specified by
7964 the FIRSTONLY argument.
7965 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7966 under NS GNUstep implementation.
7967 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7968 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7969 * menu.c: Include nsterm.h under NS.
7970 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7971 (free_menubar_widget_tree_value, update_submenu_strings)
7972 (find_and_call_menu_selection): Treat NS as X and NT.
7973 (find_and_return_menu_selection): New function, used for popup menus.
7974 * nsgui.h:
7975 * nsterm.h:
7976 * nsfns.m:
7977 * nsimage.m:
7978 * nsmenu.m:
7979 * nsselect.m:
7980 * nsterm.m: New files.
7981 * process.c (wait_reading_process_output): Under NS, call ns_select()
7982 instead of plain select().
7983 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7984 beginning of buffer.
7985 * sysselect.h (init_process): Rename when compiling under Cocoa to
7986 avoid name conflict.
7987 * termhooks.h (display_info): Add ns_display_info to union.
7988 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7989 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7990 COCOA environment.
7991 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7992 unexec() signature. (Note, this will dump, but the resulting file
7993 crashes; unexosx is used instead; keeping around for reference and
7994 possible aid in getting dump working under GNUstep.)
7995 * w32gui.h (button_type, widget_value): Remove definitions (now in
7996 keyboard.h).
7997 * window.c: Include nsterm.h when compiling under NS.
7998 * xdisp.c (includes): Include nsterm.h when compiling under NS.
7999 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
8000 other GUI windowing systems.
8001 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
8002 GTK.
8003 (x_consider_frame_title): Under NS, set icon type and frame
8004 modified-state indicator; use ns_set_name_as_filename() when using
8005 formatted title.
8006 (update_window_cursor): Make public when compiling under NS.
8007 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
8008 (hourglass_atimer, Vhourglass_delay
8009 * xfaces.c (header section, init_frame_faces, clear_font_table)
8010 (defined_color, unload_color, x_face_list_fonts)
8011 (prepare_face_for_display): Add NS support parallel to other GUIs.
8012 Emulate GCs like other non-X GUIs.
8013 (split_font_name): Don't lowercase font name under NS.
8014 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
8015 under NS.
8016 * s/darwin.h: Add support for compilation under NS.
8017
80182008-07-15 Jason Rumney <jasonr@gnu.org>
8019
8020 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
8021 (w32_show_hourglass): Rename from show_hourglass.
8022 (w32_hide_hourglass): Rename from hide_hourglass.
8023 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
8024 (Vhourglass_delay): Declare extern.
8025 (hourglass_started): Remove.
8026
8027 * xdisp.c (Vhourglass_delay): Remove static.
8028 (hourglass_started, start_hourglass, cancel_hourglass):
8029 Don't include these versions on WINDOWSNT.
8030
80312008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
8032
8033 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
8034 variables (formerly in xfns.c).
8035 (show_hourglass, hide_hourglass): New prototypes (same).
8036 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
8037 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
8038 in xfns.c).
8039 (syms_of_xdisp): Declare/initialize display-hourglass,
8040 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
8041 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
8042 formerly in xfns.c.
8043 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8044 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8045 (start_hourglass, cancel_hourglass): Remove.
8046 (show_hourglass, hide_hourglass): Remove prototypes and static
8047 modifiers.
8048 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
8049 hourglass_atimer, hourglass_shown_p declaration/initialization.
8050 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8051 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8052 (start_hourglass, cancel_hourglass): Remove.
8053 (show_hourglass, hide_hourglass): Remove prototypes and static
8054 modifiers.
8055 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
8056 hourglass_atimer, hourglass_shown_p declaration/initialization.
8057 * w32fns.c (display_hourglass_p, Vhourglass_delay)
8058 (DEFAULT_HOURGLASS_DELAY): Remove.
8059 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
8060 hourglass_shown_p declaration/initialization.
8061
80622008-07-14 Jason Rumney <jasonr@gnu.org>
8063
8064 * w32fns.c (w32_get_arg): Remove wrapper function.
8065 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
8066 directly.
8067 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
8068
80692008-07-14 Kenichi Handa <handa@m17n.org>
8070
8071 * xfont.c (xfont_open): Add workaround for X's bug.
8072
80732008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8074
8075 * fontset.c: Include <stdio.h> unconditionally.
8076
80772008-07-13 Michael Albinus <michael.albinus@gmx.de>
8078
8079 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
8080 for filtering.
8081
80822008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
8083
8084 * s/vms.h: Use __GNUC__ instead of _GNUC_.
8085
8086 * m/macppc.h:
8087 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
8088
8089 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
8090 (SPECIAL_EMACS_INT):
8091 * m/ia64.h (SPECIAL_EMACS_INT):
8092 * m/amdx86-64.h (SPECIAL_EMACS_INT):
8093 * s/gnu.h (NLIST_STRUCT):
8094 * s/aix4-2.h (X11R5_INHIBIT_I18N):
8095 * s/gnu-linux.h (LINUX):
8096 * s/msdos.h (HAVE_FACES):
8097 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
8098
8099 * systty.h:
8100 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
8101 anymore.
8102
81032008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
8104
8105 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
8106 always defined as int.
8107
8108 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
8109 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
8110 * s/gnu-linux.h (HAVE_WAIT_HEADER):
8111 * s/freebsd.h (HAVE_WAIT_HEADER):
8112 * s/bsd-common.h (HAVE_UNION_WAIT):
8113 * s/aix4-2.h (HAVE_WAIT_HEADER):
8114 * m/mips.h (HAVE_UNION_WAIT):
8115 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
8116 (COFF, static): Do not define, they are undefined later in the file.
8117
8118 * process.c (update_status): Don't use a union.
8119 (status_convert):
8120 (sigchld_handler): Use int instead of WAITTYPE.
8121
81222008-07-12 Chong Yidong <cyd@stupidchicken.com>
8123
8124 * indent.c (Fvertical_motion): Restore hscroll before moving to
8125 goal column.
8126
81272008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8128
8129 * lisp.h: Remove left over code.
8130
81312008-07-11 Andreas Schwab <schwab@suse.de>
8132
8133 * lisp.h: Fix logic in last change.
8134
8135 * menu.h: New file.
8136 * menu.c: Include it.
8137 * xmenu.c: Likewise.
8138 * Makefile.in: Update dependencies.
8139
81402008-07-11 Kenichi Handa <handa@m17n.org>
8141
8142 * fontset.c (fontset_from_font): Cancel the previous change.
8143
81442008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8145
8146 * lisp.h:
8147 * w32heap.c:
8148 * emacs.c:
8149 * alloc.c: Replace all references of NO_UNION_TYPE with
8150 USE_LISP_UNION_TYPE.
8151
8152 * m/xtensa.h (NO_UNION_TYPE):
8153 * m/vax.h (NO_UNION_TYPE):
8154 * m/template.h (NO_UNION_TYPE):
8155 * m/sparc.h (NO_UNION_TYPE):
8156 * m/mips.h (NO_UNION_TYPE):
8157 * m/macppc.h (NO_UNION_TYPE):
8158 * m/m68k.h (NO_UNION_TYPE):
8159 * m/iris4d.h (NO_UNION_TYPE):
8160 * m/intel386.h (NO_UNION_TYPE):
8161 * m/ibms390x.h (NO_UNION_TYPE):
8162 * m/ibms390.h (NO_UNION_TYPE):
8163 * m/ibmrs6000.h (NO_UNION_TYPE):
8164 * m/ia64.h (NO_UNION_TYPE):
8165 * m/hp800.h (NO_UNION_TYPE):
8166 * m/arm.h (NO_UNION_TYPE):
8167 * m/amdx86-64.h (NO_UNION_TYPE):
8168 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
8169 defining it the same.
8170
81712008-07-10 Chong Yidong <cyd@stupidchicken.com>
8172
8173 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
8174
81752008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8176
8177 * fileio.c:
8178 * sysdep.c
8179 * systty.h:
8180 * m/ibmrs6000.h:
8181 * m/iris4d.h:
8182 * s/aix4-2.h:
8183 * s/freebsd.h:
8184 * s/gnu-linux.h:
8185 * s/hpux10-20.h:
8186 * s/hpux11.h:
8187 * s/netbsd.h:
8188 * s/sol2-3.h:
8189 * s/sol2-4.h:
8190 * s/sol2.h:
8191 * s/usg5-4.h:
8192 * s/vms.h: Remove references to unused variables.
8193
81942008-07-10 Andreas Schwab <schwab@suse.de>
8195
8196 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
8197 pattern before matching the generic family.
8198
81992008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8200
8201 * unexec.c:
8202 * s/vms.h:
8203 * s/usg5-4-2.h:
8204 * s/sol2-5.h:
8205 * s/freebsd.h:
8206 * s/darwin.h: Remove dead code.
8207
8208 * m/template.h:
8209 * m/sparc.h:
8210 * m/mips.h:
8211 * m/m68k.h:
8212 * m/iris4d.h:
8213 * m/intel386.h:
8214 * m/ibms390x.h:
8215 * m/ibms390.h:
8216 * m/ia64.h:
8217 * m/hp800.h:
8218 * m/arm.h:
8219 * m/amdx86-64.h: Remove dead code and references to unused
8220 and compiler defined symbols.
8221
8222 * unexmips.c:
8223 * unexelf.c: Remove references to desupported systems.
8224
8225 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
8226
8227 * m/powermac.h: Remove boilerplate comments.
8228 (NO_REMAP): Remove unused definition.
8229
8230 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
8231 define them.
8232
82332008-07-10 Kenichi Handa <handa@m17n.org>
8234
8235 * xfont.c (xfont_open): Log the reason of failure.
8236
82372008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
8238
8239 * fontset.c (fontset_get_font_group):
8240 * font.c (font_check_otf): Specify argument types.
8241
82422008-07-09 Kenichi Handa <handa@m17n.org>
8243
8244 * coding.c (detect_coding_utf_8): Set detect_info->found only when
8245 non-ASCII char is found.
8246
8247 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
8248 (reorder_font_vector): Change the arg preferred_family to font.
8249 Prefer the spec matching with font.
8250 (fontset_get_font_group): New function.
8251 (fontset_find_font): Change the format of an element of a realized
8252 fontset. Use fontset_get_font_group.
8253 (fontset_font): Try the current fontset, the default fontset, the
8254 fallbacks of the current fontset, and the fallbacks of the default
8255 fontset in this order.
8256 (face_for_char): Delete the shortcut to use the current font.
8257 (fontset_from_font): Don't set fonts for Latin in the fontset.
8258
8259 * font.h (font_make_object, font_match_p): Adjust prototypes.
8260
8261 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
8262
8263 * font.c (font_make_object): New arg entity and pixelsize.
8264 (font_check_otf_features, font_check_otf): New functions.
8265 (font_match_p): Check :lang, :script, and :otf properties.
8266
8267 * xfont.c (xfont_open): Adjust it for the change of
8268 font_make_object.
8269 (xfont_text_extents): Fix initial setting of metrics.
8270
8271 * ftfont.c (struct ftfont_info): New member index, delete member
8272 fc_charset_idx. Make the member order compatible with struct
8273 xftfont_info.
8274 (fc_charset_table): Change charset names to registry names.
8275 (ftfont_pattern_entity): Delete the args registry and
8276 fc_charset_idx. Change the value of :font-entity property
8277 to (FONTNAME . INDEX). Always set :registry property to
8278 `iso10646-1'.
8279 (struct ftfont_cache_data): New struct.
8280 (ftfont_lookup_cache): New arg for_face.
8281 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
8282 (ftfont_driver): Set the member otf_capability.
8283 (ftfont_get_charset): Adjust it for the change of
8284 fc_charset_table.
8285 (OTF_TAG_SYM): New macro.
8286 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
8287 for the change of fc_charset_table.
8288 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
8289 ftfont_pattern_entity. Add FC_INDEX to objset.
8290 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
8291 and ftfont_pattern_entity.
8292 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
8293 font_make_object, struct ftfont_info.
8294 (ftfont_has_char): Use ftfont_get_fc_charset.
8295 (ftfont_otf_features, ftfont_otf_capability): New functions.
8296 (ftfont_shape): Use ftfont_get_otf.
8297 (ftfont_text_extents): Fix initial setting of metrics.
8298
8299 * xftfont.c (struct xftfont_info): New member ft_size. Make the
8300 member order compatible with struct ftfont_info.
8301 (xftfont_open): Add FC_CHARSET to the pattern. Set
8302 xftfont_info->ft_size. Don't unlock the face. Check BDF
8303 properties if appropriate.
8304 (xftfont_close): Unlock the face.
8305 (xftfont_anchor_point, xftfont_shape): Deleted.
8306 (syms_of_xftfont): Don't set members anchor_point and shape of
8307 xftfont_driver.
8308
8309 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
8310 font_make_object.
8311
8312 * w32font.c (w32font_open): Adjust it for the change of
8313 font_make_object.
8314 (w32font_open_internal): Don't set properties of font_object here.
8315
83162008-07-08 Chong Yidong <cyd@stupidchicken.com>
8317
8318 * macfns.c (x_create_tip_frame):
8319 * w32fns.c (x_create_tip_frame):
8320 * xfns.c (x_create_tip_frame): Pass parameter argument to
8321 face-set-after-frame-default.
8322
8323 * xfaces.c (Finternal_merge_in_global_face): Save merged
8324 attributes for the default face back into the face vector.
8325
83262008-07-08 Andreas Schwab <schwab@suse.de>
8327
8328 * fontset.h: Declare fontset_from_font. Don't declare
8329 new_fontset_from_font and fontset_from_font_name.
8330 * xterm.c: Include "fontset.h".
8331 * Makefile.in (xterm.o): Update dependencies.
8332
83332008-07-08 Glenn Morris <rgm@gnu.org>
8334
8335 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
8336 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
8337
83382008-07-07 Chong Yidong <cyd@stupidchicken.com>
8339
8340 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
8341 (x_set_frame_parameters): Don't bind it.
8342
83432008-07-07 Juanma Barranquero <lekktu@gmail.com>
8344
8345 * w32fns.c (map_w32_filename): Declare extern.
8346
83472008-07-07 Jason Rumney <jasonr@gnu.org>
8348
8349 * w32term.c (WS_EX_LAYERED): Define if not already.
8350
83512008-07-06 Chong Yidong <cyd@stupidchicken.com>
8352
8353 * xfaces.c (set_font_frame_param): Don't try to set the font
8354 parameter if it is still unspecified in the lface.
8355
83562008-07-05 Chong Yidong <cyd@stupidchicken.com>
8357
8358 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
8359 face if it didn't already exist.
8360
8361 * xdisp.c (try_window_id): Give up if word-wrapping is on.
8362
83632008-07-05 Andreas Schwab <schwab@suse.de>
8364
8365 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
8366
83672008-07-05 Chong Yidong <cyd@stupidchicken.com>
8368
8369 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
8370 word-wrapping.
8371 (IT_DISPLAYING_WHITESPACE): New macro.
8372 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
8373 when word-wrapping. Simplify word-wrapping logic. Use correct
8374 pixel positions when saving copies of the iterator.
8375 (display_line): Use proper wrap point if the last character on a
8376 line was preceded by whitespace.
8377
83782008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
8379
8380 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
8381
83822008-07-04 Kenichi Handa <handa@m17n.org>
8383
8384 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
8385
8386 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
8387
83882008-07-02 Jason Rumney <jasonr@gnu.org>
8389
8390 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 8391 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
8392
8393 * xdisp.c (next_element_from_display_vector): Move assignment out
8394 of if statement.
8395
83962008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8397
8398 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8399
8400 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8401 (syms_of_fileio): Initialize and export them.
8402 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8403
8404 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8405 (Fsystem_move_file_to_trash): New function.
8406 (syms_of_w32fns): Export it to lisp.
8407
84082008-07-01 Jason Rumney <jasonr@gnu.org>
8409
8410 * w32font.c (w32font_text_extents): Don't count overhang as part
8411 of width.
8412
84132008-06-30 Miles Bader <miles@gnu.org>
8414
8415 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8416 Add `avoid_cursor_p' field.
8417
8418 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8419 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8420 (append_glyph, append_composite_glyph, produce_image_glyph)
8421 (append_stretch_glyph): Initialize avoid_cursor_p.
8422 (get_it_property): Rename from `get_line_height_property'.
8423 (x_produce_glyphs): Use get_it_property.
8424 (handle_line_prefix, push_display_prop): New functions.
8425 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8426 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8427 New variables.
8428 (syms_of_xdisp): Initialize them.
8429
84302008-06-30 Kenichi Handa <handa@m17n.org>
8431
8432 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8433 XftDefaultSubstitute (they are called in XftFontMatch).
8434 (xftfont_open): Fix args to ftfont_font_format.
8435
8436 * ftfont.c (fc_charset_table): New member lang.
8437 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 8438 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
8439 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8440 (ftfont_open): Fix args to ftfont_font_format.
8441 (ftfont_font_format): New arg filename.
8442
84432008-06-30 Chong Yidong <cyd@stupidchicken.com>
8444
8445 * xfaces.c (Finternal_merge_in_global_face): If default face was
8446 modified, realize it again. Update the font face attribute.
8447
84482008-06-29 Jason Rumney <jasonr@gnu.org>
8449
8450 * w32term.c (x_set_frame_alpha): Fix logic.
8451
84522008-06-29 Kenichi Handa <handa@m17n.org>
8453
8454 * fontset.c (Finternal_char_font): Return font-object instead of
8455 font-name.
8456
8457 * composite.c (get_composition_id): Fix the width calculation for TAB.
8458
84592008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8460
8461 * indent.c (Fvertical_motion): Properly handle float column arg.
8462
84632008-06-28 Jason Rumney <jasonr@gnu.org>
8464
8465 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8466 (pfnSetLayeredWindowAttributes): New function pointer.
8467 (w32_initialize): Initialize it when supported.
8468 (x_set_frame_alpha): New function.
8469
8470 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8471 (w32_frame_parm_handlers): Set alpha handler.
8472
8473 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8474
84752008-06-27 Jason Rumney <jasonr@gnu.org>
8476
8477 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8478 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8479 (w32_to_x_charset, x_to_w32_charset)
8480 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8481 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8482 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8483 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8484 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8485 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8486 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8487 (Qw32_charset_unicode): Remove.
8488 (syms_of_w32fns): Update for above changes.
8489
8490 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8491 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8492 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8493 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8494 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8495 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8496 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8497 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8498 (syms_of_w32font): Update for above changes.
8499
85002008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8501
8502 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8503 removed #if.
8504 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8505
85062008-06-26 Juanma Barranquero <lekktu@gmail.com>
8507 Eli Zaretskii <eliz@gnu.org>
8508
8509 * makefile.w32-in (LOCAL_FLAGS):
8510 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8511
8512 * sysdep.c (_spawnlp, _getpid):
8513 Declare with explicit _cdecl instead of _CRTAPI1.
8514
8515 * editfns.c (Fget_internal_run_time):
8516 Check for WINDOWSNT with #ifdef, not #if.
8517
85182008-06-26 Jason Rumney <jasonr@gnu.org>
8519
8520 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8521
8522 * w32term.c (x_draw_glyph_string_foreground)
8523 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8524 Use FONT_HANDLE macro.
8525 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8526
8527 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8528 (uniscribe_encode_char): Use FONT_HANDLE macro.
8529
8530 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8531 (w32font_text_extents): Use precast w32_font.
8532 (w32font_close): Free cached metrics.
8533 (w32font_open_internal): Allocate space for name on stack.
8534
85352008-06-26 Chong Yidong <cyd@stupidchicken.com>
8536
8537 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8538
85392008-06-26 Jason Rumney <jasonr@gnu.org>
8540
8541 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8542 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8543
85442008-06-26 Juanma Barranquero <lekktu@gmail.com>
8545
8546 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8547
85482008-06-26 Jason Rumney <jasonr@gnu.org>
8549
8550 * w32bdf.c, w32bdf.h: Remove obsolete files.
8551
8552 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8553
8554 * w32gui.h: Don't include w32bdf.h.
8555 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8556 Remove obsolete font support.
8557
8558 * w32font.h (struct w32font_info): Remove compat_w32_font.
8559 Add hfont member.
8560 (FONT_COMPAT): Remove obsolete macro.
8561
8562 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8563 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8564 (w32font_open_internal): Remove compat code. Set new hfont member.
8565 (Fx_select_font): Use new hfont member.
8566
8567 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8568 (uniscribe_encode_char): Use new hfont member.
8569
8570 * w32term.c (x_draw_glyph_string_foreground)
8571 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8572 (x_draw_glyph_string): Use metrics in w32font_info.
8573
85742008-06-26 Kenichi Handa <handa@m17n.org>
8575
8576 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8577
85782008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8579
8580 * unexnext.c:
8581 * m/ews4800.h:
8582 * m/hp9000s300.h:
8583 * m/ibm370aix.h:
8584 * m/mips-siemens.h:
8585 * m/ncr386.h:
8586 * m/next.h:
8587 * m/pmax.h:
8588 * m/powerpcle.h:
8589 * m/tandem-s2.h:
8590 * s/386bsd.h:
8591 * s/bsd386.h:
8592 * s/bsd4-1.h:
8593 * s/bsd4-2.h:
8594 * s/bsdos2-1.h:
8595 * s/bsdos2.h:
8596 * s/bsdos3.h:
8597 * s/bsdos4.h:
8598 * s/nextstep.h:
8599 * s/ultrix4-3.h:
8600 * s/usg5-0.h:
8601 * s/usg5-2-2.h:
8602 * s/usg5-2.h:
8603 * s/usg5-4-3.h:
8604 * s/ux4800.h:
8605 * s/uxpds.h:
8606 * s/uxpv.h: Remove support for obsolete systems.
8607 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8608 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8609 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8610 Remove, insert contents in s/aix4-2.h.
8611 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8612 * s/bsd4-3.h: Rename to ...
8613 * s/bsd-common.h: ... this.
8614 * data.c:
8615 * doc.c:
8616 * ecrt0.c:
8617 * emacs.c:
8618 * fileio.c:
8619 * floatfns.c:
8620 * keyboard.c:
8621 * mem-limits.h:
8622 * print.c:
8623 * process.c:
8624 * sysdep.c:
8625 * syssignal.h:
8626 * systty.h:
8627 * syswait.h:
8628 * term.c:
8629 * unexec.c:
8630 * unexelf.c:
8631 * unexhp9k800.c:
8632 * m/hp800.h:
8633 * m/ibmrs6000.h:
8634 * m/mips.h:
8635 * m/vax.h:
8636 * s/darwin.h:
8637 * s/freebsd.h:
8638 * s/gnu.h:
8639 * s/ms-w32.h:
8640 * s/msdos.h:
8641 * s/netbsd.h:
8642 * s/template.h: Remove references to obsolete variables.
8643
8644 * Makefile.in: Add dependencies for all unexec files.
8645 (admindir): Remove unused variable.
8646 (UNEXEC_SRC): Remove references.
8647
86482008-06-25 Chong Yidong <cyd@stupidchicken.com>
8649
8650 * xfns.c (x_default_font_parameter): If Xft is available, first
8651 try Monospace-12 for the default font.
8652
86532008-06-25 Jason Rumney <jasonr@gnu.org>
8654
8655 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8656
86572008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8658
8659 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8660
8661 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8662
86632008-06-25 Juanma Barranquero <lekktu@gmail.com>
8664
8665 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8666 <scroll-conservatively>: Fix typo in docstring.
8667
8668 * xselect.c (Fx_send_client_event): Doc fix.
8669
86702008-06-25 Kenichi Handa <handa@m17n.org>
8671
8672 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8673
8674 * font.c (font_parse_fcname): Remove unused variables.
8675 (font_sort_entites): Delete the arg SPEC. Caller changed.
8676 Fix for the case of ! best_only.
8677 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8678
8679 * lisp.h (Fstring_to_unibyte): EXFUN it.
8680
8681 * character.h (str_to_unibyte): Extern it.
8682
8683 * character.c (str_to_unibyte): New function.
8684
8685 * fns.c (Fstring_to_unibyte): New function.
8686 (syms_of_fns): Defsubr it.
8687
86882008-06-24 Kenichi Handa <handa@m17n.org>
8689
8690 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8691 DPI too.
8692 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8693
86942008-06-24 Andreas Schwab <schwab@suse.de>
8695
8696 * Makefile.in (${lispsource}loaddefs.el): Rename from
8697 ../lisp/loaddefs.el.
8698 (bootstrap-clean): Do what distclean does but don't remove
8699 Makefile.
8700 (distclean): Depend on bootstrap-clean and remove Makefile.
8701
87022008-06-24 Chong Yidong <cyd@stupidchicken.com>
8703
8704 * buffer.h (struct buffer): New member word_wrap.
8705
8706 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8707 word-wrap.
8708 (init_buffer_once): Initialize them.
8709
8710 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8711 line_wrap enum possessing three possible values.
8712
8713 * termopts.h: Replace truncate_partial_width_windows with
8714 Vtruncate_partial_width_windows.
8715
8716 * dispnew.c (direct_output_for_insert): Avoid direct output when
8717 inserting a space with word wrap on.
8718
8719 * indent.c (compute_motion): Obey integer values of
8720 truncate-partial-width-windows.
8721
8722 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8723 replacing truncate_partial_width_windows.
8724 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8725 truncate only if the window width is below that integer.
8726 (start_display, resize_mini_window, produce_stretch_glyph)
8727 (display_string, move_it_in_display_line_to): Use line_wrap.
8728 (back_to_previous_visible_line_start, reseat_1): Reset
8729 string_from_display_prop_p.
8730 (display_line): Extend default face to end of line when wrapping.
8731
87322008-06-24 Kim F. Storm <storm@cua.dk>
8733
8734 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8735 to wrap continued lines at word boundaries.
8736
87372008-06-24 Jason Rumney <jasonr@gnu.org>
8738
8739 * font.c (Ffont_face_attributes): Multiply pixel size before point
8740 conversion to avoid multiplying rounding error.
8741
87422008-06-23 Jason Rumney <jasonr@gnu.org>
8743
8744 * w32term.c (x_draw_glyph_string_background)
8745 (x_draw_glyph_string): Remove old bdf font code.
8746
8747 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8748
87492008-06-22 Kenichi Handa <handa@m17n.org>
8750
8751 * font.c (font_find_for_lface): Try the adstyle specified in
8752 the property of LFACE_FONT of LFACE (if any).
8753
87542008-06-21 Seiji Zenitani <zenitani@mac.com>
8755 Ryo Yoshitake <ryo@shiftmode.net>
8756
8757 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8758
87592008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8760
8761 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8762 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8763 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8764 (witness-emacs): Remove.
8765 (lisp, shortlisp): Move loaddefs.el earlier.
8766 (mostlyclean): Forget about witness-emacs.
8767
87682008-06-22 Glenn Morris <rgm@gnu.org>
8769
8770 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8771 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8772
87732008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8774
8775 * Makefile.in (PRECOMP): Remove.
8776 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8777 (witness-emacs): Run `compile-first'.
8778 (.el.elc): Use the new compile-onefile target.
8779
87802008-06-21 Kenichi Handa <handa@m17n.org>
8781
8782 * xftfont.c (xftfont_open): Handle QCembolden only when
8783 FC_EMBOLDEN is defined.
8784
87852008-06-21 Andreas Schwab <schwab@suse.de>
8786
8787 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8788 (.el.elc): Likewise.
8789
87902008-06-21 Miles Bader <miles@gnu.org>
8791
8792 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8793 build dir, not the lisp source dir.
8794
87952008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8796
8797 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8798 (bootstrapclean): Remove.
8799 (.el.elc): New rule.
8800 (PRECOMP): New var.
8801 (../lisp/subdirs.el): Remove.
8802 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8803 (witness-emacs): New target.
8804 (mostlyclean): Remove witness-emacs as well.
8805 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8806 Add witness-emacs dependency.
8807
88082008-06-20 Chong Yidong <cyd@stupidchicken.com>
8809
8810 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8811 defined by the font.
8812
88132008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8814
8815 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8816 (bootstrap-clean): New target that keeps TAGS around.
8817 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8818 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8819
88202008-06-20 Jason Rumney <jasonr@gnu.org>
8821
8822 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8823 Remove obsolete font code.
8824
8825 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8826 to determine language support.
8827
88282008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8829
8830 * sysdep.c (cfsetspeed): New fun extracted from the code.
8831 (cfmakeraw): Move before first use.
8832
88332008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8834
8835 * sysdep.c (cfmakeraw): Provide fallback implementation.
8836 (serial_configure): Provide fallback implementation of cfsetspeed.
8837
88382008-06-20 Kenichi Handa <handa@m17n.org>
8839
8840 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8841 the pattern.
8842
8843 * fontset.c (fontset_from_font): Copy font_spec before changing
8844 the elements.
8845
8846 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8847
88482008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8849
8850 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8851 for explicit `font' parameters.
8852
8853 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8854
88552008-06-19 Kenichi Handa <handa@m17n.org>
8856
8857 * frame.c: Include <ctype.h>.
8858 (x_set_font_backend): Allow spacing characters in the X resource
8859 for FontBackend.
8860
88612008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8862
8863 * w32fns.c, xfns.c (Qfont_param): New var.
8864 (syms_of_w32fns): Initialize it.
8865 (x_default_font_parameter): Record explicit `font' into
8866 `font-parameter'.
8867
88682008-06-18 Kenichi Handa <handa@m17n.org>
8869
8870 * font.c (font_parse_xlfd): Fix previous change.
8871 (font_parse_fcname): Don't use :fc-unknown-spec.
8872 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8873 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8874 (font_add_log): Prepend the driver name to the resulting fonts.
8875
8876 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8877 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8878 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8879
8880 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8881 (QCembolden): New variables.
8882 (syms_of_xftfont): DEFSYM them.
8883 (xftfont_open): Call XftFontMatch. Don't trust the result of
8884 XftTextExtents8 if the pixel_size is less than 5.
8885
88862008-06-18 Andreas Schwab <schwab@suse.de>
8887
8888 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8889 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8890
88912008-06-18 Jason Rumney <jasonr@gnu.org>
8892
8893 * w32font.c (w32font_list, w32font_match): Add logging.
8894
8895 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8896
88972008-06-17 Chong Yidong <cyd@stupidchicken.com>
8898
8899 * font.c (font_parse_fcname): Store divider characters for
8900 unknown-spec list. For known key symbols, intern using correct
8901 symbol name.
8902
89032008-06-17 Kenichi Handa <handa@m17n.org>
8904
8905 * xfaces.c (realize_default_face): If the frame is not on window
8906 system, set the fontset of face to nil.
8907
89082008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8909
8910 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8911
89122008-06-16 Juanma Barranquero <lekktu@gmail.com>
8913
8914 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8915 (build_font_name_from_vector): Delete externs.
8916
8917 * xfaces.c (struct font_name): Don't declare.
8918
89192008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8920
8921 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8922
89232008-06-16 Chong Yidong <cyd@stupidchicken.com>
8924
8925 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8926
89272008-06-16 Juanma Barranquero <lekktu@gmail.com>
8928
8929 * font.c (Ffont_spec): Fix usage in docstring.
8930 (Ffont_face_attributes): Doc fix.
8931
89322008-06-16 Andreas Schwab <schwab@suse.de>
8933
8934 * font.c (Ffont_face_attributes): Fix definition.
8935
89362008-06-16 Jason Rumney <jasonr@gnu.org>
8937
8938 * font.h (font_style_symbolic_from_value): Remove.
8939
8940 * font.c (font_style_symbolic_from_value): Remove.
8941 (font_style_symbolic): Revert to pre 2008-06-13 version.
8942
8943 * w32font.c (w32_to_fc_weight): New function.
8944 (w32font_full_name, logfont_to_fcname): Use it.
8945
89462008-06-16 Kenichi Handa <handa@m17n.org>
8947
8948 * font.c (font_check_object): Delete it.
8949 (font_clear_cache): Check if a font-object is alive.
8950 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8951 font-object to nil.
8952 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8953 (font_at): Don't call font_check_object.
8954 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8955
89562008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8957
8958 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8959
89602008-06-16 Chong Yidong <cyd@stupidchicken.com>
8961
8962 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8963
89642008-06-15 Chong Yidong <cyd@stupidchicken.com>
8965
8966 * font.c (font_parse_fcname): Only one decimal point.
8967 (font_unparse_fcname): Handle data in family and foundry indices
8968 as symbols, not strings.
8969 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8970
8971 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8972
8973 * font.h (font_unparse_gtkname): Add prototype.
8974
89752008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8976
8977 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8978
89792008-06-15 Andreas Schwab <schwab@suse.de>
8980
8981 * font.c (font_update_drivers): Fix crash when no drivers match.
8982
89832008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8984
8985 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8986 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8987
89882008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8989
8990 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8991
89922008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8993
8994 * process.c (Fserial_process_configure, Fprocess_send_eof):
8995 Use EQ to compare Lisp_Objects.
8996
89972008-06-13 Jason Rumney <jasonr@gnu.org>
8998
8999 * w32fns.c (Fw32_select_font): Remove old font API function.
9000
9001 * w32font.c (logfont_to_fcname): New function.
9002 (Fx_select_font): New font dialog function compatible with
9003 GTK/fontconfig version.
9004
9005 * font.c (font_style_symbolic_from_value): New function.
9006 (font_style_symbolic): Use it.
9007
9008 * font.h (font_style_symbolic_from_value): Declare new function.
9009
90102008-06-13 Juanma Barranquero <lekktu@gmail.com>
9011
9012 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
9013 <font-width-table>: Fix typos in docstrings.
9014
90152008-06-13 Daniel Engeler <engeler@gmail.com>
9016
9017 These changes add serial port access.
9018 * process.c: Add HAVE_SERIAL.
9019 (Fdelete_process, Fprocess_status, Fset_process_buffer)
9020 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
9021 (list_processes_1, select_wrapper, Fstop_process)
9022 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
9023 (status_notify): Modify to handle serial processes.
9024 [HAVE_SERIAL] (Fserial_process_configure)
9025 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
9026 New functions.
9027 * process.h (struct Lisp_Process): Add `type'.
9028 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
9029 New functions.
9030 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
9031 serial ports.
b71ac3dd 9032 (serial_open, serial_configure): New functions.
aac0c6e3
MR
9033 * w32.h: Add FILE_SERIAL.
9034 (struct _child_process): Add ovl_read, ovl_write.
9035
90362008-06-13 Kenichi Handa <handa@m17n.org>
9037
9038 * dispextern.h (enum lface_attribute_index): New member
9039 LFACE_FOUNDRY_INDEX.
9040
9041 * font.c (font_score): Delete arg alternate_families. Check only
9042 weight, slant, width, and size. Ignore the difference of alias
9043 style symbols.
9044 (font_sort_entites): Adjust for the above change. Reflect the
9045 order of font-driver to scores.
9046 (font_list_entities): Don't check alternate_familes here.
9047 (font_clear_prop): Handle foundry.
9048 (font_update_lface): Don't parse "foundry-family" form here.
9049 Handle FONT_FOUNDRY_INDEX.
9050 (font_find_for_lface): Likewise. Handle alternate families here.
9051 If registry is nil, try iso8859-1 and ascii-0.
9052 (font_open_for_lface): Pay attention to size in ENTITY.
9053 (font_open_by_name): Simplify by calling font_load_for_lface.
9054 (free_font_driver_list): Delete it.
9055 (font_update_drivers): Preserve the order of backends.
9056 (syms_of_font): Setting of sort_shift_bits adjusted for the change
9057 of font_score and font_sort_entites.
9058 (font_update_sort_order): Likewise.
9059
9060 * xfaces.c (LFACE_FOUNDRY): New macro.
9061 (check_lface_attrs): Check foundry.
9062 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
9063 (merge_face_vectors): Check foundry.
9064 (merge_face_ref): Likewise.
9065 (Finternal_set_lisp_face_attribute): Likewise.
9066 (x_update_menu_appearance): Likewise.
9067 (Finternal_get_lisp_face_attribute): Likewise.
9068 (lface_hash): Likewise.
9069 (lface_same_font_attributes_p): Likewise.
9070 (x_supports_face_attributes_p): Likewise.
9071 (tty_supports_face_attributes_p): Likewise.
9072 (Finternal_set_alternative_font_family_alist): Intern strings.
9073 (Finternal_set_alternative_font_registry_alist): Downcase strings.
9074 (realize_default_face): Set LFACE_FOUNDRY (lface).
9075
9076 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
9077 font-driver at first.
9078
9079 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
9080
90812008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9082
9083 * lread.c (Fload): Use xfree, not free on saved_doc_string.
9084
90852008-06-12 Jim Meyering <meyering@redhat.com>
9086
9087 Make unexec_free handle NULL the same way free does.
9088 * unexmacosx.c (unexec_free): Ignore a NULL argument.
9089
90902008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
9091
9092 * character.h (CHAR_TO_BYTE_SAFE): New macro.
9093 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
9094 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
9095 (WEAK_ALIAS): Simplify.
9096 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
9097 when searching a unibyte buffer.
9098
90992008-06-12 Chong Yidong <cyd@stupidchicken.com>
9100
9101 * xfns.c (Fx_select_font): Rename from x-font-dialog.
9102
91032008-06-12 Juanma Barranquero <lekktu@gmail.com>
9104
9105 * w32font.c: Include ctype.h.
9106
91072008-06-11 Jason Rumney <jasonr@gnu.org>
9108
9109 * w32font.c (w32font_encode_char): Detect missing glyphs that are
9110 misreported as space.
9111 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
9112 as aliases for registry iso10646-1.
9113
91142008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
9115
9116 * buffer.c (clone_per_buffer_values): Skip `name'.
9117
91182008-06-11 Chong Yidong <cyd@stupidchicken.com>
9119
9120 * font.c (font_parse_fcname): Fix last change; accept decimal
9121 points in font size.
9122
91232008-06-10 Jason Rumney <jasonr@gnu.org>
9124
9125 * w32uniscribe.c (add_opentype_font_name_to_list):
9126 Skip non unicode fonts.
9127
91282008-06-10 Chong Yidong <cyd@stupidchicken.com>
9129
9130 * xfns.c (Fx_font_dialog): New function.
9131
9132 * gtkutil.c (xg_dialog_response_cb): Rename from
9133 xg_file_response_callback.
9134 (pop_down_dialog): Rename from pop_down_file_dialog.
9135 (xg_get_file_name): Callers changed.
9136 (xg_get_font_name): New function.
9137
9138 * gtkutil.h (xg_get_font_name): Insert prototype.
9139
91402008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9141
9142 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
9143 x_underline_minimum_display_offset.
9144 (syms_of_xdisp): Declare it here rather than in xterm.c.
9145 * dispextern.h (underline_minimum_offset): Declare it.
9146 * w32term.c (x_draw_glyph_string): Use it.
9147 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
9148 (syms_of_xterm): Don't declare it any more.
9149 (x_draw_glyph_string): Adjust to the new name.
9150
91512008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
9152
9153 * xterm.c (x_underline_minimum_display_offset): New var.
9154 (x_draw_glyph_string): Use it.
9155 (syms_of_xterm): Declare it.
9156
91572008-06-10 Chong Yidong <cyd@stupidchicken.com>
9158
9159 * font.c (font_parse_fcname): Accept GTK-style font names too.
9160
91612008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9162
9163 * dired.c (file_name_completion): Don't return t if the match is exact
9164 but with different capitalization.
9165 * minibuf.c (Ftry_completion): Simplify.
9166
9167 * window.c (Vwindow_point_insertion_type): New var.
9168 (set_window_buffer): Use it.
9169 (syms_of_window): Init and export it to Lisp.
9170
91712008-06-10 Kenichi Handa <handa@m17n.org>
9172
9173 * font.h (font_intern_prop): Prototype adjusted.
9174
9175 * font.c (font_intern_prop): New arg force_symbol.
9176 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
9177 Adjust for the change of font_intern_prop.
9178
9179 * ftfont.c (ftfont_pattern_entity):
9180 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
9181 (w32_registry):
9182 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
9183 the change of font_intern_prop.
9184
91852008-06-09 Juanma Barranquero <lekktu@gmail.com>
9186
9187 * w32menu.c (digest_single_submenu): Declare extern.
9188
91892008-06-09 Jason Rumney <jasonr@gnu.org>
9190
9191 * w32term.c (x_make_frame_visible): Use alternate restore flags.
9192
9193 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
9194 (parse_single_submenu): Remove.
9195 (digest_single_submenu): Remove.
9196 (syms_of_w32menu): Don't initialise variables that have moved
9197 to menu.c.
9198 (set_frame_menubar): Sync with version in xmenu.c.
9199 (w32_menu_show): Sync with xmenu_show in xmenu.c.
9200
9201 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
9202 Make static again.
9203
92042008-06-09 Jason Rumney <jasonr@gnu.org>
9205
9206 Changes to w32 files related to the move of common menu code
9207 to menu.c on 2008-06-08 by Chong Yidong.
9208
9209 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
9210 defs to w32gui.h.
9211 (single_keymap_panes, push_menu_item, push_menu_pane):
9212 Make globally visible.
9213
9214 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
9215 (local_free, malloc_widget_value, free_widget_value)
9216 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
9217 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
9218 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
9219 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
9220 (menu_items, menu_items_allocated, menu_items_used)
9221 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
9222 (init_menu_items, finish_menu_items, discard_menu_items)
9223 (grow_menu_items, push_submenu_start, push_submenu_end)
9224 (push_left_right_boundary, push_menu_pane, push_menu_item)
9225 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
9226 (free_menubar_widget_tree_value, parse_single_submenu)
9227 (update_submenu_strings): Remove functions.
9228 (xmalloc_widget_value): Remove and declare extern.
9229
9230 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
9231 (OBJ1): Build it.
9232
9233 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
9234 (local_heap, local_alloc, local_free, malloc_widget_value)
9235 (free_widget_value): Define here.
9236
92372008-06-09 Kenichi Handa <handa@m17n.org>
9238
9239 * font.h (Qascii_0): Extern it.
9240
9241 * font.c (Qascii_0): New variable.
9242 (syms_of_font): DEFSYM it.
9243 (font_open_by_name): If the registry "iso8859-1" fails, try also
9244 "ascii-0".
9245
9246 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
9247
92482008-06-08 Kenichi Handa <handa@m17n.org>
9249
9250 * .gdbinit (xfont): New command.
9251
92522008-06-08 Andreas Schwab <schwab@suse.de>
9253
9254 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
9255 * Makefile.in (menu.o): Update dependencies.
9256
9257 * Makefile.in (obj): Always add menu.o.
9258 * emacs.c (main): Always call syms_of_menu.
9259 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
9260
92612008-06-08 Chong Yidong <cyd@stupidchicken.com>
9262
9263 * Makefile.in: Compile menu.c.
9264
9265 * lisp.h: Declare syms_of_menu.
9266
9267 * emacs.c (main): Call syms_of_menu.
9268
9269 * keyboard.h: Relocate platform-independent menu definitions from
9270 xmenu.c.
9271
9272 * menu.c: New file. Relocate platform-independent menu
9273 definitions from xmenu.c. Suggested by Adrian Robert.
9274
9275 * xmenu.c: Remove platform-independent menu definitions.
9276 (menu_items menu_items_inuse, menu_items_allocated)
9277 (menu_items_used, menu_items_n_panes)
9278 (menu_items_submenu_depth): Move to keyboard.h.
9279 (init_menu_items, finish_menu_items, unuse_menu_items)
9280 (discard_menu_items, restore_menu_items, save_menu_items)
9281 (grow_menu_items, push_submenu_start, push_submenu_end)
9282 (push_left_right_boundary, push_menu_pane, push_menu_item)
9283 (keymap_panes, single_keymap_panes, single_menu_item)
9284 (list_of_panes, list_of_items, find_and_call_menu_selection)
9285 (xmalloc_widget_value, free_menubar_widget_value_tree)
9286 (parse_single_submenu, digest_single_submenu)
9287 (update_submenu_strings): Move to menu.c.
9288
92892008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
9290
9291 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
9292
92932008-06-06 Miles Bader <miles@gnu.org>
9294
9295 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
9296 face, not frame default.
9297
92982008-06-05 Martin Rudalics <rudalics@gmx.at>
9299
9300 * window.c (pop_up_windows, pop_up_frames)
9301 (display_buffer_reuse_frames, Vpop_up_frame_function)
9302 (Vdisplay_buffer_function, Veven_window_heights)
9303 (Vspecial_display_buffer_names, Vspecial_display_regexps)
9304 (Vspecial_display_function, Vsame_window_buffer_names)
9305 (Vsame_window_regexps, split_height_threshold)
9306 (Vsplit_window_preferred_function): Move those vars to window.el.
9307 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
9308 (Fdisplay_buffer): Move those functions to window.el.
9309 (syms_of_window): Remove corresponding declarations.
9310 (display_buffer): New function.
9311 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
9312 * dispnew.c (Flast_nonminibuf_frame): New function.
9313 * buffer.c (Fpop_to_buffer): Move to window.el.
9314
93152008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9316
9317 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
9318
93192008-06-05 Kenichi Handa <handa@m17n.org>
9320
9321 * coding.c (detect_coding): Fix previous change.
9322 (detect_coding_system): Likewise.
9323
93242008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9325
9326 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
9327
9328 * keymap.c (Vminibuffer_local_filename_must_match_map):
9329 Rename from Vminibuffer_local_must_match_filename_map.
9330 (syms_of_keymap):
9331 * minibuf.c (Fcompleting_read): Adjust accordingly.
9332 * commands.h: Rename declaration as well.
9333
93342008-06-05 Kenichi Handa <handa@m17n.org>
9335
9336 * font.c (Ffont_spec): Don't use font_parse_family_registry for
9337 family name.
9338 (Ffont_put): Likewise.
9339
9340 * fontset.c (fontset_find_font): Call font_open_for_lface with the
9341 current font-spec.
9342
9343 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
9344 is unspecified.
9345
9346 * xfaces.c (realize_x_face): If the font-related face attributes
9347 are the same as those of default face, realize a new fontset from
9348 default->fontset.
9349 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
9350
93512008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9352
9353 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
9354 (move_it_in_display_line): New wrapper.
9355
9356 * window.c (window_scroll_pixel_based_preserve_x)
9357 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
9358 (window_scroll_pixel_based, window_scroll_line_based):
9359 Use them to preserve column positions.
9360 (syms_of_window): Initialize them.
9361
9362 * indent.c (Fvertical_motion): Extend first arg to allow passing an
9363 (HPOS . VPOS) pair.
9364
9365 * dispextern.h (move_it_in_display_line): Declare.
9366
93672008-06-05 Juanma Barranquero <lekktu@gmail.com>
9368
9369 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
9370 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
9371 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
9372
93732008-06-04 Juanma Barranquero <lekktu@gmail.com>
9374
9375 * window.c (Fset_window_parameter): Doc fix.
9376 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
9377
93782008-06-04 Joakim Verona <joakim@verona.se>
9379
9380 * window.h (struct window): Add new member window_parameters.
9381
9382 * window.c (Fwindow_parameters, Fwindow_parameter)
9383 (Fset_window_parameter): New defuns.
9384 (syms_of_window): Defsubr the new defuns.
9385 (make_window): Initialize window_parameters to nil.
9386
93872008-06-04 John Paul Wallington <jpw@pobox.com>
9388
9389 * eval.c (Fdefmacro): Doc fix.
9390
93912008-06-04 Kenichi Handa <handa@m17n.org>
9392
9393 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9394 Be sure to call setup_coding_system when we find a proper coding system.
9395 (detect_coding_system): Fix handling of coding->head_ascii.
9396
93972008-06-03 Andreas Schwab <schwab@suse.de>
9398
9399 * font.c (font_prop_validate_spacing): Fix last change.
9400
94012008-06-03 Kenichi Handa <handa@m17n.org>
9402
9403 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9404 (font_parse_fcname): Fix handling of unknown key.
9405
9406 * xfont.c (xfont_list): Try an alias.
9407
9408 * charset.c (char_charset): Return NULL if the arg charset_list is
9409 specified and C doesn't belong to any of them.
9410
94112008-06-02 Chip Coldwell <coldwell@redhat.com>
9412
9413 * font.c (font_pixel_size): Don't take cdr of an integer.
9414
94152008-06-02 Jim Meyering <meyering@redhat.com>
9416
9417 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9418 * alloc.c (xfree): Return right away for a NULL arg.
9419 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9420 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9421 * mac.c (create_apple_event_from_event_ref): Likewise.
9422 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9423 Likewise.
9424 * doprnt.c (doprnt1): Likewise.
9425 * frame.c (frame): Likewise.
9426 * keyboard.c (wipe_kboard): Likewise.
9427 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9428 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9429 * term.c (tty_default_color_capabilities, maybe_fatal)
9430 (delete_tty): Likewise.
9431 * w16select.c (string): Likewise.
9432 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9433 * w32bdf.c (w32_free_bdf_font): Likewise.
9434 * w32fns.c (w32_unload_font): Likewise.
9435 * w32font.c (w32font_close): Likewise.
9436 * window.c (size_window): Likewise.
9437 * xselect.c (receive_incremental_selection): Likewise.
9438 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9439 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9440 * w32.c (stat): Likewise.
9441
9442 Remove useless if-before-free tests.
9443 * editfns.c (Fset_time_zone_rule): Likewise.
9444 * lread.c (nosuffix): Likewise.
9445 * ralloc.c (get_bloc): Likewise.
9446 * regex.c (reg_free): Likewise.
9447 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9448 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9449 * xsmfns.c (smc_save_yourself_CB): Likewise.
9450
94512008-06-02 Kenichi Handa <handa@m17n.org>
9452
9453 * font.c (font_find_for_lface): Handle float font size.
9454 (font_open_for_lface): Likewise.
9455
9456 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9457 comparing the properties.
9458
94592008-06-01 Jason Rumney <jasonr@gnu.org>
9460
9461 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9462 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9463 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9464 Don't add empty script list.
9465 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9466
94672008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9468
9469 * Makefile.in (dot, dotdot): Remove, update users.
9470 ".." has been used elsewhere in the file for a long time.
9471 (LIBXT_STATIC): Remove conditional based on unused variable.
9472
94732008-06-01 Miles Bader <miles@gnu.org>
9474
9475 * xfaces.c (Vface_remapping_alist): New variable.
9476 (syms_of_xfaces): Initialize it.
9477 (enum named_merge_point_kind): New type.
9478 (struct named_merge_point): Add `named_merge_point_kind' field.
9479 (push_named_merge_point): Make cycle detection respect different
9480 named-merge-point kinds.
9481 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9482 Remove face-name alias resolution.
9483 (lface_from_face_name): New definition using
9484 `lface_from_face_name_no_resolve'.
9485 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9486 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9487 (get_lface_attributes): New definition that layers face-remapping on
9488 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9489 (lookup_basic_face): New function.
9490 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9491 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9492 `get_lface_attributes'.
9493 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9494 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9495 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9496
9497 * xdisp.c (init_iterator): Pass base_face_id through
9498 `lookup_basic_face' when we actually use it as a face-id.
9499 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9500 DEFAULT_FACE_ID.
9501
9502 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9503 lookup the initial face-id.
9504
9505 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9506
95072008-06-01 Juanma Barranquero <lekktu@gmail.com>
9508
9509 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9510 (Fremove_text_properties): Fix typos in docstrings.
9511
95122008-05-31 Kenichi Handa <handa@m17n.org>
9513
9514 * font.c (font_list_entities): Fix the car part of data to be
9515 stored in the cache.
9516
9517 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9518
95192008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9520
9521 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9522 Add a `test' argument so another predicate than `equal' can be used.
9523 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9524 (map_char_table): Remove unused vars `c' and `i'.
9525 * lisp.h (Foptimize_char_table): Adjust declaration.
9526 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9527
95282008-05-30 Kenichi Handa <handa@m17n.org>
9529
9530 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9531 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9532 defined.
9533
95342008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9535
9536 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9537 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9538 frame-local settings for the same variable.
9539
95402008-05-30 Kenichi Handa <handa@m17n.org>
9541
9542 * fontset.c (Ffont_info): Move to font.c.
9543 (syms_of_fontset): Delete defsubr of Sfont_info.
9544
9545 * font.c (font_style_to_value, font_score): Delete casting of the
9546 args to xstcasecmp.
9547 (register_font_driver): Increment num_font_drivers only when
9548 registering the driver globally.
9549 (Ffont_info): Move from fontset.c. Handle a font object too.
9550 (syms_of_font): Defsubr Sfont_info.
9551
95522008-05-29 Kenichi Handa <handa@m17n.org>
9553
9554 * coding.h (enum define_coding_utf8_arg_index): New enum.
9555 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9556 coding_attr_utf_bom.
9557 (enum utf_bom_type): Rename from utf_16_bom_type.
9558 (struct utf_16_spec): Adjust for the above change.
9559 (struct coding_system): Add utf_8_bom in `spec' union.
9560
9561 * coding.c (CODING_UTF_8_BOM): New macro.
9562 (enum coding_category): Delete coding_category_utf_8, add
9563 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9564 coding_category_utf_8_sig.
9565 (CATEGORY_MASK_UTF_8): Delete it.
9566 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9567 (CATEGORY_MASK_UTF_8_SIG): New macros.
9568 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9569 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9570 CATEGORY_MASK_UTF_8_SIG.
9571 (CATEGORY_MASK_UTF_8): New macro.
9572 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9573 (detect_coding_utf_8): Check BOM.
9574 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9575 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9576 (encode_coding_utf_16): Likewise.
9577 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9578 (detect_coding, detect_coding_system): Handle utf-8-auto.
9579 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9580 (syms_of_coding): Fix setting up of Vcoding_category_table.
9581
95822008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9583
9584 * process.c (Faccept_process_output): If `millisec' is non-nil,
9585 `seconds' default to 0.
9586 (wait_reading_process_output): Also return non-nil if we read output
9587 from a non-running process.
9588
95892008-05-29 Jason Rumney <jasonr@gnu.org>
9590
9591 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9592 `raster' specified.
9593 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9594 in the uniscribe backend, but disallow any font that has no
9595 unicode subrange support.
9596
95972008-05-29 Juanma Barranquero <lekktu@gmail.com>
9598
9599 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9600 Fix typos in docstrings.
9601
96022008-05-29 Kenichi Handa <handa@m17n.org>
9603
9604 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9605 (Fx_family_fonts): Set frame correctly.
9606
96072008-05-28 Jason Rumney <jasonr@gnu.org>
9608
9609 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9610
96112008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9612
9613 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9614 calling build_annotations.
9615
96162008-05-28 Juanma Barranquero <lekktu@gmail.com>
9617
9618 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9619 (Fencode_coding_string):
9620 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9621 <latin-extra-code-table>: Fix typos in docstrings.
9622 (syms_of_coding) <coding-system-alist>: Doc fix.
9623 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9624
96252008-05-28 Kenichi Handa <handa@m17n.org>
9626
9627 * fontset.c (Ffont_info): Don't call font_close_object.
9628
9629 * font.c (font_parse_family_registry): Use Ffont_put to validate
9630 foundry and family.
9631 (font_delete_unmatched): Don't check spacing.
9632 (font_list_entities): Add spacing to the spec to list fonts.
9633
9634 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9635 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9636
9637 * coding.c (encode_coding_raw_text): Fix previous change.
9638 (encode_coding_object): When the dst_object is a buffer and is
9639 different from src_object, move gap to PT.
9640
96412008-05-27 Chong Yidong <cyd@stupidchicken.com>
9642
9643 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9644
96452008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9646
9647 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9648 all branches. Compute it differently.
9649
9650 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9651
96522008-05-27 Juanma Barranquero <lekktu@gmail.com>
9653
9654 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9655 into "else if () ... else ...".
9656
96572008-05-27 Jason Rumney <jasonr@gnu.org>
9658
9659 * w32font.c (w32font_open_internal): Determine if glyph indices
9660 are likely to work here.
9661
96622008-05-27 Chong Yidong <cyd@stupidchicken.com>
9663
9664 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9665 draw overlap glyphs with appropriate highlighting.
9666
96672008-05-27 Kenichi Handa <handa@m17n.org>
9668
9669 * xfont.c (xfont_open): Fix calculation of font->average_width.
9670
96712008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9672
9673 * casefiddle.c (casify_object): Try to guess better whether the
9674 argument is a byte or a char.
9675
96762008-05-26 Andreas Schwab <schwab@suse.de>
9677
9678 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9679 Always send multiples of format size.
9680
9681 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9682
96832008-05-26 Jason Rumney <jasonr@gnu.org>
9684
9685 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9686 (compute_metrics): Don't set failure if we just cleared the cache.
9687 (w32_weight_table): Remove unused variable.
9688 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9689 backwards compatibility.
9690
96912008-05-25 Kenichi Handa <handa@m17n.org>
9692
9693 * w32term.c (x_draw_glyph_string):
9694 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9695
9696 * xfaces.c: Delete unused function prototypes.
9697 (xstrlwr, font_frame): Delete them.
9698 (clear_face_cache): Delete unused variable.
9699
9700 * xftfont.c (xftfont_open): Delete unused variable.
9701 If underline_thickness is not 1, adjust underline_position.
9702
9703 * ftxfont.c (ftxfont_open): Delete unused variable.
9704
9705 * fontset.c (face_for_char): Optimize for the case of no charset
9706 property.
9707
9708 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9709 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9710 (otf_open, font_otf_capability, generate_otf_features)
9711 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9712 Comment out by surrounding "#if 0" and "#endif" for the moment.
9713 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9714 (syms_of_font): Codes for accessing above commented out.
9715
97162008-05-24 Eli Zaretskii <eliz@gnu.org>
9717
9718 * w32proc.c: Include dispextern.h.
9719
9720 * w32.c: Include dispextern.h.
9721
97222008-05-23 Juanma Barranquero <lekktu@gmail.com>
9723
9724 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9725 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9726 Fix typos in docstrings.
9727
97282008-05-23 Jason Rumney <jasonr@gnu.org>
9729
9730 * xsmfns.c: Remove includes that are already included by config.h.
9731
97322008-05-23 Kenichi Handa <handa@m17n.org>
9733
9734 * charset.c (Qemacs, charset_emacs): New variables.
9735 (char_charset): Fix for non-Unicode characters.
9736 (syms_of_charset): Define charset_emacs.
9737
9738 * w32term.c (x_draw_glyph_string): Be sure to update
9739 s->underline_thickness and s->underline_position. Be sure to draw
9740 underline within the current line area.
9741
9742 * xterm.c (x_draw_glyph_string): Be sure to update
9743 s->underline_thickness and s->underline_position. Be sure to draw
9744 underline within the current line area.
9745
9746 * fontset.c: Delete unused variables and add casting for char *
9747 throughout the file.
9748 (fontset_font): Try the fallback fonts of the current fontset
9749 before consulting the default fontset.
9750
9751 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9752
9753 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9754
97552008-05-22 Jason Rumney <jasonr@gnu.org>
9756
9757 * font.c: Don't include strings.h.
9758
9759 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9760
9761 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9762 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9763 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9764 to call xstrcasecmp.
9765
9766 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9767
9768 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9769
9770 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9771
9772 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9773
97742008-05-22 Kenichi Handa <handa@m17n.org>
9775
9776 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9777
9778 * font.c (font_prop_validate_style): Adjust for the format
9779 change of font_style_table.
9780
9781 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9782 two args.
9783
9784 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9785 two args.
9786
97872008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9788
9789 * minibuf.c (keys_of_minibuf): Delete.
9790 * lisp.h (keys_of_minibuf): Delete.
9791 * emacs.c (main): Don't call keys_of_minibuf.
9792
97932008-05-22 Kenichi Handa <handa@m17n.org>
9794
9795 * ftfont.c (ftfont_resolve_generic_family): Rename from
9796 ftfont_list_generic_family. Return a single family for each
9797 generic family.
9798 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9799 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9800 Call font_add_log.
9801 (ftfont_match): Call font_add_log.
9802
9803 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9804 (FONT_DEBUG): Define it.
9805 (font_add_log): Extern it.
9806 (font_assert): Rename from xassert.
9807
9808 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9809 (xfont_list_family): Call font_add_log.
9810 (xfont_match): Likewise.
9811 (memq_no_quit): Delete.
9812
9813 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9814 call of Ffont_xlfd_name.
9815
9816 * xfaces.c (struct table_entry, slant_table, weight_table)
9817 (swidth_table): Move to font.c.
9818
9819 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9820 xassert are changed to font_assert. Delete many unused variables.
9821 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9822 New variables.
9823 (struct table_entry): Move from xfaces.c and modified.
9824 (weight_table, slant_table, width_table): Move from xfaces.c and
9825 contents adjusted for the change of struct table_entry.
9826 (font_style_to_value, font_style_symbolic): Adjust for the
9827 format change of font_style_table.
9828 (font_parse_family_registry): Don't overwrite existing foundry and
9829 family of font_spec.
9830 (font_score): Fix calculation of diff for sizes.
9831 (font_sort_entites): Call font_add_log.
9832 (font_delete_unmatched): Return a newly created list.
9833 (font_list_entities): Fix previous change. Call font_add_log.
9834 (font_matching_entity, font_open_entity, font_close_entity):
9835 Call font_add_log.
9836 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9837 (Finternal_set_font_style_table): Delete.
9838 (BUILD_STYLE_TABLE): New macro.
9839 (build_style_table): New function.
9840 (Vfont_log, font_log_env_checked): New variables.
9841 (font_add_log): New function.
9842 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9843 Declare Lisp variables "font-weight-table", "font-slant-table",
9844 "font-width-table", and "font-log". Initialize font_style_table.
9845
98462008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9847
9848 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9849
98502008-05-21 Seiji Zenitani <zenitani@mac.com>
9851 Ryo Yoshitake <ryo@shiftmode.net>
9852
9853 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9854 (Vframe_alpha_lower_limit): New variable.
9855 (x_set_alpha): New function.
9856
9857 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9858
9859 * xfns.c (x-create-frame, Qalpha):
9860 Initialize the frame parameter `alpha'.
9861 * xterm.c (OPAQUE, OPACITY): New.
9862 (x_set_frame_alpha): New function.
9863 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9864
9865 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9866 * w32fns.c (w32_frame_parm_handlers): Likewise.
9867
98682008-05-20 Jason Rumney <jasonr@gnu.org>
9869
9870 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9871 truetype fonts to opentype list.
9872
98732008-05-20 Juanma Barranquero <lekktu@gmail.com>
9874
9875 * fontset.c (Ffontset_info): Doc fix.
9876 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9877 <ignore-relative-composition>: Fix typos in docstrings.
9878
9879 * font.c (syms-of-font) <font-encoding-alist>:
9880 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9881 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9882 (Ffont_otf_alternates): Doc fixes.
9883
98842008-05-20 Kenichi Handa <handa@m17n.org>
9885
9886 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9887 font.h through out the file.
9888 (FONT_DRIVERS): Rename from FONTOBJ.
9889 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9890 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9891
9892 * emacs.c (main): Call syms_of_font unconditionally.
9893
9894 * font.h (find_font_encoding): Extern it.
9895
9896 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9897 fontset.c.
9898 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9899 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9900 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9901 only when HAVE_WINDOW_SYSTEM is defined.
9902 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9903 when HAVE_WINDOW_SYSTEM is defined.
9904
9905 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9906 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9907
9908 * xfaces.c: Include font.h unconditionally.
9909 (merge_face_ref, merge_face_vectors)
9910 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9911
99122008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9913
9914 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9915 indirect_variable.
9916 * eval.c (lisp_indirect_variable): New fun.
9917 (Fuser_variable_p): Use it.
9918
99192008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9920
9921 * lisp.h (indirect_variable):
9922 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9923 Use Lisp_Symbol pointers rather than Lisp_Object.
9924 Adjust callers.
9925 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9926 To this end, change calling-convention.
9927
9928 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9929 if some non-hidden buffers are selected by string&pred.
9930
99312008-05-19 Chong Yidong <cyd@stupidchicken.com>
9932
9933 * process.c (wait_reading_process_output): Always check status
9934 when in batch mode.
9935
99362008-05-19 Kenichi Handa <handa@m17n.org>
9937
9938 * font.c (font_list_entities): Fix handling of cache.
9939 (font_matching_entity): Likewise.
9940
9941 * ftfont.c (cs_iso8859_1): Delete.
9942 (ft_face_cache): New variable.
9943 (struct ftfont_info): New member fc_charset_idx.
9944 (ftfont_build_basic_charsets): Delete.
9945 (fc_charset_table): New variable.
9946 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9947 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9948 Callers changed.
9949 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9950 (ftfont_spec_pattern): New argument fc_charset_idx.
9951 Check registry more rigidly. Change callers.
9952 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9953 change of :font-entity property of the font.
9954
9955 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9956 property of the font.
9957
99582008-05-18 Juanma Barranquero <lekktu@gmail.com>
9959
9960 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9961 (Funencodable_char_position, Fcheck_coding_systems_region)
9962 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9963 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9964 (Ffind_operation_coding_system, Fset_coding_system_priority)
9965 (Fcoding_system_eol_type): Doc fixes.
9966
99672008-05-17 Glenn Morris <rgm@gnu.org>
9968
9969 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9970
99712008-05-16 Eli Zaretskii <eliz@gnu.org>
9972
9973 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9974 and st_gid.
9975
9976 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9977 HAVE_WINDOW_SYSTEM is not defined.
9978
9979 * xfaces.c (merge_face_ref, merge_face_vectors)
9980 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9981 HAVE_WINDOW_SYSTEM is defined.
9982 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9983
99842008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9985
9986 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9987
99882008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9989
9990 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9991
99922008-05-15 Kenichi Handa <handa@m17n.org>
9993
9994 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
9995 preference.
9996
99972008-05-15 Glenn Morris <rgm@gnu.org>
9998
9999 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
10000
100012008-05-15 Chong Yidong <cyd@stupidchicken.com>
10002
10003 * fns.c (init_fns): Don't initialize weak_hash_tables here.
10004 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
10005
10006 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
10007
100082008-05-15 Kenichi Handa <handa@m17n.org>
10009
10010 * ftfont.c (ftfont_list): Downcase family name to check generic
10011 families.
10012
10013 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
10014 font-spec for QCfont value.
10015
10016 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
10017 buffer. Check the return value of it.
10018
100192008-05-14 Jason Rumney <jasonr@gnu.org>
10020
10021 * w32term.c (w32_get_glyph_overhangs): Remove.
10022 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
10023
100242008-05-14 Kenichi Handa <handa@m17n.org>
10025
10026 * font.c (font_prop_validate): Make nil a valid value.
10027 (font_clear_cache): Check if the cached vector of entities is nil
10028 or not.
10029
100302008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10031
10032 * emacs.c (main_thread): Conditionalize on
10033 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10034 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
10035
10036 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
10037 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
10038 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10039
100402008-05-14 Kenichi Handa <handa@m17n.org>
10041
10042 * coding.c (detect_coding_iso_2022): Ignore a coding category that
10043 has no corresponding coding system.
10044
100452008-05-14 Jason Rumney <jasonr@gnu.org>
10046
10047 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
10048
10049 * w32font.h (w32font_open_internal): Update declaration.
10050
10051 * w32font.c (w32font_open_internal): Change last argument from
10052 w32font_info struct to font object. Fill in font object from
10053 font_entity. Get Outline metrics if possible. Use them to
10054 calculate underline position and thickness. Use xlfd name as name
10055 property. Don't set codepage.
10056 (w32font_open): Pass font_object to w32font_open_internal. Don't
10057 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
10058 (w32font_draw): Use s->font.
10059 (clear_cached_metrics): Don't clear non-existent blocks.
10060
10061 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
10062 font was not found.
10063 (x_draw_glyph_string): Use underline position and thickness from font.
10064
10065 * w32uniscribe.c (uniscribe_open): Pass font_object to
10066 w32font_open_internal.
10067
100682008-05-14 Kenichi Handa <handa@m17n.org>
10069
10070 These changes are to delete all legacy font-handling codes, and
10071 make Emacs use only font-backends.
10072
10073 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
10074 (frame.o, image.o, print.o): Depend on $(FONTSRC).
10075
10076 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
10077
10078 * charset.h (Vcharset_non_preferred_head)
10079 (Vcurrent_iso639_language): Extern them.
10080
10081 * charset.c (Vcharset_non_preferred_head): New variable.
10082 (Vcurrent_iso639_language): New variable.
10083 (syms_of_charset): Declare it as a Lisp variable.
10084 (char_charset): Don't check non preferred charsets. As a last
10085 resort, return charset_unicode.
10086 (Fset_charset_priority): Update Vcharset_non_preferred_head.
10087
10088 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
10089 conditionals. Don't check enable_font_backend. Delete all codes
10090 used only when USE_FONT_BACKEND is not defined.
10091
10092 * dispextern.h (struct glyph_string): Change type of `font' to
10093 `struct font *'.
10094 (struct glyph_string): New member underline_position and
10095 underline_thickness.
10096 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
10097 (struct face): Change type of `font' to `struct font *'. Remove
10098 members `font_name', `font_info_id'.
10099 (per_char_metric, encode_char): Delete externs.
10100 (calc_pixel_width_or_height): Adjust the prototype.
10101
10102 * emacs.c (enable_font_backend): Delete extern.
10103 (main): Don't set enable_font_backend. Don't check the command
10104 line argument "-disable-font-backend".
10105
10106 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
10107 (enum font_property_index): New members FONT_DPI_INDEX,
10108 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
10109 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
10110 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
10111 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
10112 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
10113 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
10114 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
10115 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
10116 (struct font_spec, struct font_entity): New structs.
10117 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
10118 (struct font): Many members from old "struct font_info" moved to
10119 here. Members font and entity deleted.
10120 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
10121 the new font-related objects.
10122 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
10123 (CHECK_FONT_GET_OBJECT): Likewise.
10124 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
10125 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
10126 (struct font_driver): New members case_sensitive anc check. Type
10127 of the member list and open changed.
10128 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
10129 (font_symbolic_width, font_find_object, font_get_spec)
10130 (font_set_lface_from_name): Delete extern.
10131 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
10132
10133 * font.c: Include <strings.h>.
10134 (enable_font_backend): Delete it.
10135 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
10136 (CHECK_VALIDATE_FONT_SPEC): Delete it.
10137 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
10138 (null_string): Delete it.
10139 (null_vector): Make it static.
10140 (font_family_alist): Delete it.
10141 (Qnormal): Extern it.
10142 (QCextra, QClanguage): Delete it.
10143 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
10144 (font_make_spec, font_make_entity, font_make_object)
10145 (font_intern_prop): Renamed from intern_downcase. Don't downcase
10146 the string. Callers changed.
10147 (font_pixel_size): Adjusted for the format change of font-related
10148 objects.
10149 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
10150 (font_style_to_value, font_style_symbolic): New function.
10151 (build_font_family_alist): Delete it.
10152 (font_registry_charsets): Use Fassoc_string instead of
10153 assq_no_quit.
10154 (font_prop_validate_symbol): Don't return null_string.
10155 (font_prop_validate_style): Adjusted for the change of
10156 style-related values in a font vector.
10157 (font_property_table): Delete entries for QClanguage and
10158 QCantialias, add entries for QCavgwidth.
10159 (get_font_prop_index): Delete the 2nd argument FROM.
10160 (font_prop_validate): Arguments changed.
10161 (font_put_extra): Adjusted for the change of font-related objects.
10162 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
10163 (font_parse_fcname, font_unparse_fcname)
10164 (font_prepare_composition): Likewise.
10165 (font_parse_family_registry): Renamed from font_merge_old_spec.
10166 (otf_open): Delete the 1st arg entity.
10167 (font_otf_capability): Adjusted for the above change.
10168 (font_score): New arg alternate_families. Adjusted for the change
10169 of font-related objects.
10170 (font_sort_entites): New arg best_only.
10171 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
10172 Delete them.
10173 (font_match_p): Check alternate families.
10174 (font_find_object): Delete it.
10175 (font_check_object): New function.
10176 (font_clear_cache): Adjusted for the change of font-related objects.
10177 (font_delete_unmatched): New arg.
10178 (font_list_entities): Call font_driver->list with a spec that
10179 doesn't specify style-related properties.
10180 (font_matching_entity): Arguments changed. Caller changed.
10181 (font_open_entity): Adjusted for the change of font-related objects.
10182 (font_close_object, font_has_char, font_encode_char)
10183 (font_get_name, font_get_spec): Likewise.
10184 (font_spec_from_name, font_clear_prop, font_update_lface):
10185 New functions.
10186 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
10187 (font_prepare_for_face, font_done_for_face, font_open_by_name)
10188 (font_at): Adjusted for the change of font-related objects.
10189 (font_range): New function.
10190 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
10191 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
10192 (Fcopy_font_spec, Fmerge_font_spec): New function.
10193 (Ffont_family_list): Renamed from list-families.
10194 (Finternal_set_font_style_table): Arguments changed.
10195 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
10196 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
10197 change of font-related objects.
10198 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
10199
10200 * fontset.h (struct font_info): Delete it. Most members go to
10201 struct font.
10202 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
10203 (enum FONT_SPEC_INDEX): Delete it.
10204 (font_info, list_fonts_func, load_font_func, query_font_func)
10205 (set_frame_fontset_func, find_ccl_program_func)
10206 (get_font_repertory_func, new_fontset_from_font_name): Delete
10207 externs.
10208 (fontset_from_font_name): Extern it.
10209 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
10210 (FONT_INFO_FROM_FACE): Deleted.
10211 (face_for_font): Adjust prototype.
10212
10213 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
10214 conditionals. Don't check enable_font_backend. Delete all codes
10215 used only when USE_FONT_BACKEND is not defined.
10216 (get_font_info_func, list_font_func, load_font_func)
10217 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
10218 (get_font_repertory_func): Delete them.
10219 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
10220 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
10221 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
10222 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
10223 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
10224 (fontset_compare_rfontdef): New function.
10225 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
10226 rfont-defs by qsort. Adjusted for the change of font-group vector.
10227 (load_font_get_repertory): Deleted.
10228 (fontset_find_font): Use new macros to ref/set elements of
10229 font-def and rfont-def.
10230 (fontset_font): Fix the timing of remembering that no font for C.
10231 (free_face_fontset): Do nothing if the face has no fontset.
10232 (face_suitable_for_char_p): Use new macros to ref/set elements of
10233 rfont-def.
10234 (face_for_char): Likewise. Call face_for_char with font_object.
10235 (fs_load_font): Delete. Delete #pragma surrounding it.
10236 (fs_query_fontset): Use strcasecmp instead of strcmp.
10237 (generate_ascii_font_name): Adjusted for the format change of
10238 font-spec.
10239 (Fset_fontset_font): Likewise. Use new macros to set elements of
10240 font-def.
10241 (Fnew_fontset): Use font_unparse_xlfd to generate
10242 FONTSET_ASCII (fontset).
10243 (new_fontset_from_font_name): Deleted.
10244 (fontset_from_font): Renamed from new_fontset_from_font. Check if
10245 a fontset is already created for the font. FIx updating of
10246 Vfontset_alias_alist.
10247 (fontset_ascii_font): Deleted.
10248 (Ffont_info): Adjusted for the format change of font-spec.
10249 (Finternal_char_font): Likewise.
10250 (Ffontset_info): Likewise.
10251 (syms_of_fontset): Don't check load_font_func.
10252
10253 * fns.c (internal_equal): Handle PREV_FONT.
10254
10255 * frame.h: Delete USE_FONT_BACKEND conditional.
10256
10257 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
10258 conditionals. Don't check enable_font_backend. Delete all codes
10259 used only when USE_FONT_BACKEND is not defined.
10260 (x_set_font): Call x_new_font, not x_new_fontset2.
10261 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
10262 already set for the frame.
10263
10264 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
10265 a font-entity by font_make_entity. Use font_intern_prop instead
10266 of intern_downcase. Use FONT_SET_STYLE to set a style-related
10267 font property. If a font is scalable, set avgwidth property to 0.
10268 Set font-entity property by font_put_extra.
10269 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
10270 (ffont_driver): Adjusted for the change of struct font_driver.
10271 (ftfont_spec_pattern): New function.
10272 (ftfont_list): Return a list, not vector.
10273 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
10274 (ftfont_list_family): Don't downcase names.
10275 (ftfont_free_entity): Deleted.
10276 (ftfont_open): Return a font-object. Adjusted for the change of
10277 struct font. Get underline_thickness and underline_position from
10278 font property. Don't update dpyinfo->smallest_font_height and
10279 dpyinfo->smallest_char_width.
10280 (ftfont_close): Don't free `struct font'.
10281 (ftfont_has_char): Adjusted for the format change of font-entity.
10282 (ftfont_encode_char, ftfont_text_extents): Likewise.
10283
10284 * ftxfont.c (ftxfont_list): Return a list, not vector.
10285 (ftxfont_open): Return a font-object. Adjusted for the change of
10286 struct font. Get underline_thickness and underline_position from
10287 font property. Don't update dpyinfo->smallest_font_height and
10288 dpyinfo->smallest_char_width.
10289 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
10290 (ftxfont_draw): Adjusted for the change of struct font.
10291
10292 * image.c (image_ascent): Don't include "charset.h". Include
10293 "character.h" and "font.h".
10294
10295 * lisp.h (enum pvec_type): New member PREV_FONT.
10296 (Fassoc_string): EXFUN it.
10297
10298 * print.c: Include font.h.
10299 (print_object): Handle font-related objects.
10300
10301 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
10302 conditionals. Don't check enable_font_backend. Delete all codes
10303 used only when USE_FONT_BACKEND is not defined.
10304 (handle_auto_composed_prop): Do nothing if it->f is not on a
10305 window system. Check how many following characters can be
10306 displayed by the same font.
10307 (calc_pixel_width_or_height): Type of the 4th arg is changed to
10308 'struct font *'.
10309 (get_char_face_and_encoding): Assign the whole encoding task to
10310 the `encode-char' method of a font driver.
10311 (fill_composite_glyph_string): Adjusted for the change of `struct
10312 face' and `struct glyph_string'.
10313 (fill_glyph_string): Likewise.
10314 (get_per_char_metric): Arguments changed.
10315 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
10316 and `struct glyph_string'.
10317 (produce_stretch_glyph, calc_line_height_property)
10318 (x_produce_glyphs): Likewise.
10319
10320 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
10321 conditionals. Don't check enable_font_backend. Delete all codes
10322 used only when USE_FONT_BACKEND is not defined. Use
10323 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
10324 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
10325 (Qp): Extern them.
10326 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
10327 Deleted.
10328 (struct font_name): Deleted.
10329 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
10330 (compare_fonts_by_sort_order): New function.
10331 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
10332 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
10333 Deleted.
10334 (Fx_family_fonts): Use font_list_entities, and sort fonts by
10335 compare_fonts_by_sort_order.
10336 (Fx_font_family_list): Call Ffont_family_list.
10337 (face_numeric_value, face_numeric_weight, face_numeric_slant)
10338 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
10339 (face_symbolic_slant, face_symbolic_swidth)
10340 (split_font_name_into_vector, build_font_name_from_vector)
10341 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
10342 (font_rescale_ratio, split_font_name, build_font_name)
10343 (free_font_names, sort_fonts, x_face_list_fonts)
10344 (face_font_available_p, sorted_font_list, cmp_font_names)
10345 (font_list_1, concat_font_list, font_list, remove_duplicates):
10346 Deleted.
10347 (Fx_list_fonts): Use Ffont_list.
10348 (LFACE_AVGWIDTH): Deleted.
10349 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
10350 by FONTP.
10351 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
10352 (set_lface_from_font_name): Delete it.
10353 (set_lface_from_font): Renamed from
10354 set_lface_from_font_and_fontset. Caller changed. Don't set
10355 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
10356 for face.
10357 (merge_face_vectors): Copy font-spec if necessary.
10358 Clear properties of the font-spec if necessary.
10359 (merge_face_ref): Clear properties of the font-spec if necessary.
10360 (Finternal_set_lisp_face_attribute): Likewise.
10361 (set_font_frame_param): Use font_load_for_lface to load a
10362 font-object, and call Fmodify_frame_parameters with it.
10363 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
10364 font name by Ffont_xlfd_name.
10365 (Finternal_lisp_face_attribute_values): Don't check QCweight,
10366 QCslant, and QCwidth.
10367 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
10368 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
10369 Compare fonts by EQ.
10370 (lookup_non_ascii_face): Deleted.
10371 (face_for_font): The 2nd argument changed.
10372 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
10373 Check atomic font properties by case insensitive.
10374 (realize_non_ascii_face): Set face->overstrike correctly.
10375 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
10376 (dump_realized_face): Get font name from
10377 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
10378
10379 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
10380 conditionals. Don't check enable_font_backend. Delete all codes
10381 used only when USE_FONT_BACKEND is not defined.
10382 (xic_create_xfontset): Original code deleted and renamed from
10383 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
10384 (x_make_gc): Don't set GCFont in GCs.
10385 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
10386 opened by "fixed".
10387 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10388 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10389 get_font_repertory_func.
10390
10391 * xfont.c: Include <stdlib.h> and "ccl.h".
10392 (struct xfont_info): New structure.
10393 (xfont_query_font): Deleted.
10394 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10395 moved from xterm.c.
10396 (xfont_driver): Adjusted for the change of struct font_driver.
10397 (compare_font_names): New function.
10398 (xfont_list_pattern): Sort font names case insensitively. Make
10399 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10400 (xfont_list): Return a list, not vector.
10401 (xfont_match): If the font doesn't have QCname property, generate
10402 a name from the other font properties.
10403 (xfont_open): Return a font-object. Adjusted for the change of
10404 struct font. Get underline_thickness and underline_position from
10405 font property. Don't update dpyinfo->smallest_font_height and
10406 dpyinfo->smallest_char_width.
10407 (xfont_close): Don't free struct font.
10408 (xfont_prepare_face): Adjusted for the change of struct font.
10409 (xfont_done_face): Deleted.
10410 (xfont_has_char): Adjusted for the change of struct font.
10411 (xfont_encode_char, xfont_draw): Likewise.
10412 (xfont_check): New function.
10413
10414 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10415 callback function.
10416 (xftfont_match): Adjusted for the format change of font-entity.
10417 (xftfont_open): Adjusted for the format change of font-entity and
10418 font-object. Adjusted for the change of struct font. Return a
10419 font-object. Don't update dpyinfo->smallest_font_height and
10420 dpyinfo->smallest_char_width.
10421 (xftfont_close): Block input while calling XftFontClose.
10422 (xftfont_prepare_face): Don't block input while calling
10423 xftfont_get_colors. Adjusted for the change of struct font.
10424 (xftfont_shape): Return value of error case fixed.
10425
10426 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10427
10428 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10429 conditionals.
10430 (FONT_WIDTH): Return (f)->max_width.
10431 (struct x_display_info): Delete member `font'.
10432 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10433 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10434 (struct x_output): Change type of `font' to `struct font *'.
10435
10436 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10437 conditionals. Don't check enable_font_backend. Delete all codes
10438 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10439 (x_per_char_metric, x_encode_char): Deleted.
10440 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10441 (x_compute_glyph_string_overhangs): Adjusted for the change of
10442 `struct face'.
10443 (x_draw_glyph_string_foreground)
10444 (x_draw_composite_glyph_string_foreground): Likewise.
10445 (x_draw_glyph_string): Likewise. Use font->underline_position and
10446 font->underline_thickness.
10447 (x_new_font): Renamed from x_new_fontset2.
10448 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10449 (x_check_font): Call `check' method of a font driver.
10450 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10451 (x_query_font, x_get_font_repertory): Deleted.
10452 (x_find_ccl_program): Renamed and moved to xfont.c.
10453 (x_redisplay_interface): Adjusted for the change of `struct
10454 redisplay_interface'.
10455
10456 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10457 conditionals. Don't check enable_font_backend. Delete all codes
10458 used only when USE_FONT_BACKEND is not defined. Surround non-used
10459 code by "#ifdef OLD_FONT" and "endif".
10460 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10461
10462 * w32font.h (struct w32font_info): New member.
10463 (FONT_COMPAT): New macro.
10464 (w32font_open_internal): Prototype adjusted.
10465
10466 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10467 OLD_FONT" and "endif".
10468
10469 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10470 conditionals. Don't check enable_font_backend. Delete all codes
10471 used only when USE_FONT_BACKEND is not defined.
10472 (w32font_open): Return a font-object. Make a font-object by
10473 font_make_object. Adjusted for the change of struct w32font_info.
10474 (w32font_close): Don't free struct font. Adjusted for the change
10475 of struct w32font_info.
10476 (w32font_encode_char, w32font_text_extents, w32font_draw):
10477 Adjusted for the change of struct w32font_info.
10478 (w32font_draw): Likewise.
10479 (w32font_list_internal): Return a list, not vector.
10480 (w32font_open_internal): Change the 4th arg to font-object.
10481 Adjusted for the change of struct w32font_info and font-object format.
10482 (add_font_name_to_list): Don't downcase names.
10483 (w32_enumfont_pattern_entity): Make a font-entity by
10484 font_make_entity. Adjusted for the format change of font-entity.
10485 Use FONT_SET_STYLE to set a style-related font property. If a
10486 font is scalable, set avgwidth property to 0. Set font-entity
10487 property by font_put_extra.
10488 (font_matches_spec): Adjusted for the format change of font-entity.
10489 (w32_weight_table, w32_decode_weight): New variables.
10490 (w32_encode_weight): New function.
10491 (fill_in_logfont): Adjusted for the format change of font-spec.
10492 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10493 weight value.
10494 (w32font_driver): Adjusted for the change of struct font_driver.
10495
10496 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10497 conditionals. Don't check enable_font_backend. Surround non-used
10498 code by "#ifdef OLD_FONT" and "endif".
10499 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10500 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10501
10502 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10503 conditionals. Don't check enable_font_backend. Delete all codes
10504 used only when USE_FONT_BACKEND is not defined. Surround non-used
10505 code by "#ifdef OLD_FONT" and "endif".
10506
10507 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10508 (uniscribe_open): Return value changed to font-object.
10509 Adjusted for the format change of font-object.
10510 (uniscribe_otf_capability): Adjusted for the change of struct font.
10511 (add_opentype_font_name_to_list): Don't downcase names.
10512 (uniscribe_font_driver): Adjusted for the change of struct
10513 font_driver.
10514
105152008-05-13 Chong Yidong <cyd@stupidchicken.com>
10516
10517 * dispnew.c (update_frame_1): Check if tty output is still valid
10518 before flushing it.
10519
105202008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10521
10522 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10523 to Gtk+ menus.
10524
105252008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10526
10527 * dired.c (file_name_completion): Tweak the code so as to always do it
10528 in a single pass. Tighten the scope of some variables.
10529
10530 * dired.c (Qdefault_directory): New var.
10531 (file_name_completion): Use it instead of Fexpand_file_name.
10532 (syms_of_dired): Initialize it.
10533
105342008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10535
10536 * fileio.c (double_dollars): Remove dead code.
10537
105382008-05-10 Eli Zaretskii <eliz@gnu.org>
10539
10540 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10541 Mention w32-get-true-file-attributes in doc string.
10542
10543 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10544
105452008-05-09 Glenn Morris <rgm@gnu.org>
10546
10547 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10548 2008-04-23.
10549
105502008-05-09 Eli Zaretskii <eliz@gnu.org>
10551
10552 Support for reporting owner and group of each file on MS-Windows:
10553 * dired.c (stat_uname, stat_gname): New functions, with special
10554 implementation for w32.
10555 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10556
10557 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10558 (dflt_group_name): New static variable.
10559 (dflt_group): Rename from the_group.
10560 (init_user_info): Init dflt_group fields. Get user's group name
10561 from LookupAccountSid.
10562 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10563 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10564 New initialization states.
10565 (globals_of_w32): Initialize them to zero. Initialize the default
10566 group name to "None".
10567 (GetFileSecurity_Name): New global var, the name of the function
10568 to call for GetFileSecurity.
10569 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10570 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10571 (get_file_security, get_security_descriptor_owner)
10572 (get_security_descriptor_group, is_valid_sid)
10573 (get_file_security_desc, get_rid, get_name_and_id)
10574 (get_file_owner_and_group): New functions.
10575 (stat): Use get_file_security_desc and get_file_owner_and_group to
10576 report the owner and primary group of each file. Don't ignore the
10577 high 32 bits of file's size, now that st_size is 64-bit wide.
10578 Fix test when to get true file attributes.
10579 (init_user_info): Use get_rid instead of equivalent inline code.
10580 (fstat): Don't ignore the high 32 bits of file's size.
10581
105822008-05-09 Chong Yidong <cyd@stupidchicken.com>
10583
10584 * image.c (png_load): Use correct bit-depth for setting background
10585 color.
10586
105872008-05-08 Eli Zaretskii <eliz@gnu.org>
10588
10589 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10590 epa-hook.elc.
10591
105922008-05-08 Juanma Barranquero <lekktu@gmail.com>
10593
10594 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10595
105962008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10597
10598 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10599 because the original parameters are in pure storage now.
10600 (mac_window): Remove unused params. Update callers.
10601
106022008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10603
10604 * lread.c (substitute_object_recurse): Use lower-level primitives.
10605 Don't signal errors when traversing sub-char-tables.
10606 Don't loop over all the possible characters when traversing char-tables.
10607
10608 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10609 just like we do in print.c.
10610
106112008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10612
10613 * minibuf.c (Ftry_completion): Remove code left over from when we used
10614 scmp instead of Fcompare_strings.
10615
106162008-05-04 Juanma Barranquero <lekktu@gmail.com>
10617
10618 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10619
106202008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10621
10622 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10623 Create bitmap context in native byte order.
10624
10625 * macterm.c (XDrawLine)
10626 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10627 context in native byte order.
10628
106292008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10630
10631 * config.in: Regenerate.
10632
10633 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10634 New definitions for Image I/O support.
10635 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10636 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10637 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10638 (mac_data_provider_release_data, image_load_image_io)
10639 [USE_MAC_IMAGE_IO]: New functions.
10640 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10641 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10642 (init_image_func_pointer) [MAC_OSX]: Remove function.
10643 (image_load_quartz2d) [MAC_OSX]: Check availability of
10644 CGImageCreateWithPNGDataProvider at compile time.
10645 Use lowercase `false' for boolean constant.
10646 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10647 Use image_load_image_io.
10648 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10649 Don't check MyCGImageCreateWithPNGDataProvider.
10650 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10651 Don't call init_image_func_pointer.
10652
10653 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10654
10655 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10656 Make variable non-static.
10657 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10658 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10659
10660 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10661 (RED_FROM_ULONG): Mask off higher bits.
10662 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10663
10664 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10665 Include AvailabilityMacros.h.
10666 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10667 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10668
106692008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10670
10671 * chartab.c (Fset_char_table_range): If range is t, really set all
10672 chars to that value.
10673
106742008-05-03 Eli Zaretskii <eliz@gnu.org>
10675
10676 * dired.c (Ffile_attributes): Don't allow the device number become
10677 negative.
10678
106792008-05-02 Daiki Ueno <ueno@unixuser.org>
10680
10681 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10682
106832008-05-02 Juri Linkov <juri@jurta.org>
10684
10685 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10686 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10687 DEFAULT argument as a list of default values in docstrings.
10688
106892008-05-01 Chong Yidong <cyd@stupidchicken.com>
10690
10691 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10692
106932008-05-01 Martin Rudalics <rudalics@gmx.at>
10694
10695 * dispnew.c (change_frame_size_1): Preserve small windows when
10696 shrinking frames by calling set_window_height|width with third
10697 arg 2.
10698
10699 * window.h (struct window): Replace field too_small_ok by field
10700 resize_proportionally.
10701
10702 * window.c (make_window): Initialize resize_proportionally.
10703 (enlarge_window): Temporarily set resize_proportionally to make
10704 sure that shrink_windows does scale the window proportionally.
10705 (shrink_windows): When window has resize_proportionally set try
10706 to shrink it proportionally by stealing from other windows.
10707 (struct saved_window, Fset_window_configuration)
10708 (compare_window_configurations): Handle resize_proportionally.
10709 (WINDOW_TOTAL_SIZE): New macro.
10710 (window_min_size, shrink_windows, size_window): Use it.
10711 (check_min_window_sizes): Remove. Invalid values of
10712 window-min-height|width are handled by window_min_size_2 now.
10713 (size_window, Fsplit_window, enlarge_window)
10714 (adjust_window_trailing_edge, grow_mini_window): Don't call
10715 check_min_window_sizes.
10716 (window_min_size_2, window_min_size_1, window_min_size):
10717 New argument safe_p for retrieving "safe" minimum sizes.
10718 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10719 (adjust_window_trailing_edge, grow_mini_window):
10720 Adjust arguments of window_min_size... functions.
10721 (shrink_windows): Argument min_size removed. New argument
10722 safe_p allows shrinking windows to their safe minimum sizes.
10723 Calculate minimum size and decide whether a window shall be
10724 deleted for each window individually.
10725 (size_window): When nodelete_p equals 2, tell shrink_windows to
10726 delete windows only if their new minimum size is no more safe.
10727 (shrink_window_lowest_first): Call window_min_size_1 to make
10728 sure to preserve modeline of bottom-most window when resizing
10729 the minibuffer.
10730 (Fset_window_configuration, Fcurrent_window_configuration)
10731 (compare_window_configurations): Do not handle
10732 window-min-height|width any more.
10733 (syms_of_window): Clarify window-min-height|width doc-strings.
10734
107352008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10736
10737 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10738 some more. Copy some of the code from Ftry_completions.
10739 Remove special case code that dates back to initial revision when the
10740 slash was only added when necessary and that can't trigger nowadays.
10741
107422008-04-27 Kenichi Handa <handa@m17n.org>
10743
10744 * font.c (font_prop_validate): Signal `error' instead of `font'.
10745
107462008-04-29 Jason Rumney <jasonr@gnu.org>
10747
10748 * w32fns.c (Fw32_battery_status): New defun.
10749 (syms_of_w32fns): Defsubr it.
10750
107512008-04-28 Andreas Schwab <schwab@suse.de>
10752
10753 * dired.c (file_name_completion): Fix another mixing of encoded
10754 and decoded names.
10755
107562008-04-28 Juanma Barranquero <lekktu@gmail.com>
10757
10758 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10759
107602008-04-27 Juanma Barranquero <lekktu@gmail.com>
10761
10762 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10763
107642008-04-27 Andreas Schwab <schwab@suse.de>
10765
10766 * dired.c (file_name_completion): Fix inappropriate mixing of
10767 encoded and decoded names.
10768
10769 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10770
10771 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10772
107732008-04-26 Eli Zaretskii <eliz@gnu.org>
10774
10775 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10776 2008-03-31, it's not needed anymore with `struct stat' definition
10777 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10778 for the same reasons.
10779
107802008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10781
10782 * m/sparc.h: Additional redefinitions for GNU/Linux.
10783
107842008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10785
10786 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10787 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10788 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10789 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10790 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10791 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10792 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10793 Likewise.
10794
10795 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10796 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10797 (mac_ax_number_of_characters): Add externs.
10798 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10799 [USE_MAC_TSM]: Likewise.
10800 (mac_handle_text_input_event) [MAC_OSX]:
10801 Handle kEventTextInputOffsetToPos for no active input area case.
10802 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10803 (mac_handle_document_access_event)
10804 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10805 (install_application_handler) [MAC_OSX]: Register handlers for
10806 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10807 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10808 Register mac_handle_document_access_event.
10809
10810 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10811 Make functions non-static.
10812
108132008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10814
10815 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10816 (read_file_name_completion_ignore_case, insert_default_directory)
10817 (Qdefault_directory): Move to minibuffer.el.
10818 (Fread_file_name): Call the new `read-file-name' instead.
10819
108202008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10821
10822 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10823 Make function non-static.
10824 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10825 Remove function.
10826 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10827 Move to mactoolbox.c.
10828 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10829
10830 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10831 (mac_rect_make): New macro.
10832
10833 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10834 instead of float.
10835 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10836 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10837 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10838 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10839 CGRectMake.
10840 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10841 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10842 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10843 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10844 instead of WindowRef in argument type.
10845 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10846 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10847 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10848 instead of DISPLAY. All uses changed.
10849 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10850 (x_calc_absolute_position): Simplify so as not to use
10851 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10852
10853 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10854 instead of WindowRef in argument type.
10855 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10856 [TARGET_API_MAC_CARBON]: Remove externs.
10857 (create_apple_event, mac_event_parameters_to_lisp)
10858 [TARGET_API_MAC_CARBON]: Add externs.
10859
10860 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10861 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10862 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10863 is clicked.
10864 (x_activate_menubar): Remove extern for saved_menu_event_location.
10865 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10866 Move from mac.c.
10867
108682008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10869
10870 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10871 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10872
108732008-04-23 Jason Rumney <jasonr@gnu.org>
10874
10875 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10876 attributes only for local files.
10877
10878 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10879 default to Qlocal.
10880
108812008-04-22 Juri Linkov <juri@jurta.org>
10882
10883 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10884 read-buffer-to-switch instead of using the letter "B".
10885
108862008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10887
10888 * fileio.c (Qdefault_directory): New variable.
10889 (Fread_file_name): Use it to pass `dir' to the completion functions.
10890
108912008-04-20 Chong Yidong <cyd@stupidchicken.com>
10892
10893 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10894
108952008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10896
10897 * keyboard.c (Vpre_help_message): Remove.
10898 (show_help_echo): Remove default C code.
10899
10900 * dired.c (directory_files_internal, file_name_completion):
10901 Only call ENCODE_FILE if the string is indeed decoded.
10902
109032008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10904
10905 * Makefile.in (TOOLKIT_DEFINES): Remove.
10906 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10907
109082008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10909
10910 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10911 (mactoolbox.o): New target.
10912
10913 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10914 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10915
10916 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10917 Use mac_set_frame_window_background instead of XSetWindowBackground.
10918 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10919 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10920 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10921 instead of SetWindowTitleWithCFString.
10922 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10923 Move function to mactoolbox.c.
10924 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10925 Use mac_set_window_modified instead of SetWindowModified.
10926 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10927 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10928 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10929 FrontNonFloatingWindow. Use mac_activate_window instead of
10930 ActivateWindow. Use mac_active_non_floating_window instead of
10931 ActiveNonFloatingWindow.
10932 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10933 Use mac_show_hourglass and mac_hide_hourglass.
10934 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10935 instead of GetGlobalMouse.
10936 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10937 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10938 Use mac_bring_window_to_front instead of BringToFront.
10939 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10940 mactoolbox.c.
10941 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10942 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10943 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10944 mactoolbox.c.
10945
10946 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10947 (XtPointer): Move typedef from macmenu.c.
10948 (enum button_type): Move enum from macmenu.c.
10949 (widget_value): Move typedef from macmenu.c.
10950 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10951 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10952 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10953 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10954 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10955 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10956 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10957 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10958 (Selection): Move typedef from macselect.c.
10959 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10960 macterm.c.
10961 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10962 (mac_is_window_collapsed, mac_bring_window_to_front)
10963 (mac_send_window_behind, mac_hide_window, mac_show_window)
10964 (mac_collapse_window, mac_front_non_floating_window)
10965 (mac_active_non_floating_window, mac_activate_window)
10966 (mac_move_window_structure, mac_move_window, mac_size_window)
10967 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10968
10969 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10970 (enum mac_menu_kind): Move enum to mactoolbox.c.
10971 (min_menu_id): Move variable to mactoolbox.c.
10972 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10973 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10974 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10975 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10976 [TARGET_API_MAC_CARBON]: Likewise.
10977 (XtPointer): Move typedef to macgui.h.
10978 (enum button_type): Move enum to macgui.h.
10979 (widget_value): Move typedef to macgui.h.
10980 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10981 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10982 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10983 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10984 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10985 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10986 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10987 (popup_activated_flag): Make variable non-static.
10988 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10989 (add_menu_item, fill_menu, dispose_menus):
10990 Move functions to mactoolbox.c.
10991 (restore_show_help_function, menu_target_item_handler)
10992 (install_menu_target_item_handler, mac_handle_dialog_event)
10993 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10994 [TARGET_API_MAC_CARBON]: Likewise.
10995 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
10996 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10997 (find_and_call_menu_selection, name_is_separator): Make function
10998 non-static.
10999 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
11000 to mactoolbox.c.
11001 (set_frame_menubar): Don't call install_menu_quit_handler.
11002 (menu_item_selection): New variable.
11003 (mac_menu_show): Use create_and_show_popup_menu.
11004 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
11005 selection but set variable menu_item_selection. All uses changed.
11006 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
11007 Call install_menu_quit_handler. Move to mactoolbox.c.
11008
11009 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
11010 (Selection): Move typedef to macgui.h.
11011 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
11012 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
11013 Make variables non-static.
11014 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11015 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
11016 Make functions non-static.
11017 (Vmac_service_selection) [MAC_OSX]: Likewise.
11018 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
11019 (mac_valid_selection_target_p, mac_clear_selection)
11020 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11021 (mac_put_selection_value, mac_selection_has_target_p)
11022 (mac_get_selection_value, mac_get_selection_target_list)
11023 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
11024 Move functions to mactoolbox.c.
11025 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
11026 Likewise.
11027 (copy_scrap_flavor_data, mac_handle_service_event)
11028 (install_service_handler) [MAC_OSX]: Likewise.
11029 (syms_of_macselect) <Vmac_dnd_known_types>:
11030 Use mac_dnd_default_known_types.
11031
11032 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
11033 Move to mactoolbox.c.
11034 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
11035 (Fx_selection_owner_p): Add EXFUN.
11036 (install_window_handler, remove_window_handler, XSetWindowBackground):
11037 Remove externs.
11038 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
11039 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
11040 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
11041 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
11042 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
11043 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
11044 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
11045 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
11046 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
11047 (create_and_show_popup_menu, mac_get_selection_from_symbol)
11048 (mac_valid_selection_target_p, mac_clear_selection)
11049 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11050 (mac_put_selection_value, mac_selection_has_target_p)
11051 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
11052 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
11053 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
11054 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11055 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
11056 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11057 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
11058 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11059 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11060
11061 * mactoolbox.c: New file.
11062
110632008-04-18 Jason Rumney <jasonr@gnu.org>
11064
11065 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
11066
110672008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
11068
11069 * character.c (Fmultibyte_char_to_unibyte):
11070 Return latin1 chars unchanged.
11071
11072 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
11073 relocated if it points to `name'.
11074
110752008-04-17 Kenichi Handa <handa@m17n.org>
11076
11077 * data.c (Faset): Allow setting a multibyte character in an
11078 ASCII-only unibyte string.
11079
11080 * lisp.h (STRING_SET_MULTIBYTE): New macro.
11081
110822008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
11083
11084 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
11085 done in config.h.
11086
110872008-04-16 Juanma Barranquero <lekktu@gmail.com>
11088
11089 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
11090 (Fchar_direction): Add usage in the docstring.
11091
110922008-04-15 Chong Yidong <cyd@stupidchicken.com>
11093
11094 * keyboard.c (read_key_sequence): Remove always-true checks.
11095
110962008-04-14 Jason Rumney <jasonr@gnu.org>
11097
11098 * w32font.c (w32font_open_internal): Set max_bounds.descent in
11099 compatibility struct, for better underline positioning.
11100
111012008-04-13 David Hansen <david.hansen@gmx.net>
11102
11103 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
11104 string.
11105
111062008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
11107
11108 * m/hp800.h (XUINT, XSET): Remove.
11109
111102008-04-12 Juanma Barranquero <lekktu@gmail.com>
11111
11112 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
11113 previous change.
11114
111152008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
11116
11117 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
11118 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
11119
111202008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11121
11122 * keymap.h (map_keymap_canonical): Declare.
11123 * xmenu.c (single_keymap_panes): Use it.
11124
111252008-04-11 Glenn Morris <rgm@gnu.org>
11126
11127 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
11128 set the target's value to that of the alias.
11129
111302008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11131
11132 * term.c (set_tty_color_mode): Left over typo.
11133
111342008-04-10 Michael Albinus <michael.albinus@gmx.de>
11135
11136 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
11137 only after check for file name handler functions. Signal, when
11138 native functionality is not supported.
11139 (syms_of_fileio): Declare it unconditionally.
11140
111412008-04-10 Jason Rumney <jasonr@gnu.org>
11142
11143 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
11144 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
11145
11146 * w32.c (logon_network_drive): Also logon to remote drives that
11147 are mapped to drive letters.
11148
111492008-04-10 Glenn Morris <rgm@gnu.org>
11150
11151 * xdisp.c (truncate-partial-width-windows): Doc fix.
11152
111532008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
11154
11155 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
11156 Move functions to minibuffer.el.
11157 (syms_of_fileio): Don't declare them.
11158
111592008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11160
11161 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
11162 (syms_of_minibuf): Remove its initialization.
11163
11164 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
11165
111662008-04-09 Juanma Barranquero <lekktu@gmail.com>
11167
11168 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
11169
111702008-04-09 Jason Rumney <jasonr@gnu.org>
11171
11172 * makefile.w32-in (distclean): Delete makefile too.
11173 (maintainer-clean): New target.
11174
11175 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
11176
11177 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
11178 for new font backend and composite cases.
11179
111802008-04-09 Jan Djärv <jan.h.d@swipnet.se>
11181
11182 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
11183 Most of the code moved to run_timers.
11184 (do_pending_atimers): Call run_timers.
11185 (run_timers): New function.
11186
11187 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
11188 run atimers.
11189
11190 * process.c (wait_reading_process_output): The same as above.
11191
111922008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11193
11194 * minibuf.c (last_exact_completion): Remove variable.
11195 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
11196 (complete_and_exit_1, complete_and_exit_2)
11197 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
11198 (Fdisplay_completion_list, display_completion_list_1)
11199 (Fminibuffer_completion_help, Fself_insert_and_exit)
11200 (Fexit_minibuffer, Fminibuffer_message): Move functions to
11201 minibuffer.el.
11202 (syms_of_minibuf): Remove corresponding initializations.
11203
11204 * keyboard.c (Qdeactivate_mark): New var.
11205 (command_loop_1): Use it to call `deactivate-mark'.
11206 (syms_of_keyboard): Initialize it.
11207
11208 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
11209 to another frame.
11210 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
11211 Don't call set_tty_color_mode.
11212 (store_frame_param): Reset previous_frame rather than call
11213 set_tty_color_mode.
11214 * term.c (set_tty_color_mode): Rewrite.
11215 * dispextern.h (set_tty_color_mode): New type.
11216 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
11217
112182008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
11219
11220 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
11221 for generic chars, which do not exist any more in emacs-unicode.
11222
112232008-04-08 Michael Albinus <michael.albinus@gmx.de>
11224
11225 * coding.c (detect_coding_emacs_mule)
11226 (Ffind_operation_coding_system): Fix typo.
11227
112282008-04-08 Jason Rumney <jasonr@gnu.org>
11229
11230 * w32uniscribe.c (SNAME): Extract only symbol name.
11231
11232 * w32font.h (struct w32_metric_cache): New struct.
11233 (w32font_info): Use it.
11234 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
11235 (CACHE_BLOCKSIZE): New constants.
11236
11237 * w32font.c (Qja, Qko, Qzh): New symbols.
11238 (syms_of_w32font): Initialise them.
11239 (font_matches_spec): Use them to filter by language.
11240 (recompute_cached_metrics): Remove function.
11241 (compute_metrics, clear_cached_metrics): New functions.
11242 (w32font_encode_char): Use them to manage metric cache.
11243 (w32font_text_extents): Cache metrics for all glyphs on demand.
11244 Delay converting glyph indices to WORD until needed.
11245 (w32font_open_internal): Initialize metric cache to empty.
11246 (registry_to_w32_charset): Charset should always be a symbol.
11247 (fill_in_logfont, list_all_matching_fonts): Family should
11248 always be a symbol.
11249
112502008-04-06 Jason Rumney <jasonr@gnu.org>
11251
11252 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
11253 Give up if glyph indices not supported. Use uniscribe obtained
11254 ABC widths for individual metrics. Map glyph clusters back to
11255 characters using fClusterStart flag. Return number of glyphs
11256 produced, not chars processed.
11257 (uniscribe_shape): Map char at FROM to current glyph.
11258
112592008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11260
11261 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
11262 Use SetMenuItemHierarchicalMenu.
11263
112642008-04-05 Jason Rumney <jasonr@gnu.org>
11265
11266 * image.c (pbm_load): Allow color values up to 65535.
11267 Throw an error if max_color_idx is outside the supported range.
11268 Report an error when image size is invalid.
11269 Read two bytes at a time when raw images have max_color_idx above 255.
11270
112712008-04-05 Eli Zaretskii <eliz@gnu.org>
11272
11273 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11274 cFileName a file name that includes `?' characters, use the 8+3
11275 alias in cAlternateFileName instead.
11276
112772008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
11278
11279 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
11280 append "CCL: Quitted" when the CCL program is quitted.
11281 (setup_ccl_program): Initialize ccl->quit_silently to zero.
11282
11283 * ccl.h (struct ccl_program): New member quit_silently.
11284
112852008-04-05 Chong Yidong <cyd@stupidchicken.com>
11286
11287 * search.c (compile_pattern_1): Treat non-nil and non-string of
11288 search-spaces-regexp as nil.
11289
11290 * minibuf.c (Fassoc_string): Tweak docstring.
11291
112922008-04-05 Eli Zaretskii <eliz@gnu.org>
11293
11294 * dired.c (Ffile_attributes): Support inode numbers wider than 32
11295 bits. Remove ugly WINDOWSNT-specific kludge introduced on
11296 2008-03-14 to force inode be positive.
11297
11298 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
11299 _S_* ones, since we now use our own sys/stat.h.
11300 (stat, fstat): Don't mangle the inode number.
11301 (init_user_info): Don't restrict UID and GID to 0-60000 range.
11302
113032008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
11304
11305 * frame.h (struct frame): Give one more bit to `visible' since we use
11306 values larger than 1 to indicate obscured frames on ttys.
11307
11308 * keymap.c (Qkeymap_canonicalize): New var.
11309 (Fmap_keymap_internal): New fun.
11310 (describe_map): Use keymap-canonicalize.
11311
11312 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
11313 (Fundo_boundary): Set them.
11314 (syms_of_undo): Initialize them.
11315 (record_point): Use them instead of last_point_position*.
11316 (last_undo_buffer): Change type.
11317
113182008-04-04 Jason Rumney <jasonr@gnu.org>
11319
11320 * w32font.c (w32font_text_extents): Use font's ascent and descent.
11321 (recompute_cached_metrics): Don't set ascent and descent per char.
11322
11323 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
11324 (uniscribe_check_otf): Add GC protection before consing.
11325 Rearrange loop for counting features.
11326
113272008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
11328
11329 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
11330 buffer with byte-size of source buffer.
11331
113322008-04-03 Chong Yidong <cyd@stupidchicken.com>
11333
11334 * callint.c (Fcall_interactively): Handle temporary region even
11335 when shift-select-mode is off.
11336
113372008-04-03 Jason Rumney <jasonr@gnu.org>
11338
11339 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
11340
113412008-04-03 Kenichi Handa <handa@m17n.org>
11342
11343 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
11344 (CATEGORY_MASK_UTF_16): Likewise.
11345 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
11346 binary file.
11347 (detect_coding): Add null-byte detection for a binary file.
11348 (detect_coding_system): Likewise.
11349
113502008-04-03 Jason Rumney <jasonr@gnu.org>
11351
11352 * w32uniscribe.c: New file.
11353
11354 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
11355
11356 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
11357
11358 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
11359 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
11360 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
11361 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
11362 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
11363 (Qphonetic): New symbols.
11364 (syms_of_w32font): Initialize them.
11365 (font_supported_scripts): Use them.
11366 (w32font_list_family): List all charsets.
11367 (w32font_text_extents, recompute_cached_metrics): Fix metric
11368 calculations.
11369 (w32_enumfont_pattern_entity): Make full_type a DWORD.
11370 Give opentype fonts their own format.
11371 (font_matches_spec): New arguments backend and logfont.
11372 Handle :otf spec for uniscribe backend.
11373 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
11374 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
11375
11376 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
11377 font backend.
11378 (globals_of_w32fns): Initialize uniscribe font backend.
11379
11380 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
11381 dependencies.
11382 (w32uniscribe.$(O)): New file to build.
11383 (FONT_OBJ): Include w32uniscribe.$(O).
11384 (LIBS): Add uniscribe libraries.
11385
11386 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
11387
113882008-04-02 Chong Yidong <cyd@stupidchicken.com>
11389
11390 * callint.c (Vshift_select_mode): New var.
11391 (Finteractive): Document new ^ spec.
11392 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11393 is present.
11394
11395 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11396 (command_loop_1): Avoid running the direct display versions of
11397 forward-char and backward-char if shift-selection may occur.
11398 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11399 shift-translation takes place.
11400
11401 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11402 avoid clobbering by define-minor-mode.
11403
11404 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11405 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11406
11407 * syntax.c (Fforward_word): Add ^ interactive spec.
11408
11409 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11410 (Fscroll_right): Add ^ interactive spec.
11411
114122008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11413
11414 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11415
11416 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11417
11418 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11419
114202008-03-31 Juri Linkov <juri@jurta.org>
11421
11422 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11423
114242008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11425
11426 * gtkutil.c (xg_set_geometry): Fix indentation.
11427 (xg_resize_outer_widget): Remove.
11428 (x_wm_size_hint_off): Fix indentation.
11429 (xg_frame_set_char_size): Call flush_and_sync after
11430 gtk_window_resize.
11431 (x_wm_set_size_hint): Pass NULL as geometry window to
11432 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11433 Add menu bar and tool bar height to base height.
11434 (xg_update_frame_menubar, free_frame_menubar)
11435 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11436 (update_frame_tool_bar, free_frame_tool_bar):
11437 Change xg_resize_outer_widget to xg_frame_set_char_size.
11438
114392008-03-30 Michael Albinus <michael.albinus@gmx.de>
11440
11441 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11442 (Fdbus_call_method): New parameter TIMEOUT.
11443 (dbus-send-signal): Optimize UNGCPRO call.
11444
114452008-03-29 Juri Linkov <juri@jurta.org>
11446
11447 * window.c (Fdisplay_buffer): Move call to
11448 Vsplit_window_preferred_function out of conditions that check
11449 if window is eligible for vertical splitting.
11450 When Vsplit_window_preferred_function is non-nil, call it and use
11451 its non-nil return value as window. Otherwise, continue doing
11452 vertical splitting using Fsplit_window with arg horflag=nil.
11453 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11454 default value from `split-window' to nil.
11455
114562008-03-29 Juri Linkov <juri@jurta.org>
11457
11458 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11459 for interactive code letters 'b' and 'B'.
11460
114612008-03-29 Eli Zaretskii <eliz@gnu.org>
11462
11463 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11464 multibyte string.
11465
114662008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11467
11468 * keyboard.c (pending_funcalls): New var.
11469 (timer_check): Run it.
11470 (syms_of_keyboard): Initialize it.
11471 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11472 (Vdelete_terminal_functions): New vars.
11473 (syms_of_terminal): Initialize them.
11474 (Fdelete_terminal): Run delete-terminal-functions.
11475 * xdisp.c (safe_eval): Rewrite.
11476 (safe_call2): New fun.
11477 * frame.c (Qdelete_frame_functions): New var.
11478 (syms_of_frame): Initialize it.
11479 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11480 * lisp.h (safe_call2, pending_funcalls): Declare.
11481
114822008-03-28 Andreas Schwab <schwab@suse.de>
11483
11484 * indent.c (Fmove_to_column): Move declaration before statements.
11485
114862008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11487
11488 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11489 (struct frame): Use bit fields for boolean vars.
11490
11491 * process.c (server_accept_connection): Simplify naming.
11492 (emacs_get_tty_pgrp): Use SDATA.
11493
11494 * coding.c (decode_coding_object): Fix last change.
11495
114962008-03-27 Jason Rumney <jasonr@gnu.org>
11497
11498 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11499
115002008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11501
11502 * charset.c (Fdefine_charset_internal): Change the way of
11503 registering charsets in Vcharset_order_list.
11504 (syms_of_charset): Make the charset `eight-bit' supplementary.
11505
115062008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11507
11508 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11509 operations, to avoid having the difference between pointers
11510 overflow.
11511
115122008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11513
11514 * indent.c (check_display_width): New fun.
11515 (scan_for_column): Use it.
11516
11517 * data.c (syms_of_data): Mark most-positive-fixnum and
11518 most-negative-fixnum as constants.
11519
11520 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11521
11522 * indent.c (scan_for_column): Extract from current_column_1.
11523 Merge with the same code from Fmove_to_column.
11524 (current_column_1, Fmove_to_column): Use it.
11525
115262008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11527
11528 * keymap.c (map_keymap_internal): New fun.
11529 (map_keymap): Use it.
11530 (Fmap_keymap_internal): New fun.
11531 (Fmap_keymap): Remove left-out test from before make_save_value.
11532
11533 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11534
11535 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11536 Use XCAR/XCDR.
11537
11538 * process.h (struct Lisp_Process): Remove filter_multibyte.
11539 * process.c (QCfilter_multibyte): Remove.
11540 (setup_process_coding_systems): Don't use filter_multibyte.
11541 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11542 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11543 (Fset_process_filter_multibyte): Change the coding-system to
11544 approximate the previous behavior.
11545 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11546 coding-system.
11547
11548 * coding.c (decode_coding_object): When not decoding into a buffer,
11549 obey the coding system's preference of (uni|multi)byte.
11550
115512008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11552
11553 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11554 every char is changed and has a different byte-length.
11555 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11556 Fix int -> EMACS_INT.
11557
115582008-03-23 David Hansen <david.hansen@gmx.net>
11559
11560 * dbusbind.c (xd_read_message): Remove extra copying of message
11561 strings. Check for NULL `interface' or `member'.
11562
115632008-03-22 Eli Zaretskii <eliz@gnu.org>
11564
11565 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11566 cFileName a file name that includes `?' characters, use the 8+3
11567 alias in cAlternateFileName instead.
11568
115692008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11570
11571 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11572
115732008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11574
11575 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11576 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11577 work on current_buffer only instead (that was already the case
11578 for some of the code anyway).
11579 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11580 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11581 (SET_PT, SET_PT_BOTH): Adjust.
11582 * intervals.h (set_point, temp_set_point, set_point_both)
11583 (temp_set_point_both): Remove redundant declarations.
11584
115852008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11586
11587 * fileio.c (Finsert_file_contents):
11588 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11589 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11590 when buffer != current_buffer anyway.
11591
115922008-03-20 Andreas Schwab <schwab@suse.de>
11593
11594 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11595 as default.
11596
115972008-03-19 Jason Rumney <jasonr@gnu.org>
11598
11599 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11600 (syms_of_w32fns): Initialize them.
11601 (HOURGLASS_ID): New constant.
11602 (x_window_to_frame): Don't check hourglass_window.
11603 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11604 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11605 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11606 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11607 Only change the cursor if hourglass is not active.
11608 (Fx_create_frame): Initialize frame's current_cursor.
11609 (hourglass_atimer): Remove.
11610 (hourglass_started): New function.
11611 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11612 (show_hourglass): Adapt to w32, changing argument to frame.
11613
11614 * w32term.h (struct w32_output): Remove hourglass_window.
11615 Add current_cursor.
11616
11617 * eval.c (call_debugger, Fsignal):
11618 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11619 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11620 (Fexecute_extended_command, cancel_hourglass_unwind):
11621 * minibuf.c (read_minibuf):
11622 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11623
116242008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11625
11626 * window.c (run_funs): New fun.
11627 (run_window_configuration_change_hook): Use it to run the buffer-local
11628 and the global part of the hook.
11629
11630 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11631 (unwind_format_mode_line): Restore selected window.
11632 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11633
116342008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11635
11636 * editfns.c (Fchar_equal): Check they are valid characters.
11637
11638 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11639
116402008-03-17 Andreas Schwab <schwab@suse.de>
11641
11642 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11643 against a charset.
11644
11645 * lisp.h (Fbuffer_list): Declare.
11646
116472008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11648
aac0c6e3
MR
11649 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11650 handlebox_widget is != 0.
11651
116522008-03-16 Juri Linkov <juri@jurta.org>
11653
11654 * callint.c (Fcall_interactively): For interactive code letters
11655 'b' and 'B' put the buffer list into the list of default "future"
11656 values of the minibuffer.
11657
116582008-03-16 Andreas Schwab <schwab@suse.de>
11659
11660 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11661 modifiers.
11662
11663 * regex.c (re_match_2_internal): Correct matching of a charset
11664 against latin-1 characters.
11665
116662008-03-16 Kenichi Handa <handa@m17n.org>
11667
11668 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11669 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11670 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11671 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11672 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11673 CHAR_STRING_ADVANCE.
11674 (produce_chars): Fix for the case that the source and the
11675 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11676 instead of CHAR_STRING_ADVANCE.
11677 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11678 STRING_CHAR_ADVANCE.
11679
116802008-03-15 Andreas Schwab <schwab@suse.de>
11681
11682 * regex.c (re_match_2_internal): Correct matching of eight bit
11683 characters in unibyte strings.
11684
116852008-03-15 Martin Rudalics <rudalics@gmx.at>
11686
11687 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11688 at end of range when it coincides with the end of the buffer.
11689
116902008-03-14 Eli Zaretskii <eliz@gnu.org>
11691
11692 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11693
11694 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11695
116962008-03-14 Jason Rumney <jasonr@gnu.org>
11697
11698 * editfns.c (initial_tz): New variable.
11699 (syms_of_editfns): Initialize it.
11700 (Fset_time_zone_rule): Set it when first called.
11701 Use it when TZSTRING is nil.
11702
11703 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11704 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11705 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11706 (globals_of_w32fns): Initialize them.
11707 (compute_tip_xy): Use them to position tooltips.
11708
117092008-03-14 Glenn Morris <rgm@gnu.org>
11710
11711 * emacs.c (main): Revert previous change.
11712 (standard_args): Revert -internal-script back to -scriptload,
11713 and remove the long-option form.
11714
117152008-03-13 Glenn Morris <rgm@gnu.org>
11716
11717 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11718 Remove option -enable-font-backend.
11719
117202008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11721
11722 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11723
117242008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11725
11726 * xterm.c (x_connection_closed): For GTK: If this is the last
11727 terminal just exit without closing the display.
11728
117292008-03-11 Jason Rumney <jasonr@gnu.org>
11730
11731 * w32font.c (w32font_full_name): Use floor to round.
11732
f0131492 117332008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11734
11735 * sound.c (alsa_configure): Declare vol at beginning of block.
11736
11737 * fontset.c (Ffontset_info): Remove extra semicolon.
11738
117392008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11740
11741 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11742 size of resulting string.
11743
117442008-03-10 Jason Rumney <jasonr@gnu.org>
11745
11746 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11747
117482008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11749
11750 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11751 Don't pretend as if characters with display property haven't been
11752 consumed for string-replacing-string case.
11753
117542008-03-08 Kim F. Storm <storm@cua.dk>
11755
11756 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11757 (get_next_display_element, next_element_from_string)
11758 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11759
117602008-03-08 Andreas Schwab <schwab@suse.de>
11761
11762 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11763
117642008-03-06 Jason Rumney <jasonr@gnu.org>
11765
11766 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11767 when charset not specified. Only translate ANSI to unicode when
11768 font_type is truetype.
11769 (w32font_coverage_ok): New function.
11770 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11771
117722008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11773
11774 * lread.c (Fread_char): Resolve modifiers.
11775 (Fread_char_exclusive): Likewise.
11776
11777 * character.c (char_resolve_modifier_mask): New function.
11778 (char_string): Use char_resolve_modifier_mask.
11779 (Fchar_resolve_modifiers): New function.
11780 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11781 function.
11782
117832008-03-04 Jason Rumney <jasonr@gnu.org>
11784
11785 * makefile.w32-in: Always include w32font.c in the build.
11786 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11787
117882008-03-04 Andreas Schwab <schwab@suse.de>
11789
11790 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11791 (versionclean): Likewise.
11792
117932008-03-04 Juanma Barranquero <lekktu@gmail.com>
11794
11795 * .cvsignore: Add oo.
11796
117972008-03-03 Andreas Schwab <schwab@suse.de>
11798
11799 * coding.c (decode_coding_object): Inhibit gap shrinking while
11800 decoding in place.
11801
118022008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11803
11804 * w32term.c: Remove unused include "gnu.h".
11805 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11806
11807 * gnu.h: Rename to ...
11808 * emacs-icon.h: ... this.
11809 * xterm.c: Use emacs-icon.h instead of gnu.h.
11810 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11811
118122008-03-03 Juanma Barranquero <lekktu@gmail.com>
11813
11814 * w32font.c: Include math.h.
11815
118162008-03-03 Jason Rumney <jasonr@gnu.org>
11817
11818 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11819 Compute options separately.
11820 (w32font_open_internal): Set glyph_idx before caching metrics.
11821
11822 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11823 Define if system headers don't.
11824 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11825 (w32font_encode_char): Don't declare here.
11826
11827 * w32font.c (Quniscribe, QCformat): New symbols.
11828 (syms_of_w32font): Define them.
11829 (w32font_has_char): Indicate uncertainty.
11830 (w32font_encode_char): Encode as glyph point. Make static.
11831 (recompute_cached_metrics): New function.
11832 (w32font_open_internal): Use it. Set font to use glyph points
11833 initially. Set format based on type of font.
11834 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11835 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11836 on it. Set format based on information available here.
11837 (add_font_entity_to_list): Identify backend based on opentype_only.
11838
118392008-03-02 Andreas Schwab <schwab@suse.de>
11840
11841 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11842
11843 * coding.c (decode_coding_big5, produce_chars):
11844 Fix typos in last change.
11845
118462008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11847
11848 * gnu.h: New icon.
11849
118502008-03-02 Kenichi Handa <handa@m17n.org>
11851
11852 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11853 `dos', don't decode '\r' if that is the last in the source.
11854 (decode_coding_utf_16, decode_coding_emacs_mule)
11855 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11856 (decode_coding_raw_text, decode_coding_charset): Likewise.
11857 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11858
118592008-03-01 Jason Rumney <jasonr@gnu.org>
11860
11861 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11862
118632008-03-01 Kim F. Storm <storm@cua.dk>
11864
11865 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11866
118672008-03-01 Jason Rumney <jasonr@gnu.org>
11868
11869 * w32font.c (w32font_full_name): New function.
11870 (w32font_open_internal): Use it.
11871
118722008-03-01 Kim F. Storm <storm@cua.dk>
11873
11874 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11875
118762008-03-01 Jason Rumney <jasonr@gnu.org>
11877
11878 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11879
118802008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11881
11882 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11883 xg_frame_resized when the event is for the edit widget.
11884
11885 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11886
11887 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11888 set_char_size.
11889 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11890 operations on widgets here. Just set frame size if needed.
11891 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11892 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11893 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11894 the whole frame.
11895 (xg_create_tool_bar): Move attachment of the tool bar to
11896 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11897 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11898
118992008-03-01 Jason Rumney <jasonr@gnu.org>
11900
11901 * w32fns.c (w32_msg_pump): Disable debug code.
11902
119032008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11904
11905 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11906
119072008-02-29 Chong Yidong <cyd@stupidchicken.com>
11908
11909 * xdisp.c (next_overlay_string): Don't set
11910 overlay_strings_at_end_processed_p if we're currently reading from
11911 a display string.
11912
119132008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11914
11915 * xdisp.c (get_overlay_strings_1): Fix typo.
11916
119172008-02-29 Chong Yidong <cyd@stupidchicken.com>
11918
11919 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11920
119212008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11922
11923 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11924
11925 * xdisp.c (display_mode_element): Cancel the previous change.
11926 (decode_mode_spec): Likewise.
11927 (handle_auto_composed_prop): Don't make composition if it->string
11928 is a string.
11929
119302008-02-27 Kim F. Storm <storm@cua.dk>
11931
11932 * lisp.h (GLYPH): Change type from int to struct with separate char
11933 and face_id members.
11934 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11935 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11936 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11937 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11938 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11939 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11940 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11941 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11942 handle new Lisp glyph code encoding, either an integer or a cons.
11943
11944 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11945 (GLYPH_ALIAS): Delete.
11946 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11947 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11948 (GLYPH_FROM_CHAR): Replace macro by ...
11949 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11950
11951 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11952 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11953 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11954 (GLYPH_INVALID_P): New macro.
11955 (spec_glyph_lookup_face): Update prototype.
11956
11957 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11958 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11959 new glyph code encoding.
11960 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11961 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11962
11963 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11964 Adapt to new glyph type and new glyph code encoding.
11965
11966 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11967
11968 * indent.c (current_column, current_column_1, Fmove_to_column)
11969 (compute_motion): Adapt to new glyph code encoding.
11970
11971 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11972
119732008-02-27 Chong Yidong <cyd@stupidchicken.com>
11974
11975 * process.c (wait_reading_process_output): Check for window
11976 changes caused by timers.
11977 Suggested by Johan Bockgård.
11978
119792008-02-27 Glenn Morris <rgm@gnu.org>
11980
11981 * emacs.c (USAGE1): Add `--disable-font-backend'.
11982
119832008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11984
11985 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11986 is made to the buffer.
11987
119882008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11989
11990 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11991 (face_at_string_position):
11992 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11993 (face_at_string_position):
11994 * xdisp.c (display_string, next_overlay_change):
11995 * buffer.h (overlays_at):
11996 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
11997 Update callers.
11998
119992008-02-26 Chong Yidong <cyd@stupidchicken.com>
12000
12001 * editfns.c (Fformat): Doc fix.
12002
120032008-02-26 Juanma Barranquero <lekktu@gmail.com>
12004
12005 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
12006 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
12007 (Ffont_otf_alternates, Fquery_font): Doc fixes.
12008
120092008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
12010
12011 * buffer.c (Fbuffer_swap_text): New function.
12012 (syms_of_buffer): Defsubr it.
12013
120142008-02-25 Chong Yidong <cyd@stupidchicken.com>
12015
12016 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
12017
120182008-02-25 Jason Rumney <jasonr@gnu.org>
12019
12020 * w32font.c (w32font_draw): Draw one character at a time when padding.
12021
120222008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
12023
12024 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
12025 Handle a nil arg. Use run_window_configuration_change_hook.
12026 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
12027 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
12028 Use run_window_configuration_change_hook.
12029
120302008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12031
12032 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
12033 1-pixel width.
12034
120352008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12036
12037 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
12038 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
12039 if the glyph in the font is zero pixel with.
12040
12041 * dispextern.h (struct glyph_string): New member padding_p.
12042
12043 * w32font.c (w32font_draw): Pay attention to s->padding_p.
12044
12045 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
12046
12047 * xfont.c (xfont_draw): Pay attention to s->padding_p.
12048
12049 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
12050
12051 * font.c: If the font driver doesn't have `shape' function, return Qnil.
12052
120532008-02-25 Jason Rumney <jasonr@gnu.org>
12054
12055 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
12056
120572008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
12058
12059 Allow fine-grained image-cache flushing.
12060 * dispextern.h (struct image): Add `dependencies' field.
12061 (clear_image_caches): Change arg to Lisp_Object.
12062 * image.c (make_image): Initialize `dependencies' field.
12063 (clear_image_cache): Change arg to allow fine-grained flushing.
12064 Perform the flush even if image-cache-eviction-delay is nil.
12065 (clear_image_caches): Change arg to Lisp_Object.
12066 (Fclear_image_cache): Expand meaning of the argument.
12067 (mark_image): Mark `dependencies' field.
12068 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
12069 (lface_hash): Use XHASH rather than XFASTINT.
12070 (face_at_buffer_position): Fix int -> EMACS_INT position.
12071 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
12072 (select_frame_for_redisplay): Remove code duplication.
12073 (redisplay_internal): Adapt arg to call to clear_image_caches.
12074
120752008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
12076
12077 * s/vms4-0.h:
12078 * s/vms4-2.h:
12079 * s/vms4-4.h:
12080 * s/vms5-5.h: Remove, unused.
12081
12082 * s/irix5-2.h:
12083 * s/irix6-0.h:
12084 * s/riscos5.h:
12085 * s/mach-bsd4-3.h:
12086 * m/mips4.h: Remove files for obsolete systems.
12087
12088 * Makefile.in:
12089 * filelock.c:
12090 * unexmips.c:
12091 * m/hp9000s300.h:
12092 * m/iris4d.h:
12093 * s/aix3-1.h:
12094 * s/hpux.h:
12095 * s/msdos.h:
12096 * s/usg5-0.h:
12097 * s/usg5-2-2.h:
12098 * s/usg5-2.h:
12099 * s/usg5-3.h: Remove references to obsolete variables.
12100
12101 * s/irix5-0.h: Remove, move all the contents ...
12102 * s/irix6-5.h: ... here. Simplify.
12103 * config.in: Regenerate.
12104
121052008-02-24 Jason Rumney <jasonr@gnu.org>
12106
12107 * w32term.c (x_draw_glyph_string_background): Clear the background
12108 manually when cleartype is in use.
12109 (x_draw_glyph_string_foreground): Draw text transparently when
12110 cleartype is in use.
12111
12112 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
12113 a font into it unless we have to.
12114
121152008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12116
12117 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
12118 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 12119
aac0c6e3
MR
121202008-02-18 Jason Rumney <jasonr@gnu.org>
12121
12122 * w32fns.c (Fw32_shell_execute): Encode parameters.
12123
121242008-02-09 Eli Zaretskii <eliz@gnu.org>
12125
12126 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
12127
121282008-02-05 Juanma Barranquero <lekktu@gmail.com>
12129
12130 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
12131
121322008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
12133
12134 * xterm.c (x_set_offset): Don't change the gravity if
12135 CHANGE_GRAVITY is -1.
12136
121372008-02-23 Chong Yidong <cyd@stupidchicken.com>
12138
12139 * fileio.c (auto_save_error_occurred): New var.
12140 (auto_save_error): Set it.
12141 (Fdo_auto_save): Don't overwrite the error message if an auto-save
12142 error occurred.
12143
121442008-02-23 Eli Zaretskii <eliz@gnu.org>
12145
12146 * w32.c (globals_of_w32): Add initializations for
12147 g_b_init_get_sid_sub_authority and
12148 g_b_init_get_sid_sub_authority_count.
12149
121502008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
12151
12152 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
12153 (font_parse_xlfd): Use them for sanity check.
12154 (Finternal_set_font_style_table): Make sure the table is bijective.
12155
12156 Consolidate the image_cache to the terminal struct.
12157 * termhooks.h (P_): Remove redundant def.
12158 (struct terminal): New field `image_cache'.
12159 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
12160 of FRAME_X_IMAGE_CACHE.
12161 * xterm.h (struct x_display_info): Remove image_cache field.
12162 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12163 * w32term.h (struct w32_display_info): Remove image_cache field.
12164 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12165 * macterm.h (struct mac_display_info): Remove image_cache field.
12166 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12167 * xterm.c (x_term_init):
12168 * w32term.c (w32_term_init):
12169 * macterm.c (mac_term_init): Set the image_cache in the terminal.
12170 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
12171 Remove declarations.
12172 (clear_image_caches, mark_image_cache): New declarations.
12173 * xfaces.c (clear_face_cache):
12174 * xdisp.c (redisplay_internal): Use clear_image_caches.
12175 * image.c (clear_image_cache): Don't check that a frame is on
12176 a window-system before checking if it shares the same cache.
12177 (clear_image_caches): New function.
12178 (Fclear_image_cache): Use it.
12179 (mark_image): Move from allo.c.
12180 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
12181 * alloc.c (mark_image, mark_image_cache): Move to image.c.
12182 (mark_object): Don't call mark_image_cache for frames.
12183 (mark_terminals): Call mark_image_cache.
12184
12185 * lisp.h (Fdelete_terminal): Declare.
12186
12187 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
12188 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
12189 wrong_type_argument.
12190
121912008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
12192
12193 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
12194 malayalam.el, and tamil.el. Add sinhala.el.
12195
121962008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
12197
12198 * xterm.c (x_connection_closed): Consolidate identical tests.
12199 (x_delete_terminal): Don't crash if called via x_connection_closed.
12200
122012008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
12202
12203 * xdisp.c (decode_mode_spec): New arg string.
12204 (display_mode_element): Adjust for the above change.
12205
122062008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12207
12208 * callint.c (Fcall_interactively): Use AREF.
12209
122102008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
12211
12212 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
12213
122142008-02-18 Jan Djärv <jan.h.d@swipnet.se>
12215
12216 * xfns.c (Fx_show_tip): Set string to " " if empty.
12217
122182008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
12219
12220 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
12221 with Qt.
12222
122232008-02-17 Kenichi Handa <handa@m17n.org>
12224
12225 * ftfont.c (ftfont_shape): Return Lispy number.
12226
12227 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
12228 for GCs.
12229 (Finternal_set_font_selection_order): Call font_update_sort_order
12230 only when enable_font_backend is set.
12231 (realize_x_face): Set face->font_info to that of default face only
12232 when enable_font_backend is set.
12233
12234 * xdisp.c (handle_composition_prop): Set it->c to the fist
12235 character of the composed region.
12236 (fill_composite_glyph_string): Set base_face->font_info to
12237 s->font_info. Get a face for ascii from base_face->ascii_face.
12238 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
12239 with a face already decided.
12240 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
12241 non-negative.
12242 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
12243 call font_prepare_composition unconditionally.
12244
12245 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
12246
12247 * xterm.h (struct x_display_info): New member font.
12248
12249 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
12250 (x_set_mouse_face_gc, x_new_font): Likewise.
12251 (x_term_init): Setup display_info->font.
12252 (x_delete_terminal): Free display_info->font.
12253
12254 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
12255
12256 * ftxfont.c (ftxfont_default_fid): Delete it.
12257 (ftxfont_open): Set xfont->fid to 0.
12258 (ftxfont_end_for_frame): Clear data specific to the frame and the
12259 font-driver.
12260
12261 * xftfont.c (xftfont_default_fid): Delete it.
12262 (xftfont_open): Set xfont->fid to 0.
12263
12264 * fontset.c (FONTSET_OBJLIST): New macro.
12265 (fontset_find_font): Update font-object list of the fontset.
12266 (free_realized_fontset): New function.
12267 (free_face_fontset): Call free_realized_fontset.
12268 (Ffont_info): Call font_close_object only when enable_font_backend
12269 is set.
12270
12271 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
12272 [HAVE_NTGUI]: Include w32term.h.
12273 [MAC_OS]: Include macterm.ch.
12274 (font_otf_ValueRecord): Use make_number.
12275 (font_finish_cache): Fix handling of reference count.
12276 (font_clear_cache): Update num_fonts.
12277 (font_open_entity): Update smallest_char_width and
12278 smallest_font_height of the frame.
12279 (font_close_object): Update num_fonts.
12280 (Fclear_font_cache): Fix finding the target cache data.
12281
122822008-02-16 Glenn Morris <rgm@gnu.org>
12283
12284 * fontset.c (Finternal_char_font): Fix compilation warning.
12285
122862008-02-16 Eli Zaretskii <eliz@gnu.org>
12287
12288 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
12289 instead of char arrays. Enlarge the size of array passed to
12290 get_token_information.
12291
12292 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
12293 warnings.
12294
122952008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
12296
12297 * .gdbinit: Don't set `args', it breaks gdb --args.
12298
122992008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
12300
12301 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
12302 within a narrowed buffer.
12303
123042008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
12305
12306 * coding.c (decode_coding_object, encode_coding_object):
12307 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
12308
123092008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
12310
12311 * coding.c (coding_set_destination): Use BEG_BYTE rather than
12312 hardcoding 1.
12313 (detect_coding_system):
12314 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
12315 (string_char_to_byte, string_byte_to_char, insert_from_gap):
12316 * insdel.c (insert_from_gap):
12317 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
12318 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
12319 (string_to_multibyte):
12320 * character.c (chars_in_text, multibyte_chars_in_text):
12321 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
12322
12323 * character.h (FETCH_STRING_CHAR_ADVANCE)
12324 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
12325 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
12326 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
12327
12328 * casefiddle.c (casify_region): Only call after-change and composition
12329 functions on the part of the region that was changed.
12330
12331 * keyboard.c (read_avail_input):
12332 * frame.c (Fdelete_frame): Call Fdelete_terminal.
12333
123342008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12335
12336 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
12337 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
12338
123392008-02-11 Juanma Barranquero <lekktu@gmail.com>
12340
12341 * w32menu.c (push_submenu_start, push_submenu_end)
12342 (push_left_right_boundary, push_menu_pane, push_menu_item):
12343 * keyboard.c (read_key_sequence): Don't pass args with side effects
12344 to AREF, it fails when compiling with -DENABLE_CHECKING.
12345
123462008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
12347
12348 * Makefile.in (${lispsource}international/charprop.el):
12349 Delete this target.
12350
12351 * search.c (boyer_moore): Fix incorrect synching of the trunk and
12352 emacs-unicode-2.
12353
123542008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12355
12356 * terminal.c (Fdelete_terminal): Clean up the `force' path.
12357
123582008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12359
12360 * frame.c (Qnoelisp): New symbol.
12361 (syms_of_frame): Initialize it.
12362 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
12363 harmless Elisp code, from a strong `force' from x_connection_closed.
12364 * frame.h (Qnoelisp): Declare.
12365 * xterm.c (x_connection_closed): Pass `noelisp'.
12366
12367 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
12368 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
12369 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
12370 rather than `int' for the type of `type'.
12371
123722008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
12373
12374 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
12375
12376 * Makefile.in (GNUC): Remove support for gcc-1.x.
12377
123782008-02-10 Richard Stallman <rms@gnu.org>
12379
12380 * lisp.h (ASET): Use AREF, not ASLOT.
12381
123822008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12383
12384 * lisp.h (ASET): Check bounds.
12385
123862008-02-10 Glenn Morris <rgm@gnu.org>
12387
12388 * buffer.c (mode-name): Doc fix.
12389
123902008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12391
12392 * Makefile.in:
12393 * emacs.c:
12394 * gmalloc.c:
12395 * keyboard.c:
12396 * lisp.h:
12397 * m/ibm370aix.h:
12398 * process.c:
12399 * regex.c:
12400 * s/hpux.h:
12401 * sysdep.c:
12402 * sysselect.h:
12403 * systty.h:
12404 * unexec.c:
12405 * w32term.c:
12406 * xsmfns.c:
12407 * xterm.c: Remove code that deals with obsolete variables.
12408
12409 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12410
12411 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12412 nothing else needs it anymore.
12413
124142008-02-09 Eli Zaretskii <eliz@gnu.org>
12415
12416 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12417 instead of unibyte_char_to_multibyte.
12418
124192008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12420
12421 * s/gnu-linux.h: Remove commented out code.
12422
12423 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12424
12425 * Makefile.in: Update what RMS says about using autoconf.
12426 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12427 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12428 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12429 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12430
124312008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12432
12433 * keymap.c (Fkey_description): Move side effect outside of macro call.
12434
12435 * xfaces.c (Finternal_make_lisp_face):
12436 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12437
12438 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12439 (syms_of_fontset): Use ASET.
12440
12441 * fns.c (concat): Move side effect outside of macro call.
12442 (hash_clear): Use ASET.
12443
124442008-02-08 Richard Stallman <rms@gnu.org>
12445
12446 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12447 If FORCE, and frame has a surrogate minibuffer for another frame,
12448 delete the other frame first.
12449
124502008-02-07 Timo Savola <timo.savola@iki.fi>
12451
12452 * xterm.c (x_detect_focus_change): Handle embed client message.
12453 (handle_one_xevent): Ditto.
12454 (handle_one_xevent): If embedded and we get a button press/release,
12455 request focus.
12456 (xembed_set_info, xembed_send_message): New functions.
12457 (x_make_frame_visible): Call xembed_set_info if embedded.
12458 (x_make_frame_invisible): Call xembed_set_info if embedded.
12459 (x_term_init): Initialize Xatom_XEMBED.
12460 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12461 (x_iconify_frame): Ditto.
12462
12463 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12464 (enum xembed_info, enum xembed_message, enum xembed_focus)
12465 (enum xembed_modifier, enum xembed_accelerator): New.
12466 (xembed_set_info, xembed_send_message): Declare.
12467 (FRAME_X_EMBEDDED_P): New.
12468
12469 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12470 gtk_plug_new.
12471
12472 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12473 window ID of a frame.
12474 (x_window): Reparent frame if embedded.
12475 (Fx_create_frame): Don't set border width if embedded.
12476
12477 * emacs.c (USAGE3): Add --parent-id.
12478 (standard_args): Ditto.
12479
124802008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12481
12482 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12483
124842008-02-07 Jim Meyering <meyering@redhat.com>
12485
12486 Use "do...while (0)", not "if (1)...else" in macro definitions.
12487 The latter provokes a warning from gcc about the empty else, when
12488 followed by ";". Also, without that trailing semicolon, it would
12489 silently swallow up any following statement.
12490 * syntax.h (SETUP_SYNTAX_TABLE)
12491 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12492 * buffer.h (DECODE_POSITION): Likewise.
12493 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12494 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12495 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12496 (FETCH_CHAR_ADVANCE): Likewise.
12497 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12498
124992008-02-07 Jim Meyering <meyering@redhat.com>
12500
12501 * lread.c [lint]: Don't include <sys/inode.h>.
12502
125032008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12504
12505 * xselect.c (x_handle_dnd_message):
12506 * xmenu.c (digest_single_submenu, xmenu_show):
12507 * xdisp.c (with_echo_area_buffer_unwind_data)
12508 (format_mode_line_unwind_data, unwind_format_mode_line)
12509 (display_menu_bar):
12510 * eval.c (Ffetch_bytecode):
12511 * doc.c (store_function_docstring):
12512 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12513 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12514 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12515
125162008-02-07 Kenichi Handa <handa@m17n.org>
12517
12518 * ftxfont.c (ftxfont_open): Don't set
12519 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12520
12521 * ftfont.c (ftfont_open): Fix previous change.
12522
125232008-02-06 Jason Rumney <jasonr@gnu.org>
12524
12525 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12526 Use cached metrics for ASCII characters.
12527 (w32font_open_internal): Don't set font's owning_frame.
12528 Cache metrics for ASCII characters.
12529
12530 * w32font.h (struct w32font_info): Add ascii_metrics.
12531 Remove owning_frame.
12532
125332008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12534
12535 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12536 to negative value.
12537
12538 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12539
12540 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12541
12542 * charset.c (syms_of_charset): Set QCtest and Qeq.
12543
125442008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12545
12546 * process.c (Fstart_process):
12547 * callproc.c (Fcall_process): Handle the case where
12548 Funhandled_file_name_directory returns nil.
12549
12550 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12551 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12552 * font.c (check_gstring): Use them and AREF to access the vector before
12553 we know it's really a gstring.
12554 (Ffont_shape_text): Fix typo.
46e722a9 12555 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
12556
12557 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12558 Declare.
12559
12560 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12561
125622008-02-05 Jason Rumney <jasonr@gnu.org>
12563
12564 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12565 Set smallest_font_height and smallest_char_width in display info.
12566
125672008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12568
12569 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12570
125712008-02-05 Miles Bader <miles@gnu.org>
12572
12573 * xfaces.c (get_lface_attributes, merge_named_face)
12574 (lookup_named_face, lookup_derived_face, realize_named_face):
12575 Revert 2008-02-01 change by cyd@stupidchicken.com.
12576
125772008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12578
12579 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12580 fallback fonts.
12581 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12582
125832008-02-04 Jason Rumney <jasonr@gnu.org>
12584
12585 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12586 set full_name.
12587 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12588
125892008-02-03 Jason Rumney <jasonr@gnu.org>
12590
12591 * makefile.w32-in (OBJ1): Include font.o here.
12592 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12593
125942008-02-02 Jason Rumney <jasonr@gnu.org>
12595
12596 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12597
125982008-02-01 Jason Rumney <jasonr@gnu.org>
12599
12600 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12601
12602 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12603
126042008-02-01 Andreas Schwab <schwab@suse.de>
12605
12606 * Makefile.in (shortlisp, lisp): Update for rename of
12607 ../lisp/language/myanmar.el.
12608
126092008-02-01 Chong Yidong <cyd@stupidchicken.com>
12610
12611 * xfaces.c (get_lface_attributes): Delete function.
12612 (merge_named_face, lookup_named_face, lookup_derived_face)
12613 (realize_named_face): Call lface_from_face_name directly, and use
12614 the fact that merge_face_vectors does not alter its FROM argument.
12615
126162008-02-01 Jason Rumney <jasonr@gnu.org>
12617
12618 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12619 input in the default locale. Handle non-Unicode multibyte input.
12620
126212008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12622
12623 * fontset.c (reorder_font_vector): Exclude nil elements from the
12624 font group. Don't try multiple fonts.
12625 (fontset_font): Adjust for the above change.
12626 (Finternal_char_font): Return nil if the found font doesn't
12627 contain the character ch.
12628
12629 * Makefile.in (lisp, shortlisp): Add cham.el.
12630
126312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12632
12633 * font.h (FONTP): Make it return 1 also for a font-object.
12634
12635 * .gdbinit (xfontset): New function.
12636
12637 * font.c (font_find_for_lface): Check if the character C is
12638 supported or not only for the first font.
12639
12640 * fontset.c (reorder_font_vector): Fix typo.
12641 (fontset_find_font): Don't add a font-spec specifying a script.
12642 Use 0 (not Qt) for the indication of empty font-group. Change the
12643 format of RFONT-DEF. Return Qt if no font in the font-group
12644 support the character.
12645 (fontset_font): Adjust for the above change. If no font was
12646 found the character, remember that.
12647 (face_for_char): Adjust for the change of RFONT-DEF.
12648 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12649 no font for the target.
12650 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12651
126522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12653
12654 * font.c (font_load_for_face): Handle the case that the font in
12655 face->lface is a string.
12656
126572008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12658
12659 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12660
126612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12662
12663 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12664 Fix previous change. If the frame is not on a window system,
12665 signal an error.
12666
126672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12668
12669 * coding.c (decode_coding_object, encode_coding_object): Adjust
12670 marker positions after conversion.
12671
12672 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12673
126742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12675
12676 * font.c (font_find_for_lface): Fix the handling of the return
12677 value of font_has_char.
12678 (Ffont_shape_text): Fix previous change.
12679
12680 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12681 (fontset_ref_and_range): Delete it.
12682 (fontset_find_font): Call char_table_ref_and_range instead of
12683 FONTSET_REF_AND_RANGE.
12684 (make_fontset): Don't setup font groups of Latin here.
12685 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12686 (new_fontset_from_font): Make the specified font the default for
12687 all Latin characters.
12688
126892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12690
12691 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12692 is on a window system before accessing the fontset of the frame.
12693
126942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12695
12696 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12697
12698 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12699 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12700
12701 * font.c (Ffont_shape_text): If the font driver doesn't have a
12702 shaper function, make zero-width glyphs to have at least one-pixel
12703 width. Fix setting of `to' field of glyphs.
12704
127052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12706
12707 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12708 glyphs.
12709
12710 * font.h (struct font_driver): Improve docstring of member `shape'.
12711
127122008-02-01 Kenichi Handa <handa@m17n.org>
12713
12714 * composite.c (syms_of_composite): Fix docstring of
12715 auto-composition-function.
12716
12717 * font.h (LGLYPH_SIZE): New macro.
12718
12719 * font.c (Ffont_fill_gstring): Stop filling when a character not
12720 supported by the font is found.
12721 (Ffont_shape_text): When a shape callback function returns nil,
12722 try at most two more times with larger gstring.
12723 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12724
12725 * xdisp.c (handle_auto_composed_prop): Change the argument to
12726 auto-composition-function.
12727
12728 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12729 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12730 Lispy glyph and store it in the lgstring.
12731
12732 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12733
12734 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12735
127362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12737
12738 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12739
12740 * fontset.c (Vfont_encoding_charset_alist): New variable.
12741 (syms_of_fontset): DEFVAR it.
12742 (reorder_font_vector, fontset_find_font): Optimize for the case of
12743 no need of reordering.
12744 (face_for_char): Map the charset property by
12745 Vfont_encoding_charset_alist.
12746
127472008-02-01 Jason Rumney <jasonr@gnu.org>
12748
12749 * w32font.c (logfonts_match): Don't check adstyle here.
12750 (font_matches_spec): Check here against physical font instead.
12751 (add_font_entity_to_list): Avoid some substitutions.
12752
12753 * font.c (font_parse_fcname): Default weight and slant to normal.
12754 (font_score): Prefer normal fonts if weight or slant unspecified.
12755 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12756 match freetype scores.
12757
127582008-02-01 Jason Rumney <jasonr@gnu.org>
12759
12760 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12761 font, as it may have been deleted.
12762 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12763 most common hyphenless variation.
12764 (logfonts_match): Check generic family.
12765 (font_matches_spec): Don't check generic family here.
12766 (fill_in_logfont): Set generic family based on adstyle.
12767
12768 * w32font.h (w32font_get_cache): Update declaration.
12769
127702008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12771
12772 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12773
12774 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12775 If none of the new drivers are available, call font_update_drivers
12776 with the old drivers.
12777
12778 * w32font.c (w32font_get_cache): Adjust the argument type.
12779
12780 * xfont.c (xfont_get_cache): Adjust the argument type.
12781
12782 * font.h (struct font_driver): Change argument type of get_cache.
12783
12784 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12785
12786 * font.c (Ffont_get): Fix arguments to Fassoc.
12787 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12788 (font_clear_cache): New function.
12789 (font_list_entities, font_matching_entity): Use font_get_cache.
12790 (font_update_drivers): Call font_clear_cache when finishing a driver.
12791
12792 * fontset.c (fontset_find_font): Fix previous change.
12793
127942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12795
12796 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12797 dpyinfo->font_table.
12798 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12799 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12800
12801 * font.c (font_at): Handle the case that the arg C is negative.
12802 Handle the unibyte case.
12803 (Ffont_at): Call font_at with the arg C -1.
12804
12805 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12806 the position here, and call font_at with the arg C -1.
12807 Don't check the range of the existing composition at the point.
12808
128092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12810
12811 * fontset.c (fontset_add): New args charset_id and family.
12812 Change caller.
12813 (load_font_get_repertory, fontset_find_font): Assume that
12814 font_spec is always a font-spec object.
12815 (Fset_fontset_font): Always store a font-spec object in a fontset.
12816
12817 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12818 instead of get_property_and_range.
12819
128202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12821
12822 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12823 (xftfont_open): Don't keep locking face.
12824 (xftfont_close): Don't unlock face.
12825 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12826
12827 * fontset.c (fontset_find_font): Don't prefer a font of
12828 supplementary charset.
12829
128302008-02-01 Kenichi Handa <handa@m17n.org>
12831
12832 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12833 script, langsys_tag to langsys, new member script.
12834 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12835 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12836 listing to the script specified in that property. Fix arg to
12837 OTF_check_features.
12838
128392008-02-01 Jason Rumney <jasonr@gnu.org>
12840
12841 * w32font.h: New file.
12842
12843 * w32font.c: Include it.
12844 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12845 (w32font_open): Set owning_frame.
12846 (w32font_text_extents): Use owning_frame.
12847 (struct font_callback_data): Add opentype_only field.
12848 (add_font_entity_to_list): Use it to filter fonts.
12849 Don't check against full name.
12850 (w32font_list_internal): New function.
12851 (w32font_list): Use it.
12852 (w32font_match_internal): New function.
12853 (w32font_match): Use it.
12854 (w32font_open_internal): New function.
12855 (w32font_open): Use it.
12856 (w32font_get_cache, w32font_close, w32font_has_char)
12857 (w32font_encode_char, w32font_text_extents, w32font_draw):
12858 Make non-static.
12859
12860 * makefile.w32-in (w32font.o): Depend on w32font.h.
12861
128622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12863
12864 * charset.c (Fdefine_charset_internal): Record a supplementary
12865 charset at the tail of Vcharset_order_list.
12866
12867 * font.c (Ffont_shape_text): Fix the return value.
12868
12869 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12870
12871 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12872
128732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12874
12875 * ftfont.c (struct OpenTypeSpec): New struct.
12876 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12877 (ftfont_get_open_type_spec): New function.
12878 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12879
12880 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12881
128822008-02-01 Jason Rumney <jasonr@gnu.org>
12883
12884 * w32font.c (add_font_entity_to_list): Compare only the beginning
12885 of full name.
12886
128872008-02-01 Kenichi Handa <handa@m17n.org>
12888
12889 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12890 Never return HANDLED_RECOMPUTE_PROPS.
12891
128922008-02-01 Kenichi Handa <handa@m17n.org>
12893
12894 * font.c (font_gstring_produce): Delete it.
12895
12896 * composite.h (COMPOSITION_METHOD):
12897 Handle COMPOSITION_WITH_GLYPH_STRING.
12898
128992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12900
12901 * xfont.c (Qx): Delete.
12902 (syms_of_xfont): Don't initialize Qx.
12903
12904 * composite.h (enum composition_method):
12905 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12906
129072008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12908
12909 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12910 (choose_face_font): Accept new form of font-spec.
12911
12912 * frame.h (font_driver_list): Declare it unconditionally.
12913 (struct frame): Define members font_driver_list and font_data_list
12914 unconditionally.
12915
12916 * fontset.c: Include "font.h" unconditionally.
12917 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12918 (Fset_fontset_font): Accept a font-spec object.
12919
12920 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12921 PIXEL_SIZE part a wild card.
12922
12923 * dispextern.h (struct glyph_string): Define members clip and
12924 num_clips unconditionally.
12925 (struct face): Define members font_info and extra unconditionally.
12926
12927 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12928 ftfont_info only when HAVE_LIBOTF is defined.
12929
129302008-02-01 Andreas Schwab <schwab@suse.de>
12931
12932 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12933 and end.
12934
129352008-02-01 Jason Rumney <jasonr@gnu.org>
12936
12937 * w32font.c (w32font_driver): Add new fields.
12938
129392008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12940
12941 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12942 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12943 (LIBES): Add @M17N_FLT_CFLAGS@.
12944
12945 * composite.c (compose_text): Don't treat the new style
12946 composition specially.
12947
12948 * emacs.c (main): Call syms_of_font unconditionally.
12949
12950 * font.h (FONT_ENTITY_NOT_LOADABLE)
12951 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12952 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12953 (struct font_driver): New member shape.
12954 (font_registry_charsets): Extern it.
12955 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12956 (font_otf_capability, font_drive_otf): Delete their externs.
12957
12958 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12959 (font_charset_alist, font_registry_charsets): Move from xfont.c
12960 and rename.
12961 (font_prop_validate_otf): New function.
12962 (font_property_table): Register it for QCotf.
12963 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12964 (font_drive_otf): Delete.
12965 (font_prepare_composition): New arg F. Adjust for the change of
12966 lispy gstring.
12967 (font_find_for_lface): New arg C.
12968 (font_load_for_face): Adjust for the change of font_find_for_lface.
12969 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12970 lispy gstring.
12971 (Ffont_shape_text): New function.
12972 (Fopen_font): If the font size is not given, use 12-pixel.
12973 (Ffont_at): New arg STRING.
12974 (syms_of_font): Initalize font_charset_alist.
12975 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12976 conditionally.
12977
12978 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12979 fonts of the same font-spec. Change the format of RFONT-DEF.
12980 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12981 Adjust for the change of RFONT-DEF.
12982 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12983
12984 * ftfont.h: New file.
12985
12986 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12987 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12988 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12989 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12990 font_otf_capability and font_drive_otf, set ftfont_shape.
12991 (ftfont_list): Adjust for the change of :otf property value.
12992 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12993 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12994 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
12995 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12996 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
12997 (otf_gstring, gstring, m17n_flt_initialized): New variables.
12998
12999 * w32term.c (x_draw_composite_glyph_string_foreground):
13000 Adjust for the change of lispy gstring.
13001
13002 * xdisp.c (handle_composition_prop): Adjust for the change of
13003 lispy gstring. Call a function for auto-composition with the
13004 third arg it->window.
13005 (fill_composite_glyph_string): Adjust for the change of lispy string.
13006 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
13007
13008 * xfaces.c (set_font_frame_param): Adjust for the change of
13009 font_find_for_lface.
13010
13011 * xfont.c (x_font_charset_alist): Move to font.c and rename.
13012 (xfont_registry_charsets): Likewise. Change caller.
13013 (syms_of_xfont): Don't handle x_font_charset_alist.
13014
13015 * xftfont.c: Include "ftfont.h".
13016 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
13017 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
13018 (xftfont_close) [HAVE_LIBOTF]: Close otf.
13019 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
13020 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
13021 Set xftfont_driver.shape to xftfont_shape.
13022
13023 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13024 the change of lispy gstring.
13025
130262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13027
13028 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
13029
130302008-02-01 Jason Rumney <jasonr@gnu.org>
13031
13032 * w32font.c (w32font_draw): Fill background manually.
13033
130342008-02-01 Jason Rumney <jasonr@gnu.org>
13035
13036 * font.c (Qfontp): Remove unused symbol.
13037 (QCantialias): New symbol.
13038 (syms_of_font): Define it.
13039 (font_property_table): Set a validator for QCantialias.
13040
13041 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
13042 Define if not already.
13043 (QCfamily): Share with xfaces.c.
13044 (Qstandard, Qsubpixel, Qnatural): New symbols.
13045 (syms_of_w32font): Define them. Don't define QCfamily here.
13046 (w32_antialias_type, lispy_antialias_type): New functions.
13047 (w32_enumfont_pattern_entity): New arg requested_font.
13048 Set antialias parameter if non-default was requested.
13049 (fill_in_logfont): Fill in lfQuality if :antialias specified.
13050
130512008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13052
13053 * lread.c (read1): Undo the previous change.
13054
130552008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
13056
13057 * frame.c (Fdelete_frame): Call font_update_drivers only when
13058 USE_FONT_BACKEND is defined.
13059
130602008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13061
13062 * font.h (struct font_bitmap): New member bits_per_pixel.
13063 (struct font_driver): New members start_for_frame and end_for_frame.
13064 (struct font_data_list): New struct.
13065 (font_put_frame_data, font_get_frame_data): Extern them.
13066
13067 * frame.h (struct frame): New member font_data_list.
13068
13069 * font.c (font_update_drivers): Call driver->start_for_frame and
13070 driver->end_for_frame at proper timings.
13071 (font_put_frame_data, font_get_frame_data): New functions.
13072 (Ffont_spec): Add usage in the docstring.
13073
13074 * frame.c (make_frame): Initialize f->font_data_list to NULL.
13075 (Fdelete_frame): Call font_update_drivers.
13076
13077 * xftfont.c (struct xftface_info): Delete the member xft_draw.
13078 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
13079 (xftfont_get_xft_draw): New function.
13080 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
13081 (xftfont_end_for_frame): New function.
13082 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
13083
13084 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
13085 Change argument. Cache GCs in the per-frame data.
13086 (struct ftxfont_frame_data): New struct.
13087 (ftxfont_draw_bitmap): New arg gc_fore and flush.
13088 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
13089 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
13090 (ftxfont_end_for_frame): New function.
13091 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
13092
13093 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
13094
130952008-02-01 Kenichi Handa <handa@m17n.org>
13096
13097 * xselect.c (Vselection_coding_system)
13098 (Vnext_selection_coding_system): Delete them.
13099 (syms_of_xselect): Don't declare selection-coding-system and
13100 next-selection-coding-system. They are declared in select.el.
13101
131022008-02-01 Jason Rumney <jasonr@gnu.org>
13103
13104 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
13105
13106 * w32fns.c: Include imm.h.
13107 (get_composition_string_fn, get_ime_context_fn): New optional
13108 system functions.
13109 (globals_of_w32fns): Load them from imm32.dll.
13110 (ignore_ime_char): New flag.
13111 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
13112 WM_IME_ENDCOMPOSITION messages.
13113
13114 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
13115 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
13116
131172008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13118
13119 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
13120 (READCHAR_REPORT_MULTIBYTE): New macro.
13121 (readchar): New 2nd arg MULTIBYTE.
13122 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
13123 Make symbol's name multibyte according to the multibyteness of the
13124 source.
13125
131262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13127
13128 * xfaces.c (face_for_overlay_string): Call lookup_face with
13129 correct arguments (fix of synching with the trunk).
13130
131312008-02-01 Kenichi Handa <handa@m17n.org>
13132
13133 * font.c (font_prop_validate_symbol, font_prop_validate_style)
13134 (font_prop_validate_non_neg, font_prop_validate_spacing):
13135 Delete argument prop_index.
13136 (font_property_table): Change arguments to validater. Change Callers.
13137 (font_lispy_object): Delete.
13138 (font_at): Use font_find_object instead fo font_lispy_object.
13139
131402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13141
13142 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
13143 and file names.
13144
131452008-02-01 Jason Rumney <jasonr@gnu.org>
13146
13147 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
13148 (font_matches_spec): Remove debug output.
13149 (add_font_entity_to_list): Avoid using substituted fonts.
13150
131512008-02-01 Jason Rumney <jasonr@gnu.org>
13152
13153 * doc.c (Fsnarf_documentation):
13154 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
13155
131562008-02-01 Miles Bader <miles@gnu.org>
13157
13158 * dispextern.h (struct glyph_row): Only define "clip" field if
13159 HAVE_WINDOW_SYSTEM is defined.
13160
131612008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13162
13163 Fix up multi-tty merge.
13164
13165 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
13166 and indentation.
13167
13168 * xfaces.c (free_realized_face, clear_face_gcs):
13169 Include font_done_for_face in the input_blocked section, just in case.
13170
13171 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
13172 (get_char_face_and_encoding): Undo last change and remove the *other*
13173 duplicate definition (i.e. keep the one that's better scoped and that
13174 includes code for the font-backend).
13175
13176 * terminal.c (create_terminal): Default keyboard_coding to
13177 `no-conversion' and terminal_coding to `undecided'.
13178
13179 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
13180
13181 * fontset.c (free_realized_fontsets): Check that the table entry does
13182 contain a fontset before trying to compare it to `base'.
13183
13184 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
13185 syms_of_charset, and syms_of_coding earlier because init_window_once
13186 now needs Vcoding_system_hash_table to be setup.
13187
13188 * coding.h (default_buffer_file_coding): Remove.
13189
13190 * coding.c (default_buffer_file_coding): Remove.
13191 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
13192 than ->symbol, and use the terminal-local coding system.
13193 (syms_of_coding): Don't setup the coding-systems that are not
13194 terminal-local.
13195 (Fdefine_coding_system_internal): Use XCAR/XCDR.
13196
13197 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
13198 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
13199
13200 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
13201 in chartab.c and were re-added here by mistake.
13202 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
13203
13204 * doc.c (Fsnarf_documentation):
13205 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
13206 src to etc.
13207
13208 * ChangeLog.10: Add mistakenly removed entry.
13209
132102008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
13211
13212 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
13213
132142008-02-01 Miles Bader <miles@gnu.org>
13215
13216 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
13217 Add extra args to FACE_FOR_CHAR.
13218
132192008-02-01 Kenichi Handa <handa@m17n.org>
13220
13221 * keymap.c (where_is_internal_1): If key is a cons, store the copy
13222 in sequence.
13223
13224 * chartab.c (map_sub_char_table, map_char_table): If the range
13225 contains just one character, call the function with that character
13226 even if the depth is not 3.
13227
132282008-02-01 Jason Rumney <jasonr@gnu.org>
13229
13230 * w32font.c (w32font_text_extents): Calculate metrics for the
13231 whole string.
13232
132332008-02-01 Jason Rumney <jasonr@gnu.org>
13234
13235 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
13236
132372008-02-01 Jason Rumney <jasonr@gnu.org>
13238
13239 * w32term.c (x_set_glyph_string_clipping): Use
13240 get_glyph_string_clip_rects.
13241 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13242 Adjust for the change of struct glyph_string.
13243
13244 * w32font.c (w32font_draw): Do clipping here.
13245
132462008-02-01 Kenichi Handa <handa@m17n.org>
13247
13248 * xftfont.c (xftfont_draw): Adjust for the change of struct
13249 glyph_string.
13250
13251 * xterm.c (x_set_glyph_string_clipping): Use
13252 get_glyph_string_clip_rects.
13253 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13254 Adjust for the change of struct glyph_string.
13255
13256 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
13257 the resulting clip(s}.
13258 (expose_overlaps): Add arg r. Change callers. Set it to
13259 row->clip temporarily.
13260 (expose_window): Redraw rows overlapping the exposed area.
13261
13262 * dispextern.h (struct glyph_row): New member clip.
13263 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
13264 clip_height, new member clip, and num_clips.
13265
132662008-02-01 Kenichi Handa <handa@m17n.org>
13267
13268 * data.c (Fchar_or_string_p): Fix docstring.
13269
132702008-02-01 Kenichi Handa <handa@m17n.org>
13271
13272 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
13273 create a temporary XftDraw object.
13274
132752008-02-01 Kenichi Handa <handa@m17n.org>
13276
13277 * font.c (Ffontp): Fix docstring.
13278
13279 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
13280 strong evidence of ISO-2022.
13281
132822008-02-01 Kenichi Handa <handa@m17n.org>
13283
13284 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
13285 SYNTAX_ENTRY_FOLLOW_PARENT.
13286
132872008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13288
13289 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
13290 its type.
13291 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
13292 Update to the new type of weak_hash_tables and next_weak.
13293
13294 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
13295 a plain C pointer to Lisp_Hash_Table.
13296
13297 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
13298 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
13299 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
13300 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
13301 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
13302 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
13303 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
13304 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
13305 (GC_EQ): Remove since they've been identical to their non-GC_
13306 alter-egos ever since the markbit was eradicated.
13307
13308 * alloc.c:
13309 * buffer.c:
13310 * buffer.h:
13311 * data.c:
13312 * fileio.c:
13313 * filelock.c:
13314 * fns.c:
13315 * frame.h:
13316 * lisp.h:
13317 * macterm.c:
13318 * print.c:
13319 * process.c:
13320 * w32fns.c:
13321 * w32menu.c:
13322 * w32term.c:
13323 * xfns.c:
13324 * xmenu.c:
13325 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
13326
133272008-02-01 Kenichi Handa <handa@m17n.org>
13328
13329 * chartab.c (map_sub_char_table): Make it work for the top-level
13330 char-table. Fix handling of parent char-table.
13331 (map_char_table): Adjust for the above change.
13332
133332008-02-01 Jason Rumney <jasonr@gnu.org>
13334
13335 * w32font.c (Qgdi): Rename from Qw32.
13336
133372008-02-01 Jason Rumney <jasonr@gnu.org>
13338
13339 * w32bdf.c (get_quoted_string): Make function static.
13340
133412008-02-01 Kenichi Handa <handa@m17n.org>
13342
13343 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
13344 bigger ascent and descent than those of the font, use them as
13345 font's ascent and descent.
13346
133472008-02-01 Kenichi Handa <handa@m17n.org>
13348
13349 * Makefile.in (${lispsource}international/charprop.el): Move this
13350 target within "#ifdef HAVE_UNIDATA" and "#endif".
13351
133522008-02-01 Kenichi Handa <handa@m17n.org>
13353
13354 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
13355 (shortlisp): Add ../lisp/language/tai-viet.el.
13356
133572008-02-01 Ulrich Mueller <ulm@gentoo.org>
13358
13359 * Makefile.in (${lispsource}international/charprop.el): Depend on
13360 temacs${EXEEXT}.
13361
133622008-02-01 Jason Rumney <jasonr@gnu.org>
13363
13364 * w32font.c (w32font_close): Delete the GDI font object.
13365
13366 * w32menu.c: Include character.h.
13367
13368 * w32proc.c: Likewise.
13369
13370 * w32select.c: Likewise.
13371
13372 * makefile.w32-in (w32proc.o): Depend on character.h.
13373
133742008-02-01 Jason Rumney <jasonr@gnu.org>
13375
13376 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
13377
13378 * w32menu.c (syms_of_w32menu): Likewise.
13379
13380 * w32proc.c (syms_of_ntproc): Likewise.
13381
13382 * w32select.c (syms_of_w32select): Likewise.
13383
13384 * w32term.c (syms_of_w32term): Likewise.
13385
133862008-02-01 Jason Rumney <jasonr@gnu.org>
13387
13388 * w32font.c (w32font_draw): Delete brush after using it.
13389
133902008-02-01 Jason Rumney <jasonr@gnu.org>
13391
13392 * w32font.c (w32font_open): Don't set font_idx.
13393 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13394 to font settings.
13395 (w32font_draw): Fill background explicitly.
13396
133972008-02-01 Jason Rumney <jasonr@gnu.org>
13398
13399 * w32term.c (w32_initialize): Don't call w32font_initialize.
13400
13401 * w32font.c (w32font_info): Remove subranges.
13402 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13403 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13404 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13405 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13406 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13407 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13408 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13409 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13410 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13411 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13412 New symbols.
13413 (font_callback_data): New struct.
13414 (w32font_list, w32font_match): Use it.
13415 (w32font_open): Don't populate subranges.
13416 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13417 (w32font_encode_char): Always return unicode code-point as-is.
13418 (w32font_text_extents): Supply a transformation matrix to
13419 GetGlyphOutline. Never look up by glyph index. Avoid looping
13420 twice. Use unicode version of GetTexExtentPoint32 instead of
13421 glyph index version.
13422 (set_fonts_frame): Remove.
13423 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13424 set frame parameter. Use backward compatible fake foundries.
13425 Save generic family in extra slot under QCfamily. Make width slot
13426 constant. Save QCspacing value. Save list of scripts instead of
13427 binary subranges.
13428 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13429 (add_font_entity_to_list): Use font_callback_data struct. Filter
13430 unwanted fonts.
13431 (add_one_font_entity_to_list): Use font_callback_data struct.
13432 (w32_registry): Default to iso10646_1.
13433 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13434 string font registries. Don't fill in font name if it is a generic
13435 family name, fill family instead. Use spacing, family and script
13436 extra info to fill pitch, family and charset fields.
13437 (list_all_matching_fonts): Use font_callback_data struct.
13438 (unicode_range_for_char): Remove.
13439 (font_supported_scripts): New function.
13440 (w32font_initialize): Remove.
13441 (syms_of_w32font): Update which symbols are defined.
13442
134432008-02-01 Jason Rumney <jasonr@gnu.org>
13444
13445 * font.c (font_pixel_size): Reverse assq_no_quit args.
13446
13447 * w32term.h (FONT_WIDTH): Report max width, not average.
13448 (FONT_MAX_WIDTH): Remove.
13449 (FONT_AVG_WIDTH): New macro.
13450
13451 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13452 redefinition of FONT_WIDTH.
13453
13454 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13455 (w32_cache_char_metrics): Use FONT_WIDTH.
13456
13457 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13458
134592008-02-01 Jason Rumney <jasonr@gnu.org>
13460
13461 * w32font.c (w32font_open): Make lfHeight negative.
13462
13463 * w32fns.c (x_default_font_parameter): Use new style font name.
13464 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13465
134662008-02-01 Jason Rumney <jasonr@gnu.org>
13467
13468 * w32font.c (QCsubranges): New symbol.
13469 (w32font_open, w32font_has_char): Get subranges from subproperty
13470 of extra.
13471 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13472 (syms_of_w32font): Define :subranges symbol.
13473
13474 * font.c (font_put_extra): Expose externally.
13475
13476 * font.h (font_put_extra): Move declaration from font.c.
13477
13478 * font.c (Ffont_get): Use font driver to determine otf capability.
13479 (adjust_anchor): Check if driver defines anchor_point before using.
13480
13481 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13482 (w32font_draw): Use options.
13483 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13484 Fix detection of truetype fonts.
13485 (registry_to_w32_charset): Handle charsets other than iso8859-1
13486 expressed as lisp symbols.
13487 (w32_registry): Express charset as lisp symbol.
13488 (fill_in_logfont): Reverse pixel and point height logic.
13489 Don't set width here. Set quality to default.
13490
13491 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13492 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13493
13494 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13495 Remove redundant loop and allocation.
13496
13497 * makefile.w32-in (font.o, w32font.o): New objects.
13498 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13499 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13500
13501 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13502 STORE_XCHARB a valid l-value.
13503
13504 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13505 calculations for non-Truetype fonts.
13506 (x_draw_glyph_string): Sync with xterm.c.
13507 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13508 Remove redundant code.
13509 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13510
13511 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13512 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13513
13514 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13515 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13516
13517 * w32font.c: New file for w32 font backend.
13518
135192008-02-01 Kenichi Handa <handa@m17n.org>
13520
13521 * term.c: Don't include "buffer.h" twice.
13522
135232008-02-01 Kenichi Handa <handa@m17n.org>
13524
13525 * character.c (Funibyte_string): New function.
13526 (syms_of_character): Defsubr it.
13527
135282008-02-01 Jason Rumney <jasonr@gnu.org>
13529
13530 * w32term.c [USE_FONT_BACKEND]:
13531 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13532 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13533 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13534 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13535 (x_free_frame_resources): Sync with xterm.c.
13536
135372008-02-01 Andreas Schwab <schwab@suse.de>
13538
13539 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13540 char-table size.
13541
135422008-02-01 Kenichi Handa <handa@m17n.org>
13543
13544 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13545
135462008-02-01 Kenichi Handa <handa@m17n.org>
13547
13548 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13549 font_otf_gpos, add font_drive_otf.
13550
13551 * fontset.c (fontset_find_font): Pay attention to font size
13552 specified for a font.
13553 (reorder_font_vector): Check contents of font_def.
13554
13555 * font.c (struct otf_list): Delete it.
13556 (otf_list): Make it a lisp variable.
13557 (otf_open): Use lispy otf_list.
13558 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13559 (check_otf_features): New function.
13560 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13561 New functions.
13562 (font_drive_otf): New function merging font_otf_gsub and
13563 font_otf_gpos.
13564 (font_open_for_lface): New arg spec. Change argument order.
13565 (font_load_for_face): Adjust for the change of font_open_for_lface.
13566 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13567 Ffont_otf_gpos.
13568 (syms_of_font): Staticpro otf_list. Delete defsubr of
13569 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13570
13571 * xfaces.c (set_font_frame_param): Adjust for the change of
13572 font_open_for_lface.
13573
13574 * font.h (font_open_for_lface): Adjust prototype.
13575 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13576 member otf_drive.
13577 (font_otf_gsub, font_otf_gpos): Delete externs.
13578 (font_drive_otf): Extern it.
13579
135802008-02-01 Kenichi Handa <handa@m17n.org>
13581
13582 * font.c (font_at): If the window W is not on a window system,
13583 return Qnil.
13584
13585 * coding.c (produce_chars, encode_coding): Don't call
13586 insert_from_gap if no characters to produce.
13587
135882008-02-01 Kenichi Handa <handa@m17n.org>
13589
13590 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13591 Fclear_face_cache.
13592
13593 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13594
135952008-02-01 Miles Bader <miles@gnu.org>
13596
13597 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13598 Parse "--disable-font-backend" option.
13599 (standard_args): Add "--disable-font-backend" option.
13600
136012008-02-01 Kenichi Handa <handa@m17n.org>
13602
13603 * fontset.c (fontset_find_font): New function.
13604 (fontset_font): Use fontset_find_font.
13605 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13606 Register the specified font for all Latin characters.
13607 (new_fontset_from_font): Register the specified font for all Latin
13608 characters.
13609 (dump_fontset): For a realized fontset, include the base fontset
13610 name in the returned vector.
13611
136122008-02-01 Kenichi Handa <handa@m17n.org>
13613
13614 * character.h (CHAR_STRING): Cast C to unsigned on calling
13615 char_string.
13616
13617 * character.c (char_string): Type of arg C changed to unsigned.
13618 Signal an error if C is an invalid character code.
13619
13620 * editfns.c (general_insert_function, Fchar_to_string):
13621 Use CHARACTERP, not INTEGERP.
13622
136232008-02-01 Kenichi Handa <handa@m17n.org>
13624
13625 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13626 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13627
13628 * regex.c (analyse_first): Fix for multibyte characters in "case
13629 charset:" and "case categoryspec:".
13630
136312008-02-01 Andreas Schwab <schwab@suse.de>
13632
13633 * Makefile.in (LIBES): Move standard libraries to the end.
13634
136352008-02-01 Kenichi Handa <handa@m17n.org>
13636
13637 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13638 nonzero, don't shrink the buffer nextb.
13639
13640 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13641
13642 * coding.c (coding_alloc_by_making_gap): New arg offset.
13643 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13644 offset.
13645 (decode_coding_iso_2022): Update coding->safe_charsets.
13646 (decode_coding_gap): Temporarily set
13647 current_buffer->text->inhibit_shrinking to 1.
13648
136492008-02-01 Kenichi Handa <handa@m17n.org>
13650
13651 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13652 indexing into elements of s->cmp and s->char2b.
13653
136542008-02-01 Juanma Barranquero <lekktu@gmail.com>
13655
13656 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13657
136582008-02-01 Kenichi Handa <handa@m17n.org>
13659
13660 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13661 target_multibyte instead of multibyte.
13662 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13663 (bcmp_translate): Change the argument name from multibyte to
13664 target_multibyte.
13665
136662008-02-01 Kenichi Handa <handa@m17n.org>
13667
13668 These changes are to compile a regexp into a pattern that can be
13669 used both for multibyte and unibyte targets.
13670
13671 * Makefile.in (search.o): Depend on charset.h.
13672
13673 * character.c (multibyte_char_to_unibyte_safe): New function.
13674
13675 * search.c: Include "charset.h".
13676 (compile_pattern_1): Delete argument multibyte. Don't set
13677 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13678 (compile_pattern): Don't compare cp->buf.target_multibyte.
13679 Compare cp->buf.charset_unibyte.
13680 (compile_pattern): Set cp->buf.target_multibyte.
13681
13682 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13683
13684 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13685
13686 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13687 multibyte. Change callers.
13688 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13689 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13690 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13691 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13692 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13693 (regex_compile): Make the compiled pattern usable both for
13694 multibyte and unibyte targets.
13695 (analyse_first): Make the fastmap usable both for multibyte and
13696 unibyte targets.
13697 (TRANSLATE_VIA_MULTIBYTE): Delete.
13698 (re_match_2_internal): Pay attention to the case that the
13699 multibyteness of bufp and target may be different.
13700
137012008-02-01 Kenichi Handa <handa@m17n.org>
13702
13703 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13704 empty box occupy at least one column width.
13705
137062008-02-01 Miles Bader <miles@gnu.org>
13707
13708 * Makefile.in: Remove redundant HAVE_XFT clause.
13709
137102008-02-01 Kenichi Handa <handa@m17n.org>
13711
13712 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13713
137142008-02-01 Kenichi Handa <handa@m17n.org>
13715
13716 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13717 being nil.
13718
137192008-02-01 Kenichi Handa <handa@m17n.org>
13720
13721 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13722
137232008-02-01 Kenichi Handa <handa@m17n.org>
13724
13725 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13726
137272008-02-01 Kenichi Handa <handa@m17n.org>
13728
13729 * search.c (simple_search): Fix previous change.
13730
137312008-02-01 Kenichi Handa <handa@m17n.org>
13732
13733 * xftfont.c (ftfont_font_format): Extern declaration.
13734
13735 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13736
13737 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13738 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13739
13740 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13741 (ftfont_font_format): Fix previous change.
13742
13743 * font.h (Ffont_xlfd_name): EXFUN it.
13744
13745 * font.c (font_parse_xlfd): Fix the array size of `f'.
13746 (register_font_driver): Use EQ to compare driver->type.
13747
13748 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13749 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13750 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13751
137522008-02-01 Kenichi Handa <handa@m17n.org>
13753
13754 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13755 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13756
137572008-02-01 Kenichi Handa <handa@m17n.org>
13758
13759 * xfont.c (xfont_open): Set font->format.
13760
13761 * xftfont.c (xftfont_open): Set font->format.
13762
13763 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13764 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13765 (ftfont_open): Set font->format.
13766 (ftfont_font_format): New function.
13767
13768 * font.h (struct font): New member format.
13769
13770 * font.c (Qopentype): New variable.
13771 (syms_of_font): Defsym it.
13772 (Fquery_font): Change the format of the last element of the return
13773 value.
13774
137752008-02-01 Kenichi Handa <handa@m17n.org>
13776
13777 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13778 last resort.
13779
137802008-02-01 Kenichi Handa <handa@m17n.org>
13781
13782 * coding.c (detect_coding_charset): Fix detection of multi-byte
13783 charset.
13784
137852008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13786
13787 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13788
137892008-02-01 Kenichi Handa <handa@m17n.org>
13790
13791 * xdisp.c (get_next_display_element): Set it->face_id for the
13792 first component of a composition.
13793 (x_produce_glyphs): Check if the font is changed or not for composition.
13794
137952008-02-01 Kenichi Handa <handa@m17n.org>
13796
13797 * fontset.c (Qlatin): New variable.
13798 (syms_of_fontset): Define it as a lisp symbol.
13799 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13800
138012008-02-01 Kenichi Handa <handa@m17n.org>
13802
13803 * font.c (font_unparse_fcname): Pay attention to the case that
13804 some of font property is a null string.
13805
138062008-02-01 Kenichi Handa <handa@m17n.org>
13807
13808 * term.c: Include "composite.h".
13809 (encode_terminal_code): Output all components of composition.
13810 Check the size of encode_terminal_src.
13811 (produce_glyphs): For composition, call produce_composite_glyph.
13812 (append_composite_glyph, produce_composite_glyph): New functions.
13813
13814 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13815 is not found, get font_info from the current ascii face.
13816
138172008-02-01 Kenichi Handa <handa@m17n.org>
13818
13819 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13820 buffer-file-name to Qnil before calling insert_from_buffer.
13821
13822 * font.c (font_unparse_fcname): Pay attention to the case that
13823 foundry is a null string.
13824
138252008-02-01 Kenichi Handa <handa@m17n.org>
13826
13827 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13828
13829 * font.c (Qunicode_sip): New variable.
13830 (syms_of_font): Declare it as a Lisp symbol.
13831
13832 * font.h (Qunicode_sip): Extern it.
13833
138342008-02-01 Kenichi Handa <handa@m17n.org>
13835
13836 * composite.c (get_composition_id): Pay attention to TAB component.
13837
13838 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13839 TAB. Adjust for the change of s->char2b which always points to
13840 the first element of allocated memory.
13841
13842 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13843
13844 * xdisp.c (handle_composition_prop): Set it->c to the first
13845 non-TAB component.
13846 (fill_composite_glyph_string): Change argument.
13847 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13848 (x_produce_glyphs): Fix handling of left/right padding.
13849
138502008-02-01 Kenichi Handa <handa@m17n.org>
13851
13852 * coding.c (detect_coding_system): Fix for handling off
13853 inhibit_iso_escape_detection. Fix for the case that no coding
13854 system is defined for a specific coding category.
13855
138562008-02-01 Kenichi Handa <handa@m17n.org>
13857
13858 * font.c (font_matching_entity): Delete unused local var.
13859
13860 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13861 opening a font.
13862
13863 * fileio.c (Finsert_file_contents): On recovering a file, assume
13864 Unix-like eol.
13865 (choose_write_coding_system): On auto-saving a file, force
13866 Unix-like eol.
13867
13868 * coding.c (setup_coding_system): Fix setting of
13869 coding->common_flags based on eol_type.
13870 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13871 inherit from it.
13872
138732008-02-01 Kenichi Handa <handa@m17n.org>
13874
13875 * alloc.c (NSTATICS): Increas to 0x600.
13876
138772008-02-01 Kenichi Handa <handa@m17n.org>
13878
13879 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13880 (ftfont_list): Don't check :name property.
13881 (ftfont_match): New function.
13882 (ftfont_pattern_entity): If the pattern doesn't contain
13883 FC_SPACING, don't assume FC_MONO.
13884
13885 * font.h (struct font_driver): New member `match'.
13886 (font_update_drivers): Adjust prototype.
13887
13888 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13889 property of FONT.
13890 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13891 them unconditionally.
13892 (font_matching_entity): New function.
13893 (font_open_by_name): Try font_matching_entity if exact match is
13894 not found.
13895 (font_update_drivers): Delete the arg FONT. Return a list of
13896 actually used backends. Don't free faces, font caches here.
13897 Don't store data in frame parameters. Don't call x_set_font.
13898 (Ffont_spec): Store :name property as is.
13899 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13900 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13901 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13902 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13903 Call font->driver->otf_gsub instead of font_otf_gsub.
13904
13905 * frame.c (x_set_font_backend): Do more works that were done in
13906 font_update_drivers before.
13907
13908 * xfont.c (xfont_match): New function.
13909 (xfont_driver): Set xfont_driver.match to xfont_match.
13910 (xfont_draw): Set font in GC if necessary.
13911
13912 * ftxfont.c (ftxfont_match): New function.
13913 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13914
13915 * xftfont.c (xftfont_match): New function.
13916 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13917
139182008-02-01 Kenichi Handa <handa@m17n.org>
13919
13920 * font.h (struct font): New member scalable.
13921 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13922 (font_otf_gsub): Adjust prototype.
13923
13924 * font.c (font_otf_capability): Fix handling of the default langsys.
13925 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13926 Check the contents of SPEC.
13927 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13928 (check_gstring): New function.
13929 (REPLACEMENT_CHARACTER): New macro.
13930 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13931 glyph codes of GSTRING.
13932 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13933 (font_prepare_composition): Set cmp->glyph_len.
13934 (font_open_entity): Set font->scalable.
13935 (Ffont_get): Handle :otf property.
13936 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13937 functions.
13938 (Fquery_font): Use font->font.full_name.
13939 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13940 Sfont_otf_alternates.
13941
13942 * ftfont.c (ftfont_open): Set font->font.full_name and
13943 font->font.name properly. Fix calculation of font->font.height
13944 and font->min_width.
13945
13946 * ftxfont.c (ftxfont_create_gcs): New function.
13947 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13948 (ftxfont_draw_backgrond): Fix filling region.
13949 (ftxfont_default_fid): New function.
13950 (ftxfont_open): Set xfont->fid to the return value of
13951 ftxfont_default_fid.
13952 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13953 (ftxfont_done_face): Free only GCs that are created by
13954 ftxfont_create_gcs.
13955 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13956
13957 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13958 Clip to src->width, etc (not src->clip_XXX).
13959
13960 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13961 FontBackend frame parameter.
13962
139632008-02-01 Kenichi Handa <handa@m17n.org>
13964
13965 * font.h (struct font_driver_list): New member `on'.
13966 (Fclear_font_cache): EXFUN it.
13967 (font_update_drivers): Extern it.
13968
13969 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13970 (font_list_entities): Check driver_list->on.
13971 (register_font_driver): Initalize `on' member to 0.
13972 (font_update_drivers): New function.
13973 (Fclear_font_cache): Check driver_list->on.
13974
13975 * frame.h (Qfont_backend): Extern it.
13976 (x_set_font_backend): Extern it.
13977
13978 * frame.c (Qfont_backend): New variable.
13979 (frame_parms): New element for font-backend.
13980 (x_set_font_backend): New function.
13981
13982 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13983 FontBackend frame parameter.
13984 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13985 x_set_font_backend.
13986
13987 * xfont.c (xfont_list): Don't try listing by :name property if the
13988 name is not for XLFD.
13989
139902008-02-01 Kenichi Handa <handa@m17n.org>
13991
13992 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13993 (LGLYPH_SET_TO): New macros.
13994 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
13995 element of G is vector or not.
13996 (font_at): Extern it.
13997
13998 * font.c: Include window.h.
13999 (font_lispy_object): New function.
14000 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
14001 end of valid glyph.
14002 (font_close_object): Fix getting (struct font *).
14003 (font_at): New function.
14004 (Ffont_get): If FONT is a font-object, get entity from it.
14005 (Ffont_make_gstring): Initialize elements of glyphs with nil.
14006 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
14007 range check.
14008 (Ffont_at): New function.
14009 (syms_of_font): Defsubr Sfont_at.
14010
14011 * xdisp.c (it_props): Move the entry for Qauto_composed to just
14012 before the entry for Qcomposition.
14013 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
14014 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
14015 the font in gstring.
14016 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
14017 LGLYPH_FORM (g) to detect the end of valid glyph.
14018 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
14019 we are composing with gstring.
14020
14021 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
14022 Check if adjustment is vector or not.
14023
14024 * Makefile.in (font.o): Make it depends on window.h.
14025
140262008-02-01 Kenichi Handa <handa@m17n.org>
14027
14028 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
14029 adjustment is vector or not.
14030
140312008-02-01 Miles Bader <miles@gnu.org>
14032
14033 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
14034
140352008-02-01 Kenichi Handa <handa@m17n.org>
14036
14037 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
14038 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
14039 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
14040
14041 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
14042 (DEVICE_DELTA): Fix typo.
14043 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
14044 LGLYPH format.
14045
14046 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
14047 the change of LGLYPH format.
14048
140492008-02-01 Kenichi Handa <handa@m17n.org>
14050
14051 * ftfont.c (ftfont_list): Fix typo.
14052 (ftfont_build_basic_charsets): Don't include letters with diacritics.
14053
140542008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14055
14056 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
14057
14058 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
14059 xftface_info is non-NULL.
14060
140612008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14062
14063 * ftfont.c (ftfont_list): Move misplaced #endif.
14064
140652008-02-01 Kenichi Handa <handa@m17n.org>
14066
14067 * ftfont.c (ftfont_list): Pay attention to the case that
14068 FC_CAPABILITY is not defined.
14069
140702008-02-01 Kenichi Handa <handa@m17n.org>
14071
14072 * xftfont.c (xftfont_open): Set charset related members to -1.
14073
14074 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
14075 QCname.
14076 (ftfont_open): Set charset related members to -1.
14077
14078 * fontset.c (Votf_script_alist): New variable.
14079 (syms_of_fontset): Initialize it.
14080 (fontset_font): Delete unused variable.
14081
14082 * fontset.h (Votf_script_alist): Extern it.
14083
14084 * font.c (font_find_for_lface): Optimize code.
14085
14086 * font.h (font_close_object, font_merge_old_spec): Extern them.
14087
140882008-02-01 Kenichi Handa <handa@m17n.org>
14089
14090 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
14091 (syms_of_font): Initialize them.
14092 (font_pixel_size): Allow float value in dpi.
14093 (font_prop_validate_type): Delete.
14094 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
14095 Change caller.
14096 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
14097 (font_prop_validate_extra): Delete.
14098 (font_prop_validate_spacing): New function.
14099 (font_property_table): Add elements for all known properties.
14100 (get_font_prop_index): Rename from check_font_prop_name. New
14101 argument FROM. Change caller.
14102 (font_prop_validate): Validate all known properties.
14103 (font_put_extra): Delete argument force. Change caller.
14104 (font_expand_wildcards): Make it static. Fix the way of shrinking
14105 the possible range.
14106 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
14107 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
14108 Change caller.
14109 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
14110 (font_parse_fcname): Delete argument merge. Fix parsing of point
14111 size. Don't validate properties values here. Change caller.
14112 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
14113 (font_open_by_name): Delete unused variable.
14114 (Ffont_spec): Likewise. Validate property values.
14115 (Ffont_match_p): New function.
14116
14117 * font.h (QCscalable): Extern it.
14118 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
14119
14120 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
14121
14122 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
14123 (xfont_list_pattern): New function.
14124 (xfont_list): Use xfont_list_pattern.
14125
141262008-02-01 Kenichi Handa <handa@m17n.org>
14127
14128 * font.h (Flist_fonts): EXFUN it.
14129
141302008-02-01 Jason Rumney <jasonr@gnu.org>
14131
14132 * w32term.c (w32_initialize): Add back smoothing_type and
14133 smoothing_enabled definitions.
14134
141352008-02-01 Kenichi Handa <handa@m17n.org>
14136
14137 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
14138 s->face->font on determining underline position.
14139
141402008-02-01 Kenichi Handa <handa@m17n.org>
14141
14142 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
14143 (font_has_char): Accept font-object too.
14144 (font_find_for_lface): Try at first with a size specified in face.
14145
141462008-02-01 Kenichi Handa <handa@m17n.org>
14147
14148 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
14149 font_open_by_name.
14150
141512008-02-01 Kenichi Handa <handa@m17n.org>
14152
14153 * font.h (QCspacing, QCdpi): Extern them.
14154 (enum font_spacing): New enum.
14155 (FONT_PIXEL_SIZE_QUANTUM): New macro.
14156
14157 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
14158 (QCspacing, QCdpi): New variables.
14159 (syms_of_font): Initialize them.
14160 (font_pixel_size): New function.
14161 (font_put_extra): New function.
14162 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
14163 in FONT_EXTRA.
14164 (font_parse_fcname): Handle enumerated values (e.g. bold).
14165 Fix handling font size. Add QCname property that contains only
14166 unknown properties.
14167 (font_score): Change argument. Change caller. Pay attention to
14168 FONT_PIXEL_SIZE_QUANTUM.
14169 (font_sort_entites, font_list_entities, font_find_for_lface)
14170 (font_open_for_lface, font_open_by_name): Fix handling of font size.
14171 (Ffont_spec): Add QCname property that contains only unknown properties.
14172
14173 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
14174 include weight in listing pattern, instead check weight of each
14175 listed font. Don't include scalable in pattern. Pay attention to
14176 FONT_PIXEL_SIZE_QUANTUM.
14177
141782008-02-01 Kenichi Handa <handa@m17n.org>
14179
14180 * font.c (font_parse_fcname): Fix parsing of point-size.
14181 (font_unparse_fcname): Produce symbolic names for style properties.
14182 (font_list_entities): Handle float size correctly.
14183 (font_open_by_name): Prefer `normal' property values if the name
14184 doesn't specify them.
14185
14186 * fontset.c (Finternal_char_font): Use font_get_name, not
14187 Ffont_xlfd_name.
14188
14189 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
14190 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
14191 pattern. Don't force scalable.
14192
14193 * xftfont.c (xftfont_open): For generating a name, start from
14194 96-byte buffer.
14195
141962008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14197
14198 * frame.h (x_new_fontset2): Fix prototype.
14199
142002008-02-01 Kenichi Handa <handa@m17n.org>
14201
14202 * font.h (struct font_driver): Delete member parse_name.
14203 (font_match_p, font_get_spec, font_parse_fcname)
14204 (font_unparse_fcname): Extern them.
14205 (font_get_name): Adjust prototype.
14206
14207 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
14208 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
14209 (font_expand_wildcards): Fix handling ENCODING field. Avoid
14210 unnecessary checks for weight, slant, and swidth.
14211 (font_parse_fcname): New function.
14212 (font_unparse_fcname): New function.
14213 (font_parse_name): New function.
14214 (font_match_p): New function.
14215 (font_get_name): Change return value to Lisp string.
14216 (font_get_spec): New function.
14217 (Qunspecified, Qignore_defface): Don't extern them.
14218 (font_find_for_lface): Assume that LFACE is fully specified.
14219 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
14220 object, use it for FACE.
14221 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
14222 driver->parse_name.
14223 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
14224
14225 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
14226 prototype.
14227
14228 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
14229 argument F. Don't call Fnew_fontset. Instead, directly call
14230 make_fontset.
14231
14232 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
14233
14234 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
14235 of x_new_fontset2.
14236
14237 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
14238 (Qsans__serif): New variables.
14239 (ftfont_generic_family_list): New variable.
14240 (syms_of_ftfont): Initialize the above variables.
14241 (ftfont_pattern_entity): Delete argument NAME.
14242 (ftfont_list_generic_family): New function.
14243 (ftfont_parse_name): Delete this function.
14244 (ftfont_list): Try generic family only when FcFontList found no font.
14245 (ftfont_list_family): Fix args to FcObjectSetBuild.
14246
14247 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
14248 object in attrs[LFACE_FONT_INDEX].
14249 (set_lface_from_font_name): Cancel all changes for font-backend.
14250 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
14251 function.
14252 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
14253 font object in QCfont attribute.
14254 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
14255 (realize_default_face) [USE_FONT_BACKEND]: Call
14256 set_lface_from_font_and_fontset.
14257
14258 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
14259 "fixed", and signal error here if no suitable font was found.
14260
14261 * xfont.c (xfont_parse_name): Delete this function.
14262
14263 * xftfont.c (xftfont_open): Change coding style of error
14264 handling. Generate fontconfig's fontname pattern.
14265
14266 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
14267 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
14268
14269 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
14270 Both args FONTSET and FONT_OBJECT must be existing ones.
14271
142722008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14273
14274 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
14275
142762008-02-01 Kenichi Handa <handa@m17n.org>
14277
14278 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
14279
14280 * font.h (struct font): Fix typo.
14281
14282 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
14283 XLFD_XXX_INDEX.
14284 (enum xlfd_field_mask): New enum.
14285 (intern_font_field): Changed argument. Change caller. If digits
14286 are followed by non-digits, return a symbol.
14287 (font_expand_wildcards): New function.
14288 (font_parse_xlfd): Fix wildcard handling.
14289 (Ffont_spec): If :name is specified, reflect the info in the other
14290 properties.
14291
14292 * ftfont.c (ftfont_pattern_entity): Fix typo.
14293 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
14294 locale.
14295
142962008-02-01 Kenichi Handa <handa@m17n.org>
14297
14298 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
14299
14300 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
14301 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
14302 registry doesn't specify encoding part.
14303 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
14304 (font_open_by_name): At first try parsing the name.
14305 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
14306 as Lisp symbols.
14307
14308 * fontset.c (reorder_font_vector): Pay attention to the case that
14309 the 3rd element of font_def is nil.
14310 (fontset_font): For the default fontset, append one more fontset
14311 elements for a script-based font specification. Don't add script
14312 attribute on finding a font.
14313 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
14314 font name.
14315 (fontset_ascii_font): If a font can't be opened, return nil.
14316
14317 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
14318 (ftfont_pattern_entity): New function.
14319 (ftfont_get_cache): Assume that freetype_font_cache is already
14320 initialized.
14321 (ftfont_list): Handle the case that a file is specified in font
14322 name. Use ftfont_pattern_entity to generate entities.
14323 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
14324 (syms_of_ftfont): Initialize freetype_font_cache.
14325
14326 * xftfont.c (xftfont_open): Make the font name fontconfig's
14327 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
14328 (xftfont_close): Free font->font.name if not NULL.
14329
14330 * xfont.c (xfont_list): If script is specified for a font, return
14331 null_vector.
14332 (xfont_list_family): Declare argument type.
14333
14334 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
14335 name, set LFACE_FONT (lface) to nil.
14336
14337 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
14338 return Qnil.
14339
143402008-02-01 Kenichi Handa <handa@m17n.org>
14341
14342 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
14343 (standard_args): Add "-enable-font-backend".
14344
143452008-02-01 Kenichi Handa <handa@m17n.org>
14346
14347 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
14348 (struct xftdraw_list, xftdraw_list): Delete them.
14349 (register_xftdraw, check_xftdraw): Delete them.
14350 (xftfont_prepare_face): Don't call register_xftdraw.
14351 (xftfont_done_face): Don't call check_xftdraw.
14352 (xftfont_draw): Get background color only when with_background is
14353 nonzero.
14354
14355 * xfont.c (xfont_encode_char): Fix calculation of char2b.
14356
143572008-02-01 Kenichi Handa <handa@m17n.org>
14358
14359 These changes are for the new font handling codes.
14360
14361 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
14362 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
14363 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
14364 (FONTSRC, FONTOBJ): New variables.
14365 (obj): Add $(FONTOBJ).
14366 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
14367 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
14368 @LIBOTF_LIBS@.
14369 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
14370 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
14371
14372 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
14373
14374 * character.h (Vscript_representative_chars): Extern it.
14375
14376 * character.c (Vscript_representative_chars): New variable.
14377 (syms_of_character): Declare it as a Lisp variable.
14378
14379 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
14380 enable_font_backend is nonzero, accept the composition method
14381 COMPOSITION_WITH_GLYPH_STRING.
14382
14383 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
14384 enumeration COMPOSITION_WITH_GLYPH_STRING.
14385
14386 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
14387 members clip_x, clip_y, clip_width, and clip_height.
14388 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14389
14390 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14391 --enable-font-backend. Call syms_of_font.
14392
14393 * fns.c (assoc_no_quit): New function.
14394
14395 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14396 (face_for_font, new_fontset_from_font)
14397 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14398
14399 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14400 (fontset_font, fontset_ascii, face_for_char)
14401 (make_fontset_for_ascii_face, Ffont_info)
14402 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14403 is nonzero, use font-backend mechanism.
14404 (find_font_encoding): Make it non-static.
14405 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14406 New functions.
14407
14408 * frame.h (struct frame): New members resx and resy.
14409 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14410 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14411
14412 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14413 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14414
14415 * lisp.h (assoc_no_quit): Extern it.
14416
14417 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14418 Through out the file, use FONT_INFO_FROM_FACE instead of
14419 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14420 rif->per_char_metric.
14421 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14422 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14423 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14424 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14425 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14426 nonzero, use font-backend mechanism.
14427 (get_per_char_metric): New function.
14428
14429 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14430 (set_lface_from_font_name)
14431 (set_font_frame_param, free_realized_face)
14432 (prepare_face_for_display, clear_face_gcs)
14433 (Finternal_set_font_selection_order, realize_x_face)
14434 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14435 font-backend mechanism.
14436 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14437 (load_face_font) [USE_FONT_BACKEND]: Abort.
14438 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14439 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14440
14441 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14442 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14443 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14444 nonzero, register all available font drivers. Call
14445 x_default_font_parameter for deciding a font.
14446 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14447
14448 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14449 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14450 (x_set_glyph_string_clipping_exactly)
14451 (x_compute_glyph_string_overhangs)
14452 (x_draw_glyph_string_foreground)
14453 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14454 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14455 enable_font_backend is nonzero, use font-backend mechanism.
14456 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14457
144582008-02-01 Kenichi Handa <handa@m17n.org>
14459
14460 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14461 system_eol_type.
14462 (syms_of_coding): Initialize system_eol_type.
14463
14464 * process.c (Fset_process_coding_system): Inherit system's eol
14465 format if necessary.
14466
144672008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14468
14469 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14470
144712008-02-01 Kenichi Handa <handa@m17n.org>
14472
14473 * coding.c (decode_eol): Pay attention to buffer relocation in
14474 del_range_2.
14475 (decode_coding): Call decode_eol before restoring undo_list.
14476
144772008-02-01 Kenichi Handa <handa@m17n.org>
14478
14479 * charset.c (Fdefine_charset_internal): Fix setting of
14480 emacs_mule_bytes.
14481
144822008-02-01 Kenichi Handa <handa@m17n.org>
14483
14484 * keyboard.c (read_char): Check if C is a character or not before
14485 looking up Vkeyboard_translate_table.
14486
144872008-02-01 Kenichi Handa <handa@m17n.org>
14488
14489 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14490 condition to terminate the loop.
14491
144922008-02-01 Kenichi Handa <handa@m17n.org>
14493
14494 * coding.c (produce_composition): Compare charbuf[i] instead of
14495 args[i] against 0.
14496 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14497
144982008-02-01 Kenichi Handa <handa@m17n.org>
14499
14500 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14501 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14502 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14503 detect_coding.
14504 (emacs_mule_char): Handle old style (Emacs 20) component character
14505 of a composition.
14506 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14507 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14508 composition rule.
14509 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14510
145112008-02-01 Kenichi Handa <handa@m17n.org>
14512
14513 * coding.c (encode_coding_ccl): Allocate destination dynamically
14514 when necessary.
14515
145162008-02-01 Kenichi Handa <handa@m17n.org>
14517
14518 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14519 the loop. When quitted, show a proper error message.
14520
145212008-02-01 Kenichi Handa <handa@m17n.org>
14522
14523 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14524 src->clip_head and src->clip_tail temporarily instead of src->hl.
14525
14526 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14527 character sequence.
14528 (Fccl_execute_on_string): Use ASET, not XSET.
14529
145302008-02-01 Kenichi Handa <handa@m17n.org>
14531
14532 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14533
145342008-02-01 Kenichi Handa <handa@m17n.org>
14535
14536 * coding.c (decode_coding): Fix the condition of terminating the
14537 decoding loop.
14538
145392008-02-01 Kenichi Handa <handa@m17n.org>
14540
14541 * data.c (Faset): On setting a character bigger than 255 in a
14542 unibyte string, signal an error instead of make the string multibyte.
14543
145442008-02-01 Kenichi Handa <handa@m17n.org>
14545
14546 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14547 made by a mapping table.
14548
145492008-02-01 Kenichi Handa <handa@m17n.org>
14550
14551 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14552 not.
14553 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14554 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14555
14556 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14557 s->face is NULL or not.
14558
145592008-02-01 Kenichi Handa <handa@m17n.org>
14560
14561 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14562 (x_draw_glyph_string): Fix drawing of right_overhang and
14563 left_overhang around/on cursor.
14564
14565 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14566
145672008-02-01 Kenichi Handa <handa@m17n.org>
14568
14569 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14570
145712008-02-01 Kenichi Handa <handa@m17n.org>
14572
14573 * coding.c (Fdefine_coding_system_internal)
14574 (Fdefine_coding_system_alias): Avoid a duplicated element in
14575 Vcoding_system_alist.
14576
145772008-02-01 Kenichi Handa <handa@m17n.org>
14578
14579 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14580
14581 * coding.c (Qcoding_system_define_form): New variable.
14582 (syms_of_coding): Intern and staticpro it.
14583 (Fcoding_system_p): Check Qcoding_system_define_form.
14584 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14585
14586 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14587 Fcoding_system_p.
14588 (CHECK_CODING_SYSTEM): If ID is not available, call
14589 Fcheck_coding_system.
14590 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14591 Try also Fcheck_coding_system.
14592
145932008-02-01 Kenichi Handa <handa@m17n.org>
14594
14595 * coding.c (code_conversion_restore): GCPRO arg.
14596
145972008-02-01 Kenichi Handa <handa@m17n.org>
14598
14599 * character.c (lisp_string_width): Check multibyteness of STRING.
14600
146012008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14602
14603 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14604 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14605 (decode_mac_font_name): Use decode_coding_c_string instead of
14606 decode_coding.
14607 (x_load_font): Initialize fontp->fontset to -1. Set
14608 fontp->encoding_type.
14609
146102008-02-01 Kenichi Handa <handa@m17n.org>
14611
14612 * search.c (search_buffer): Give up BM search on case-fold-search
14613 if one of a target character has a case-equivalence of different
14614 byte length even if that target charcter is an ASCII.
14615 (simple_search): Fix calculation of byte length of matched text.
14616 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14617
146182008-02-01 Kenichi Handa <handa@m17n.org>
14619
14620 * coding.c (decode_coding): Fix handling of invalid bytes.
14621
146222008-02-01 Kenichi Handa <handa@m17n.org>
14623
14624 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14625 Unicode characters.
14626
146272008-02-01 Kenichi Handa <handa@m17n.org>
14628
14629 * coding.c (encode_coding_object): If a pre-write-conversion
14630 function makes a new buffer, kill it.
14631
146322008-02-01 Kenichi Handa <handa@m17n.org>
14633
14634 * coding.c (QCascii_compatible_p): New variable.
14635 (syms_of_coding): Initialize it.
14636 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14637 calling string_char.
14638 (record_conversion_result): Add `default:' case.
14639 (coding_charset_list): Delete unused variable `coding_type'.
14640 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14641 property in the plist of the coding system.
14642 (Fcoding_system_put): Check QCascii_compatible_p.
14643
146442008-02-01 Miles Bader <miles@gnu.org>
14645
14646 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14647 removed calculation of frame `f', as it's now used.
14648
146492008-02-01 Kenichi Handa <handa@m17n.org>
14650
14651 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14652 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14653 (UNIDATA): New variable.
14654 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14655 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14656 $(RUN_TEMACS) unconditionally.
14657
146582008-02-01 Kenichi Handa <handa@m17n.org>
14659
14660 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14661 (admindir): New variable.
14662 ($(lispsource)international/charprop.el): New target.
14663
146642008-02-01 Miles Bader <miles@gnu.org>
14665
14666 * character.c (chars-in-region): Remove obsolete function.
14667 (syms_of_character): Remove its initialization.
14668
146692008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14670
14671 * w32select.c (validate_coding_system)
14672 (setup_windows_coding_system): New functions.
14673 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14674 setup_windows_coding_system.
14675 (setup_config, Fw32_get_clipboard_data): Use
14676 validate_coding_system.
14677 (Fx_selection_exists): Move call to setup_config to a place
14678 where signals are allowed.
14679
14680 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14681 (Fcheck_coding_system): Add declarations.
14682
146832008-02-01 Kenichi Handa <handa@m17n.org>
14684
14685 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14686
146872008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14688
14689 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14690 string as the second argument for x_new_fontset.
14691
146922008-02-01 Kenichi Handa <handa@m17n.org>
14693
14694 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14695 (encode_coding_object): Use safe_call instead of call2.
14696
146972008-02-01 Kenichi Handa <handa@m17n.org>
14698
14699 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14700
14701 * Makefile.in (lisp): Include charprop.el.
14702
147032008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14704
14705 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14706 Not sure if it's unnecessary.
14707
147082008-02-01 Steven Tamm <steventamm@mac.com>
14709
14710 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14711 some possibly unnecessary fontset checking code that crashed
14712 when creating a new frame.
14713
147142008-02-01 Kenichi Handa <handa@m17n.org>
14715
14716 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14717 lookup_face.
14718
14719 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14720
14721 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14722
147232008-02-01 Kenichi Handa <handa@m17n.org>
14724
14725 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14726 (coding_charset_list): New function.
14727
14728 * coding.h (coding_charset_list): Extern it.
14729
147302008-02-01 Kenichi Handa <handa@m17n.org>
14731
14732 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14733 concatenation of family and registry.
14734
147352008-02-01 Kenichi Handa <handa@m17n.org>
14736
14737 * character.h (BYTE8_STRING): Fix typo.
14738
14739 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14740 string to multibyte (sync to HEAD).
14741
14742 * casefiddle.c (casify_region): Handle changes in byte-length
14743 using replace_range_2 (sync to HEAD).
14744
147452008-02-01 Andreas Schwab <schwab@suse.de>
14746
14747 * chartab.c (map_char_table): GCPRO table and arg.
14748
147492008-02-01 Kenichi Handa <handa@m17n.org>
14750
14751 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14752 already at limit.
14753
147542008-02-01 Kenichi Handa <handa@m17n.org>
14755
14756 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14757 instead of fast_c_string_match_ignore_case.
14758 (find_font_encoding): Change argument to Lisp_Object. Use
14759 fast_string_match_ignore_case instead of
14760 fast_c_string_match_ignore_case. Change caller.
14761
147622008-02-01 Kenichi Handa <handa@m17n.org>
14763
14764 * xdisp.c (get_next_display_element): In unibyte case, decide to
14765 display in octal form by checking a character by
14766 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14767
14768 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14769
14770 * character.c (unibyte_has_multibyte_table): New variable.
14771
14772 * character.h (unibyte_has_multibyte_table): Extern it.
14773 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14774
147752008-02-01 Kenichi Handa <handa@m17n.org>
14776
14777 * coding.c (encode_coding_iso_2022): Fix handling of charset
14778 annotation.
14779
147802008-02-01 Kenichi Handa <handa@m17n.org>
14781
14782 * coding.c (setup_coding_system): If coding_system is nil, use
14783 Qundecided.
14784 (Fterminal_coding_system): Return nil if terminal coding system is
14785 `undecided'.
14786 (syms_of_coding): Define coding-system `undecided' here. Setup
14787 terminal_coding as `undecided'.
14788
147892008-02-01 Kenichi Handa <handa@m17n.org>
14790
14791 * xdisp.c (message_dolog, set_message_1): Call
14792 unibyte_char_to_multibyte with arg type int.
14793
14794 * lread.c (read1): Fix reading of a char-table.
14795
14796 * print.c (print_object): Include sub char-table in circularities
14797 detection.
14798
147992008-02-01 Kenichi Handa <handa@m17n.org>
14800
14801 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14802 Append the found sequences in car of ARGS instead of prepending.
14803
148042008-02-01 Kenichi Handa <handa@m17n.org>
14805
14806 * fileio.c (report_file_error): Make a unibyte string from
14807 strerror (errorno).
14808 (Fsubstitute_in_file_name): Fix the arg to
14809 unibyte_char_to_multibyte. It is evaluated twice.
14810
148112008-02-01 Kenichi Handa <handa@m17n.org>
14812
14813 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14814
148152008-02-01 Kenichi Handa <handa@m17n.org>
14816
14817 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14818 BOM is not found.
14819 (detect_coding, detect_coding_system): Optimization for ISO-2022
14820 when no 8-bit data is found.
14821
148222008-02-01 Jason Rumney <jasonr@gnu.org>
14823
14824 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14825
148262008-02-01 Kenichi Handa <handa@m17n.org>
14827
14828 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14829 CHARS.
14830
148312008-02-01 Steven Tamm <steventamm@mac.com>
14832
14833 * macterm.c (mac_encode_char): Add charset argument and update
14834 to use encoding_type.
14835 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14836 switch to pure fontset.
14837 (decode_mac_font_name): Temporarily remove decoding.
14838 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14839 (x_load_font): Temporarily remove encoding.
14840
148412008-02-01 Kenichi Handa <handa@m17n.org>
14842
14843 * xfaces.c (Fface_font): If frame is not on a window system,
14844 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14845 refer to face->font.
14846 (split_font_name_into_vector, build_font_name_from_vector)
14847 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14848 when HAVE_WINDOW_SYSTEM is defined.
14849
148502008-02-01 Kenichi Handa <handa@m17n.org>
14851
14852 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14853 (x_produce_glyphs): Fix setting of members of cmp in case
14854 cmp->glyph_len is zero.
14855
14856 * fontset.c (Fset_fontset_font): Fix docstring.
14857 (Ffontset_info): Make it backward compatible. New arg ALL.
14858
148592008-02-01 Kim F. Storm <storm@cua.dk>
14860
14861 * process.c (read_process_output): Grow decoding_buf when needed;
14862 this could cause a crash in allocate_string and compact_small_strings.
14863
148642008-02-01 Kenichi Handa <handa@m17n.org>
14865
14866 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14867
148682008-02-01 Kenichi Handa <handa@m17n.org>
14869
14870 * coding.c (setup_coding_system): Set coding->common_flags
14871 correctly for raw-text.
14872 (consume_chars): On encoding unibyte text by raw-text, don't check
14873 multibyte form.
14874 (encode_coding): On encoding by raw-text, never use translation tables.
14875
14876 * fileio.c (e_write): Short cut for the case of no encoding.
14877
148782008-02-01 Kenichi Handa <handa@m17n.org>
14879
14880 * coding.c (detect_coding, detect_coding_system): Delete unused
14881 variables.
14882
148832008-02-01 Kenichi Handa <handa@m17n.org>
14884
14885 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14886 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14887
148882008-02-01 Kenichi Handa <handa@m17n.org>
14889
14890 * coding.c (Ffind_coding_systems_region_internal): Include
14891 raw-text and no-conversion in the result.
14892
148932008-02-01 Kenichi Handa <handa@m17n.org>
14894
14895 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14896 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14897 FONT_DEF.
14898 (font_def_arg, add_arg, from_arg, to_arg): New args.
14899 (set_fontset_font): Change argument.
14900 (Fset_fontset_font): Fix for the case that TARGET is a script
14901 name and charset name.
14902 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14903
149042008-02-01 Kenichi Handa <handa@m17n.org>
14905
14906 * fontset.c (fontset_font): Rename from fontset_face. Change return
14907 value.
14908 (face_suitable_for_char_p, face_for_char): Adjust for the change
14909 of fontset_font.
14910 (make_fontset_for_ascii_face): Fix setting of the fontset element
14911 for ASCII.
14912 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14913 to get a font name.
14914 (Ffontset_info): Adjust for the change of fontset_font.
14915
14916 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14917
14918 * character.h (LEADING_CODE_LATIN_1_MIN)
14919 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14920
149212008-02-01 Kenichi Handa <handa@m17n.org>
14922
14923 * editfns.c (check_translation): New function.
14924 (Ftranslate_region_internal): Handle M:N mapping.
14925
149262008-02-01 Kenichi Handa <handa@m17n.org>
14927
14928 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14929
149302008-02-01 Kenichi Handa <handa@m17n.org>
14931
14932 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14933 goto invalid_code.
14934 (decode_coding_iso_2022): Fix handling of invalid designation.
14935
14936 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14937 after calling code_conversion_save.
14938
149392008-02-01 Kenichi Handa <handa@m17n.org>
14940
14941 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14942
14943 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14944
14945 * fontset.c: Include "intervals.h".
14946 (fontset_face): Fix comparing of Lisp_Objects.
14947 (free_face_fontset, new_fontset_from_font_name): Fix
14948 Lisp_Object/int mixup.
14949
14950 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14951
14952 * coding.c: Add many prototypes for static functions.
14953 (get_translation_table): Allow max_lookup to be NULL.
14954 (decode_coding, Ffind_coding_systems_region_internal)
14955 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14956 get_translation_table with max_lookup NULL.
14957
149582008-02-01 Kenichi Handa <handa@m17n.org>
14959
14960 * coding.c (get_translation_table): Declare it as Lisp_Object.
14961 (LOOKUP_TRANSLATION_TABLE): New macro.
14962 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14963 instead of CHAR_TABLE_REF.
14964
149652008-02-01 Kenichi Handa <handa@m17n.org>
14966
14967 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14968 annotation data format.
14969 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14970 Change arguments FROM and TO to single argument NCHARS. Change caller.
14971 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14972 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14973 (decode_coding_ccl, decode_coding_charset): Pay attention to
14974 coding->charbuf_used.
14975 (get_translation): New function.
14976 (produce_chars): New arguments translation_table and last_block.
14977 Translate characters here. Return number of carryover chars.
14978 Change caller.
14979 (produce_composition): New argument pos. Change caller.
14980 Adjust for the change of annotation data format.
14981 (produce_charset, produce_annotation): Likewise.
14982 (decode_coding, encode_coding): Don't call translate_chars.
14983 (consume_chars): New arg translation_table. Change caller.
14984 (translate_chars): Delete.
14985 (syms_of_coding): Make translation-table's number of extra slots 2.
14986
149872008-02-01 Kenichi Handa <handa@m17n.org>
14988
14989 * search.c (simple_search): Fix setting this_pos_byte in backward
14990 search.
14991
14992 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14993 byte sequence.
14994 (detect_coding_ccl): Fix setting of the variable valids.
14995
149962008-02-01 Kenichi Handa <handa@m17n.org>
14997
14998 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
14999
15000 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
15001
15002 * editfns.c (Ftranslate_region_internal): Rename from
15003 Ftranslate_region. Accept a char-table in TABLE.
15004 (syms_of_editfns): Defsubr Stranslate_region_internal.
15005
15006 * xfaces.c (set_lface_from_font_name): If a font is specified for
15007 a frame, generate a fontset from the font.
15008 (build_scalable_font_name): If the scalable font is requested for
15009 a specific size, don't change that size.
15010 (try_font_list): Try a scalable font also in the case that a
15011 pattern string is specified.
15012
150132008-02-01 Kenichi Handa <handa@m17n.org>
15014
15015 * xfaces.c (Fface_font): New optional arg CHARACTER.
15016
150172008-02-01 Kenichi Handa <handa@m17n.org>
15018
15019 * charset.h (CHARSET_OFFSET): New macro.
15020
150212008-02-01 Kenichi Handa <handa@m17n.org>
15022
15023 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
15024
15025 * fontset.c (fontset_face): Handle the case that repertory is a
15026 char-table.
15027 (find_font_encoding): Return nil for unknown encoding.
15028 (Fset_fontset_font): Ignore a font of unknown encoding.
15029
150302008-02-01 Kenichi Handa <handa@m17n.org>
15031
15032 * keymap.c (describe_vector): Handle default value of a char table.
15033
15034 * fontset.c (fontset_face): Handle fallback fonts correctly.
15035 (Ffontset_info): Return infomation about fallback fonts.
15036
150372008-02-01 Kenichi Handa <handa@m17n.org>
15038
15039 * fontset.c (FONTSET_DEFAULT): New macro.
15040 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
15041 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
15042 the case that it is nil.
15043 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
15044 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
15045
15046 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
15047 subset or superset.
15048
150492008-02-01 Kenichi Handa <handa@m17n.org>
15050
15051 * emacs.c (main): Call init_charset after syms_of_XXX.
15052
15053 * charset.c (Vcharset_map_directory): Delete.
15054 (Vcharset_map_path): New variable.
15055 (load_charset_map_from_file): Use Vcharset_map_path instead.
15056 (init_charset): Initialize Vcharset_map_path.
15057 (syms_of_charset): Delete declaration of "charset-map-directory",
15058 add declaration of "charset-map-path".
15059
150602008-02-01 Kenichi Handa <handa@m17n.org>
15061
15062 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
15063 ASCII only string.
15064
15065 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
15066
15067 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
15068 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
15069
150702008-02-01 Kenichi Handa <handa@m17n.org>
15071
15072 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
15073
15074 * coding.c (QCmnemonic, QCdefalut_char)
15075 (QCdecode_translation_table, QCencode_translation_table)
15076 (QCpost_read_conversion, QCpre_write_conversion): New variables.
15077 (get_translation_table): Return a list of translation tables if
15078 necessary.
15079 (decode_coding): Call get_translation_table with ENCODEP 0.
15080 (char_encodable_p): If translation_table is non-nil, always call
15081 translate_char.
15082 (Fdefine_coding_system_internal): Accept list of translation
15083 tables as :encode-translation-table and :decode-translation-table.
15084 (Fcoding_system_put): New function.
15085 (syms_of_coding): Declare new symbols. Defsubr
15086 Scoding_system_put.
15087 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
15088 typically JISX0212.
15089
15090 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
15091 when the charset is superset type.
15092
15093 * character.c (translate_char): Accept list of translation tables.
15094
150952008-02-01 Kenichi Handa <handa@m17n.org>
15096
15097 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
15098 (CODING_ATTR_TRANS_TBL): New macro.
15099
15100 * coding.c (get_translation_table): New function.
15101 (translate_chars): Fix the bug of skipping annotation data.
15102 (decode_coding, encode_coding): Utilize get_translation_table.
15103 (char_encodable_p, Funencodable_char_position): Translate char if
15104 necessary.
15105 (Ffind_coding_systems_region_internal)
15106 (Fcheck_coding_systems_region): Setup translation table for encode
15107 in a coding system attribute vector in advance.
15108 (Fdefine_coding_system_internal): Allow a symbol as translation
15109 table. For shift-jis type coding system, allow 4th charset.
15110
151112008-02-01 Kenichi Handa <handa@m17n.org>
15112
15113 * coding.c (decode_coding_sjis): Check the first byte rigidly.
15114
15115 * xdisp.c (get_next_display_element): Pass -1 as POS to
15116 FACE_FOR_CHAR if displaying a C-string.
15117
151182008-02-01 Kenichi Handa <handa@m17n.org>
15119
15120 * composite.c (get_composition_id): Handle xoff and yoff in a
15121 composition rule.
15122
15123 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
15124 (struct composition): New member lbearing and rbearing.
15125
15126 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
15127 (x_get_glyph_overhangs): Handle a composition glyph.
15128 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
15129
15130 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
15131 composition glyph.
15132
151332008-02-01 Kenichi Handa <handa@m17n.org>
15134
15135 * print.c: Include charset.h.
15136 (Vprint_charset_text_property): New variable.
15137 (Qdefault): Extern it.
15138 (PRINT_STRING_NON_CHARSET_FOUND)
15139 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
15140 (print_check_string_result): New variable.
15141 (print_check_string_charset_prop): New function.
15142 (print_prune_charset_plist): New variable.
15143 (print_prune_string_charset): New function.
15144 (print_object): Call print_prune_string_charset if
15145 Vprint_charset_text_property is not t.
15146 (print_interval): Print nothing if interval->plist is nil.
15147 (syms_of_print): Declare Vprint_charset_text_property as a lisp
15148 variable. Init and staticpro print_prune_charset_plist.
15149
151502008-02-01 Kenichi Handa <handa@m17n.org>
15151
15152 * fontset.c (new_fontset_from_font_name): Use the specified font
15153 for all characters in the new fontset.
15154
15155 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15156 OBJECT args.
15157
15158 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
15159 OBJECT args for composition too.
15160
15161 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15162 OBJECT args.
15163
151642008-02-01 Kenichi Handa <handa@m17n.org>
15165
15166 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
15167
15168 * fontset.c (reorder_font_vector): Adjust for the change of
15169 FONT_DEF format.
15170 (fontset_face): New arg id. Change caller.
15171 (face_for_char): New args pos and object.
15172 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
15173 (fs_query_fontset): Check NAME by Fassoc too.
15174 (Fset_fontset_font): Allow non-XLFD font name.
15175 (Ffontset_info): Adjust for the change of FONT_DEF format.
15176
15177 * fontset.h (face_for_char): Adjust prototype.
15178
15179 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
15180 (append_space, extend_face_to_end_of_line)
15181 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15182 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
15183
15184 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
15185 POS and OBJECT args.
15186
15187 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
15188 POS and OBJECT args.
15189
151902008-02-01 Jason Rumney <jasonr@gnu.org>
15191
15192 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
15193 of GlobalAlloc'ed memory.
15194
151952008-02-01 Kenichi Handa <handa@m17n.org>
15196
15197 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
15198
15199 * charset.h (charset_table_used): Delete extern.
15200
15201 * charset.c (charset_table_used): Make it static.
15202 (map_charset_chars): Fix args to c_function with.
15203
15204 * chartab.c (map_sub_char_table_for_charset): Fix args to
15205 c_function with.
15206
15207 * coding.h (enum coding_result_code): Delete
15208 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
15209
15210 * coding.c (Qinsufficient_source, Qinconsistent_eol)
15211 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
15212 (Vlast_code_conversion_error): New variables.
15213 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
15214 (ONE_MORE_BYTE): Record error if any instead of signaling an
15215 error. If non-ASCII multibyte char is found, return the negative
15216 value of the code. All callers changed to check it.
15217 (ONE_MORE_BYTE_NO_CHECK): Likewise.
15218 (record_conversion_result): New function. Change all codes setting
15219 coding->result to call this function.
15220 (detect_coding_utf_8, decode_coding_utf_8)
15221 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
15222 Don't use the local variable incomplete.
15223 (emacs_mule_char): Change the second arg to `const'.
15224 (decode_coding): Fix of flushing out unprocessed data.
15225 (make_conversion_work_buffer): Fix making of a work buffer.
15226 (decode_coding_object): Return coding->dst_object.
15227
15228 * fontset.c (set_fontset_font): Fix args.
15229
15230 * lisp.h (CHARACTERBITS): Define as 22.
15231
15232 * process.c (send_process): Be sure to set coding->src_multibyte.
15233
15234 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
15235
152362008-02-01 Kenichi Handa <handa@m17n.org>
15237
15238 * xdisp.c (handle_auto_composed_prop): Give limit to
15239 Fnext_single_char_property_change.
15240
152412008-02-01 Kenichi Handa <handa@m17n.org>
15242
15243 * composite.c (syms_of_composite): Don't make the composition hash
15244 table weak.
15245
15246 * fontset.c (Fset_fontset_font): Fix docstring.
15247
15248 * lisp.h (detect_coding_system): Adjust prototype.
15249
15250 * fileio.c (kill_workbuf_unwind): Delete this function.
15251 (Finsert_file_contents): Adjust the call of detect_coding_system.
15252 Get conversion_buffer by code_conversion_save. Use the macro
15253 CODING_MAY_REQUIRE_DECODING. After decoding, update
15254 coding_system.
15255
15256 * coding.h (make_conversion_work_buffer): Delete extern.
15257 (code_conversion_save): Extern it.
15258
15259 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
15260 (CODING_GET_INFO): Delete argument eol_type. Change callers.
15261 (decode_coding_utf_8): Don't do eol converion.
15262 (detect_coding_utf_16): Check coding->src_chars, not
15263 coding->src_bytes. Add heuristics for those that have no signature.
15264 (decode_coding_emacs_mule, decode_coding_iso_2022)
15265 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15266 Don't do eol converion.
15267 (adjust_coding_eol_type): Return a new coding system.
15268 (detect_coding): Don't detect eol. Fix for utf-16 detection.
15269 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
15270 each change.
15271 (decode_coding): Pay attention to undo_list. Do eol conversion for
15272 all types of coding-systems (if necessary).
15273 (Vcode_conversion_work_buf_list): Delete it.
15274 (Vcode_conversion_reused_workbuf): Rename from
15275 Vcode_conversion_reused_work_buf.
15276 (Vcode_conversion_workbuf_name): New variable.
15277 (reused_workbuf_in_use): New variable.
15278 (make_conversion_work_buffer): Delete the arg DEPTH.
15279 (code_conversion_restore): Change argument to cons.
15280 (code_conversion_save): Delete the argument BUFFER. Change callers.
15281 (detect_coding_system): New argument src_chars. Change callers.
15282 Fix for utf-16 detection.
15283 (init_coding_once): Don't use ISO_carriage_return.
15284 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
15285 reused_workbuf_in_use.
15286
152872008-02-01 Kenichi Handa <handa@m17n.org>
15288
15289 * keymap.c (store_in_keymap): Pay attention to the case that idx
15290 is a cons specifying a character range.
15291
152922008-02-01 Kenichi Handa <handa@m17n.org>
15293
15294 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
15295 HANDLED_RECOMPUTE_PROPS.
15296
15297 * coding.c (Fdefine_coding_system_internal): Fix checking of
15298 ascii compatibility.
15299
153002008-02-01 Kenichi Handa <handa@m17n.org>
15301
15302 * charset.c (find_charsets_in_text): Delete unused locale variable.
15303 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
15304
15305 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
15306 Resync charset_list to Vemacs_mule_charset_list.
15307
15308 * keymap.c (store_in_keymap): Pay attention to the case that idx
15309 is a cons specifying a character range.
15310
153112008-02-01 Kenichi Handa <handa@m17n.org>
15312
15313 * composite.c (update_compositions): Bind inhibit-read-only, etc
15314 to t before calling remove-list-of-text-properties.
15315
15316 * print.c (print_object): Always print ASCII chars as is.
15317
153182008-02-01 Kenichi Handa <handa@m17n.org>
15319
15320 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
15321
15322 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
15323 is a char table.
15324
153252008-02-01 Kenichi Handa <handa@m17n.org>
15326
15327 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
15328
153292008-02-01 Kenichi Handa <handa@m17n.org>
15330
15331 * xfaces.c (set_lface_from_font_name): Fix for the case that
15332 FONTNAME is not fontset name.
15333
153342008-02-01 Kenichi Handa <handa@m17n.org>
15335
15336 * fns.c (base64_encode_1): Fix previous change.
15337
153382008-02-01 Kenichi Handa <handa@m17n.org>
15339
15340 * fontset.c (set_fontset_font): New function.
15341 (Fset_fontset_font): If a font is specified for a charset, use
15342 map_charset_chars to store the font spec in a fontset.
15343
153442008-02-01 Kenichi Handa <handa@m17n.org>
15345
15346 * fontset.c (fontset_face): Create a fallback fontset on demand.
15347 (make_fontset): Don't create a fallback fontset here.
15348 (free_face_fontset): Free a fallback fontset (if any) too.
15349 (n_auto_fontsets): Delete this variable.
15350 (auto_fontset_alist): New variable.
15351 (new_fontset_from_font_name): Check auto_fontset_alist.
15352 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
15353 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
15354 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
15355 Defsubr Sfontset_list_all.
15356
153572008-02-01 Kenichi Handa <handa@m17n.org>
15358
15359 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
15360
153612008-02-01 Kenichi Handa <handa@m17n.org>
15362
15363 * fontset.c (Fnew_fontset): Check NAME more rigidly.
15364
153652008-02-01 Kenichi Handa <handa@m17n.org>
15366
15367 * editfns.c (Fgoto_char): Fix docstring.
15368
153692008-02-01 Kenichi Handa <handa@m17n.org>
15370
15371 * insdel.c (insert_from_gap): Adjust intervals correctly.
15372
153732008-02-01 Jason Rumney <jasonr@gnu.org>
15374
15375 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
15376 (pfnGetFontUnicodeRanges): New dynamically loaded function.
15377 (w32_initialize): Try to load it.
15378 (x_get_font_repertory): Use it if available.
15379 (w32_encode_char): Add shortcut for unicode output.
15380
15381 * w32fns.c (w32_load_system_font): Default charset to -1.
15382 (x_to_w32_charset): Match all fonts for unicode.
15383 (w32_to_x_charset): New parameter matching. Don't return partial
15384 or wildcard charsets.
15385 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
15386 (w32_codepage_for_font): Return CP_UNICODE for unicode.
15387 (w32_to_x_font): Match charset to real charset.
15388 (enum_font_cb2): Always list unicode versions.
15389
15390 * makefile.w32-in (temacs): Increase EMHEAP.
15391
153922008-02-01 Jason Rumney <jasonr@gnu.org>
15393
15394 * w32term.c (w32_encode_char): New charset parameter.
15395 font_info.encoding becomes encoding_type.
15396 (x_get_font_repertory): New function. Warning: stub only!
15397 (x_new_font): Return quickly if font already set.
15398 (x_new_fontset): fontsetname parameter is Lisp_Object.
15399 Use new fs_query_fontset. Try new_fontset_from_font_name.
15400 Use fontset_name for return value.
15401
15402 * w32term.h: Declare x_get_font_repertory.
15403
15404 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15405 place of find_charset_in_text. Use encode_coding_object in place
15406 of encode_coding.
15407 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15408 decode_coding.
15409
15410 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15411 of x_new_fontset.
15412 (w32_load_system_font): Initialize charset as unicode.
15413 font_info.encoding becomes encoding_type.
15414 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15415 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15416 (syms_of_w32fns): Set get_font_repertory_func.
15417
15418 * w32console.c: Include character.h. Use terminal_encode_buffer
15419 from term.c.
15420 (write_glyphs): Use new version of encode_terminal_code. Use
15421 encode_coding_object in place of encode_coding.
15422
15423 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15424 encoding becomes encoding_type.
15425
15426 * term.c (terminal_encode_buffer): Make externally visible.
15427
15428 * makefile.w32-in: Add character.h dependancies.
15429 (character.o, chartab.o): New targets.
15430
154312008-02-01 Kenichi Handa <handa@m17n.org>
15432
15433 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15434 CODING_ID_EOL_TYPE.
15435
154362008-02-01 Andreas Schwab <schwab@suse.de>
15437
15438 * coding.c (produce_chars): Revert last change.
15439
154402008-02-01 Kenichi Handa <handa@m17n.org>
15441
15442 * charset.h (charset_unicode): Extern it.
15443
15444 * charset.c (string_xstring_p): Check by (C >= 0x100).
15445 (find_charsets_in_text): Change format of the arc CHARSETS. New
15446 arg MULTIBYTE.
15447 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15448 change of find_charsets_in_text.
15449 (Fsplit_char): Fix doc. Never return unknown.
15450
15451 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15452
15453 * coding.c (Fdefine_coding_system_alias): Update
15454 Vcoding_system_list.
15455
15456 * fontset.c (load_font_get_repertory): Pay attention to the case
15457 that ENCODING of a font is specified by a char-table.
15458
15459 * xterm.c (x_get_font_repertory): Handle the case that the
15460 encoding of font is other than Unicode.
15461
154622008-02-01 Kenichi Handa <handa@m17n.org>
15463
15464 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15465 if a character is encodable by the terminal coding system. If
15466 not, produces proper number of `?'s. Update
15467 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15468 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15469
154702008-02-01 Kenichi Handa <handa@m17n.org>
15471
15472 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15473 variables.
15474 (encode_terminal_code): Change argument. Encode multiple
15475 characters at once. Store the result of encoding in
15476 terminal_encode_buffer.
15477 (write_glyphs, insert_glyphs): Adjust for the change of
15478 encode_terminal_code.
15479 (term_init): Initialize terminal_encode_buffer and
15480 terminal_encode_buf_size.
15481
15482 * coding.c (consume_chars): If coding->src_object is nil, don't
15483 check annotation.
15484
154852008-02-01 Kenichi Handa <handa@m17n.org>
15486
15487 * character.c (char_string): Use ASCII_CHAR_P instead of
15488 SINGLE_BYTE_CHAR_P.
15489
154902008-02-01 Kenichi Handa <handa@m17n.org>
15491
15492 * xdisp.c (handle_auto_composed_prop): Check if the last
15493 characters of auto-composed region is newly composed with the
15494 following characters.
15495 (handle_composition_prop): Fix checking of point being inside
15496 composition.
15497
154982008-02-01 Kenichi Handa <handa@m17n.org>
15499
15500 * fns.c (concat): Don't change multibyteness of the result by
15501 concatenating an 8-bit character.
15502
15503 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15504 multibyteness of the result when newelt is an 8-bit character.
15505
155062008-02-01 Dave Love <fx@gnu.org>
15507
15508 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15509 EMACS_INT.
15510
15511 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15512
15513 * xfaces.c (face_numeric_value): Declare dim size_t.
15514 (Finternal_lisp_face_equal_p): Remove unused f.
15515
15516 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15517 (MATRIX_ROW): Remove unused vars.
15518 (draw_glyphs, x_insert_glyphs, fast_find_position)
15519 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15520 byte/char counts.
15521
15522 * regex.c (regex_compile): Remove unused var.
15523
15524 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15525
15526 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15527 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15528
15529 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15530
15531 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15532
15533 * fileio.c (Fwrite_region): Remove unused var.
15534
15535 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15536 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15537
15538 * composite.c (Fremove_list_of_text_properties): Declare.
15539
15540 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15541 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15542 (coding_inherit_eol_type): Remove unused attrs.
15543 (detect_coding): Cast arg of detect_eol.
15544
15545 * charset.c (syms_of_charset): Remove unused var p.
15546 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15547 byte/char counts.
15548
15549 * casetab.c (set_case_table): Remove unused var.
15550
15551 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15552 unused vars.
15553
155542008-02-01 Dave Love <fx@gnu.org>
15555
15556 * xterm.c (x_bitmap_mask): Declare.
15557
155582008-02-01 Dave Love <fx@gnu.org>
15559
15560 * xterm.c (x_term_init): Fix type error.
15561
15562 * lisp.h: Add Funibyte_char_to_multibyte.
15563
15564 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15565 (Fset_coding_system_priority): Doc fix.
15566
15567 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15568
15569 * indent.c (check_composition): Make start and end EMACS_INT.
15570
15571 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15572
15573 * xdisp.c (handle_composition_prop, check_point_in_composition):
15574 Make buffer positions EMACS_INT.
15575
15576 * composite.c (find_composition, run_composition_function)
15577 (update_compositions, Ffind_composition_internal): Make buffer
15578 positions EMACS_INT.
15579
15580 * composite.h (find_composition, update_compositions): Make
15581 position args EMACS_INT.
15582
15583 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15584
15585 * intervals.c (get_property_and_range):
15586 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15587
15588 * unexalpha.c: Don't include varargs.h.
15589
155902008-02-01 Dave Love <fx@gnu.org>
15591
15592 * coding.h (ENCODE_UTF_8): New.
15593
15594 * Makefile.in (gtkutil.o): Depend on coding.h.
15595
15596 * coding.c (Fset_coding_system_priority): Doc fix.
15597
155982008-02-01 Kenichi Handa <handa@m17n.org>
15599
15600 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15601 the case of auto saving.
15602
156032008-02-01 Andreas Schwab <schwab@suse.de>
15604
15605 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15606 `range' from GC.
15607
156082008-02-01 Kenichi Handa <handa@m17n.org>
15609
15610 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15611
156122008-02-01 Kenichi Handa <handa@m17n.org>
15613
15614 * fileio.c (choose_write_coding_system): Return a decided coding system.
15615 (Fwrite_region): Set Vlast_coding_system_used to the return value
15616 of choose_write_coding_system.
15617
156182008-02-01 Kenichi Handa <handa@m17n.org>
15619
15620 * charset.c (Fset_charset_priority): Pay attention to duplicated
15621 arguments.
15622
15623 * coding.c (QCcategory): New variable.
15624 (syms_of_coding): Defsym it. Set all elements of
15625 Vcoding_category_table and their symbol values.
15626 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15627 coding-category-XXX, and coding-category-list.
15628 (Fdefine_coding_system_internal): Add category in the plist.
15629
156302008-02-01 Kenichi Handa <handa@m17n.org>
15631
15632 * callproc.c (Fcall_process): Handle carryover correctly.
15633
15634 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15635 (raw_text_coding_system): Check NILP (coding_system).
15636 (coding_inherit_eol_type): Check NILP (coding_system) and
15637 NILP (parent).
15638 (consume_chars): Fix for the case of raw-text.
15639
15640 * process.c (read_process_output): Handle carryover correctly.
15641
156422008-02-01 Dave Love <fx@gnu.org>
15643
15644 * regex.c (re_search_2): Fix last change.
15645
156462008-02-01 Kenichi Handa <handa@m17n.org>
15647
15648 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15649 target_multibyte. Even in a unibyte case, return a converted
15650 multibyte char.
15651 (GET_CHAR_AFTER): New macro.
15652 (PATFETCH): Translate via multibyte char.
15653 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15654 (SETUP_MULTIBYTE_RANGE): New macro.
15655 (regex_compile): Setup compiled code so that its multibyteness
15656 matches that of a target. Fix the handling of "[X-YZ]" using
15657 SETUP_MULTIBYTE_RANGE.
15658 (analyse_first) <charset>: For filling fastmap for all multibyte
15659 characters, don't check by BASE_LEADING_CODE_P.
15660 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15661 the same as RE_MULTIBYTE_P (bufp) now.
15662 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15663 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15664 (TRANSLATE_VIA_MULTIBYTE): New macro.
15665 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15666 It is the same as RE_MULTIBYTE_P (bufp) now.
15667 <exactn>: Translate via multibyte.
15668 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15669 translate it.
15670 <charset, charset_not>: Fetch a character by
15671 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15672 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15673 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15674 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15675 by GET_CHAR_AFTER.
15676 (bcmp_translate): Likewise.
15677
15678 * search.c (compile_pattern): Check the member target_multibyte,
15679 not the member multibyte of buf.
15680
15681 * lread.c (read1): While reading a string, set force_singlebyte
15682 and force_multibyte correctly.
15683
15684 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15685 up of unibyte_to_multibyte_table.
15686
156872008-02-01 Kenichi Handa <handa@m17n.org>
15688
15689 * coding.c (setup_coding_system): If coding has
15690 post-read-conversion or pre-write-conversion, set
15691 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15692 respectively.
15693 (decode_coding_gap): Run post-read-conversion if any.
15694
15695 * fileio.c (Finsert_file_contents): Even if we read into a
15696 unibyte buffer, check if we must decode the result or not.
15697
156982008-02-01 Kenichi Handa <handa@m17n.org>
15699
15700 * coding.c (make_conversion_work_buffer): Change the work buffer
15701 name to the same one as that of Emacs 21.
15702
157032008-02-01 Kenichi Handa <handa@m17n.org>
15704
15705 * coding.h (make_conversion_work_buffer): Adjust prototype.
15706 (code_conversion_restore): Don't extern it.
15707
15708 * coding.c (detected_mask): Delete unused variable.
15709 (decode_coding_iso_2022): Pay attention to the byte sequence of
15710 CTEXT extended segment, and retain those bytes as is.
15711 (decode_coding_ccl): Delete unused variable `valids'.
15712 (setup_coding_system): Delete unused variable `category'.
15713 (consume_chars): Delete unused variable `category'. Make it work
15714 for non-multibyte case.
15715 (make_conversion_work_buffer): Change argument.
15716 (saved_coding): Delete unused variable.
15717 (code_conversion_restore): Don't check saved_coding->destination.
15718 (code_conversion_save): New function.
15719 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15720 instead of record_unwind_protect.
15721 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15722 (detect_coding_system): Delete unused variable `mask'.
15723 (Fdefine_coding_system_internal): Delete unused variable id.
15724
15725 * fileio.c (kill_workbuf_unwind): New function.
15726 (Finsert_file_contents): On replacing, call
15727 make_conversion_work_buffer with correct args, and call
15728 record_unwind_protect with the first arg kill_workbuf_unwind.
15729
15730 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15731
157322008-02-01 Kenichi Handa <handa@m17n.org>
15733
15734 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15735 (fontset_add): Fix for the case that TO is less than TO1.
15736 (Ffontset_info): Don't use fallback fontset on checking the
15737 default fontset.
15738 (dump_fontset): New function for debugging.
15739
15740 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15741 coding_type is Qcharset.
15742
157432008-02-01 Kenichi Handa <handa@m17n.org>
15744
15745 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15746 (map_char_table): Don't inherit the value from the parent on
15747 initializing VAL. Adjust for the above change.
15748
157492008-02-01 Kenichi Handa <handa@m17n.org>
15750
15751 * coding.c (Qsignature, Qendian): Delete these variables.
15752 (syms_of_coding): Don't initialize them.
15753 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15754 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15755 detect_info->found.
15756 (decode_coding_utf_16): Don't detect BOM here.
15757 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15758 is NOT utf_16_without_bom.
15759 (setup_coding_system): For a coding system of type utf-16, check
15760 if the attribute :endian is Qbig or not (not nil or not), and set
15761 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15762 (detect_coding): If coding type is utf-16 and BOM detection is
15763 required, detect it.
15764 (Fdefine_coding_system_internal): For a coding system of type
15765 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15766
157672008-02-01 Kenichi Handa <handa@m17n.org>
15768
15769 * coding.c (coding_set_source): Fix for the case that the current
15770 buffer is different from coding->src_object.
15771 (decode_coding_object): Don't use the conversion work buffer if
15772 DST_OBJECT is a buffer.
15773
157742008-02-01 Dave Love <fx@gnu.org>
15775
15776 * lread.c (read_emacs_mule_char) [len==2]: Index
15777 emacs_mule_charset correctly.
15778
157792008-02-01 Dave Love <fx@gnu.org>
15780
15781 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15782 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15783 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15784 treated specially.)
15785 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15786 (detected_mask): Remove Big5 bits.
15787
157882008-02-01 Kenichi Handa <handa@m17n.org>
15789
15790 The following changes are to make the font rescaling facility
15791 compatible with Emacs 21.
15792
15793 * xfaces.c (Vface_font_rescale_alist): Rename from
15794 Vface_resizing_fonts.
15795 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15796 (font_rescale_ratio): Rename from font_resizing_ratio.
15797 (split_font_name): Set font->rescale_ratio.
15798 (better_font_p): Pay attention to font->rescale_ratio.
15799 (build_scalable_font_name): Likewise. Change RESX, and RESY
15800 fields.
15801 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15802
158032008-02-01 Kenichi Handa <handa@m17n.org>
15804
15805 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15806 (Qutf_16_le): Remove these variables.
15807 (syms_of_coding): Don't DEFSYM them.
15808 (decode_coding_utf_16): Fix handling of BOM.
15809 (encode_coding_utf_16): Fix handling of BOM.
15810
158112008-02-01 Kenichi Handa <handa@m17n.org>
15812
15813 * fileio.c (Finsert_file_contents): On replacing, before decoding
15814 the file into the work buffer, set point of the work buffer to the end.
15815
158162008-02-01 Dave Love <fx@gnu.org>
15817
15818 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15819
158202008-02-01 Dave Love <fx@gnu.org>
15821
15822 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15823 and fix C types.
15824
158252008-02-01 Kenichi Handa <handa@m17n.org>
15826
15827 * xdisp.c (SKIP_GLYPHS): New macro.
15828 (set_cursor_from_row): Pay attention to string display properties.
15829
15830 * category.c (copy_category_entry): Fix for the case that RANGE
15831 is an integer.
15832
15833 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15834
15835 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15836
158372008-02-01 Kenichi Handa <handa@m17n.org>
15838
15839 * charset.c (Fcharset_id_internal): New function.
15840 (syms_of_charset): Defsubr it.
15841
15842 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15843 with the last arg charset_list acquired from coding.
15844 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15845 the attribute coding_attr_ccl_valids.
15846
15847 * coding.h (enum define_coding_ccl_arg_index): Set the first
15848 member coding_arg_ccl_decoder to coding_arg_max.
15849
15850 * ccl.h (ccl_driver): Adjust prototype.
15851
15852 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15853 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15854 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15855 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15856 last arg Qnil.
15857
158582008-02-01 Kenichi Handa <handa@m17n.org>
15859
15860 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15861 call encode_char.
15862
15863 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15864
158652008-02-01 Dave Love <fx@gnu.org>
15866
15867 * composite.c (syms_of_composite): Make composition_hash_table weak.
15868
158692008-02-01 Kenichi Handa <handa@m17n.org>
15870
15871 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15872 (font_name_registry): Don't extern them.
15873 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15874
15875 * fontset.h (Qfontset): Don't extern it.
15876 (new_fontset_from_font_name): Extern it.
15877
15878 * fontset.c: Give 8 extra slots to fontset objects.
15879 (Qfontset_info): New variable.
15880 (syms_of_fontset): Defsym it.
15881 (FONTSET_FALLBACK): New macro.
15882 (fontset_face): Try also the default fontset.
15883 (make_fontset): Realize a fallback fontset from the default fontset.
15884 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15885 using split_font_name_into_vector and build_font_name_from_vector.
15886 (Fset_fontset_font): Access the elements of font_spec by enum
15887 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15888 name by using split_font_name_into_vector.
15889 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15890 generate a proper font name from the fontset name. Update
15891 Vfontset_alias_alist.
15892 (n_auto_fontsets): New variable.
15893 (new_fontset_from_font_name): New function.
15894 (Ffont_info): Store the information about fonts generated from the
15895 default fontset in the first extra slot of the returned char-table.
15896
15897 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15898 (font_name_registry): Delete function.
15899 (split_font_name_into_vector): New function.
15900 (build_font_name_from_vector): New function.
15901 (font_list): The argument REGISTRY is now a list of registry names.
15902 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15903 specifies an explicit font name, return the name as is. Make a
15904 list of registy names.
15905
15906 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15907 of x_new_fontset.
15908 (Fx_create_frame): Don't call x_new_fontset here. Just use
15909 x_list_fonts to check the existence of fonts.
15910
15911 * xterm.h (x_new_fontset): Adjust prototype.
15912
15913 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15914 string. Use new_fontset_from_font_name to create a fontset from a
15915 font name.
15916
159172008-02-01 Kenichi Handa <handa@m17n.org>
15918
15919 * syntax.c (Vfind_word_boundary_function_table): New name for
15920 Vnext_word_boundary_function_table.
15921 (find-word-boundary-function-table): New name for
15922 next-word-boundary-function-table.
15923
159242008-02-01 Dave Love <fx@gnu.org>
15925
15926 * Makefile.in: Fix some dependencies.
15927
15928 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15929 set it to nil before returning.
15930
15931 * composite.c (update_compositions): Fix type error.
15932
15933 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15934
159352008-02-01 Kenichi Handa <handa@m17n.org>
15936
15937 * xterm.c (x_new_font): Optimize for the case that the font is
15938 already set for the frame.
15939
159402008-02-01 Kenichi Handa <handa@m17n.org>
15941
15942 * chartab.c (char_table_ascii): Check if the char table contents
15943 is sub-char-table or not.
15944 (char_table_set, char_table_set_range): Fix argument to
15945 char_table_ascii.
15946
15947 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15948 (detect_coding_utf_8, detect_coding_utf_16)
15949 (detect_coding_emacs_mule, detect_coding_iso_2022)
15950 (detect_coding_sjis, detect_coding_big5)
15951 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15952 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15953 sequence is valid in this coding system. Change callers.
15954 (MAX_ANNOTATION_LENGTH): New macro.
15955 (ADD_ANNOTATION_DATA): New macro.
15956 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15957 ADD_ANNOTATION_DATA. Change the format of annotation data.
15958 (ADD_CHARSET_DATA): New macro.
15959 (emacs_mule_char): New argument ID. Change callers.
15960 (decode_coding_emacs_mule, decode_coding_iso_2022)
15961 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15962 Produce charset annotation data in coding->charbuf.
15963 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15964 to charset annotation data in coding->charbuf.
15965 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15966 coding->common_flags if the coding system is iso-2022 based and
15967 uses designation.
15968 (produce_composition): Adjust for the new annotation data format.
15969 (produce_charset): New function.
15970 (produce_annotation): Handle charset annotation.
15971 (handle_composition_annotation, handle_charset_annotation): New
15972 functions.
15973 (consume_chars): Handle charset annotation. Utilize the above two
15974 functions.
15975 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15976 buffer, get the deleted text as a string and set
15977 coding->src_object to that string.
15978 (detect_coding, detect_coding_system): Use the new struct
15979 coding_detection_info.
15980
15981 * coding.h (struct coding_detection_info): New structure.
15982 (struct coding_system): Adjust prototype of the member `detector'.
15983 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15984
159852008-02-01 Kenichi Handa <handa@m17n.org>
15986
15987 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15988
159892008-02-01 Dave Love <fx@gnu.org>
15990
15991 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15992 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15993 to new local and nullify apropos_accumulate before returning.
15994 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
15995
159962008-02-01 Kenichi Handa <handa@m17n.org>
15997
15998 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
15999 correctly.
e3eea1fc 16000
aac0c6e3
MR
160012008-02-01 Dave Love <fx@gnu.org>
16002
16003 * fns.c (Flanginfo): Call synchronize_system_time_locale.
16004
160052008-02-01 Kenichi Handa <handa@m17n.org>
16006
16007 The following changes are to make character composition happen
16008 automatically on displaying.
16009
16010 * Makefile.in (lisp, shortlisp): Add composite.elc.
16011
16012 * composite.h (Qauto_composed, Vauto_composition_function)
16013 (Qauto_composition_function): Extern them.
16014
16015 * composite.c (Vcomposition_function_table)
16016 (Qcomposition_function_table): Delete variables.
16017 (Qauto_composed, Vauto_composition_function)
16018 (Qauto_composition_function): New variables.
16019 (run_composition_function): Don't call
16020 compose-chars-after-function.
16021 (update_compositions): Clear `auto-composed' text property.
16022 (compose_chars_in_text): Delete this function.
16023 (syms_of_composite): Staticpro Qauto_composed and
16024 Qauto_composition_function. Declare Vauto_composition_function as
16025 a Lisp variable.
16026
16027 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
16028
16029 * xdisp.c (it_props): Add an entry for Qauto_composed.
16030 (handle_auto_composed_prop): New function.
16031
16032 * xselect.c (selection_data_to_lisp_data): Don't call
16033 compose_chars_in_text.
16034
160352008-02-01 Dave Love <fx@gnu.org>
16036
16037 * keyboard.c (read_char): Modify checking around use of
16038 Vkeyboard_translate_table.
16039
16040 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
16041 and fix C types.
16042
160432008-02-01 Kenichi Handa <handa@m17n.org>
16044
16045 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
16046 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
16047 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
16048 the case that the last byte is '\r' correctly.
16049 (decode_coding): Flush out the unprocessed data correctly.
16050 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
16051
160522008-02-01 Dave Love <fx@gnu.org>
16053
16054 * xterm.c (XTread_socket): Fix changes for defined keysyms.
16055 Add XK_ISO... case.
16056 (xaw_scroll_callback): Revert last change.
16057
160582008-02-01 Kenichi Handa <handa@m17n.org>
16059
16060 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
16061
160622008-02-01 Kenichi Handa <handa@m17n.org>
16063
16064 * xfaces.c (Vface_resizing_fonts): New variable.
16065 (struct font_name): New member `resizing_ratio'.
16066 (font_resizing_ratio): New function.
16067 (split_font_name): Set font->resizing_ratio.
16068 (better_font_p): Pay attention to font->resizing_ratio.
16069 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
16070 RESX, and RESY fields.
16071 (try_alternative_families): Try scalable fonts if
16072 Vscalable_fonts_allowed is not Qt.
16073 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
16074
160752008-02-01 Dave Love <fx@gnu.org>
16076
16077 * xterm.c (xaw_scroll_callback): Cast correctly.
16078
160792008-02-01 Dave Love <fx@gnu.org>
16080
16081 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
16082 (lispy_kana_keys): Comment out.
16083 (make_lispy_event) [XK_kana_A]: Comment out.
16084
16085 * xterm.c (xaw_scroll_callback): Cast call_data.
16086 (XTread_socket): Deal with ASCII keysyms.
16087 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
16088
160892008-02-01 Dave Love <fx@gnu.org>
16090
16091 * xterm.c (Vx_keysym_table): New.
16092 (syms_of_xterm): Initialize it.
16093 (XTread_socket): Use it.
16094 From head: Eliminate incorrect optimization that tried to avoid
16095 decoding the output of X*LookupString.
16096 (x_get_font_repertory): Delete charset declaration.
16097
160982008-02-01 Kenichi Handa <handa@m17n.org>
16099
16100 * coding.c (detect_coding_charset): If only ASCII bytes are found,
16101 return 0.
16102 (Fdefine_coding_system_internal): Setup
16103 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
16104
161052008-02-01 Dave Love <fx@gnu.org>
16106
16107 * coding.c (Fcheck_coding_system): Doc fix.
16108
16109 * editfns.c (Finsert_byte): Return a proper value.
16110
161112008-02-01 Kenichi Handa <handa@m17n.org>
16112
16113 * coding.c (decode_coding): Fix args to translate_chars. Pay
16114 attention to Vstandard_translation_table_for_decode.
16115 (encode_coding): Fix args to translate_chars. Pay attention to
16116 Vstandard_translation_table_for_encode.
16117
16118 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
16119 SINGLE_BYTE_CHAR_P.
16120
16121 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
16122 not by SINGLE_BYTE_CHAR_P.
16123
16124 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
16125 SINGLE_BYTE_CHAR_P.
16126
16127 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
16128 SINGLE_BYTE_CHAR_P.
16129
16130 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
16131 by SINGLE_BYTE_CHAR_P.
16132
16133 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
16134 SINGLE_BYTE_CHAR_P.
16135
161362008-02-01 Dave Love <fx@gnu.org>
16137
16138 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
16139
161402008-02-01 Dave Love <fx@gnu.org>
16141
16142 * fns.c (Flanginfo): Fix typo.
16143
16144 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
16145
161462008-02-01 Kenichi Handa <handa@m17n.org>
16147
16148 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
16149 (detect_coding_emacs_mule, detect_coding_iso_2022)
16150 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
16151 incomplete byte sequence. Don't update *mask when correctly detected.
16152 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
16153 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
16154 (detect_coding, detect_coding_system): Adjust for the changes above.
16155
161562008-02-01 Kenichi Handa <handa@m17n.org>
16157
16158 * character.c (char_string): Rename from
16159 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
16160 (string_char): Rename from string_char.
16161
16162 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
16163 if C is greater than MAX_3_BYTE_CHAR.
16164 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
16165 string_char instead of string_char_with_unification.
16166
161672008-02-01 Dave Love <fx@gnu.org>
16168
16169 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
16170
161712008-02-01 Kenichi Handa <handa@m17n.org>
16172
16173 * keymap.c (push_key_description): Pay attention to force_multibyte.
16174
16175 * regex.c (re_search_2): Fix for the case of unibyte buffer.
16176
161772008-02-01 Dave Love <fx@gnu.org>
16178
16179 * charset.c (define_charset_internal): Rename `supprementary'.
16180
16181 * Makefile.in (lisp, shortlisp): Remove latin-N.
16182
161832008-02-01 Dave Love <fx@gnu.org>
16184
16185 * xfns.c (x_window, x_window): Use use_xim.
16186
16187 * xterm.c (use_xim): Initialize.
16188 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
16189 (x_term_init): Maybe set use_xim.
16190
16191 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
16192
161932008-02-01 Kenichi Handa <handa@m17n.org>
16194
16195 * search.c (search_buffer): Fix case-fold-search of multibyte
16196 characters.
16197 (boyer_moore): Rename the last argument to char_high_bits.
16198
161992008-02-01 Kenichi Handa <handa@m17n.org>
16200
16201 * xdisp.c (display_string): Fix for the case of zero width glyph.
16202
16203 * xfns.c (x_set_font): Change the error message of the case that
16204 x_new_fontset returns Qt.
16205
16206 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
16207 (Finternal_set_lisp_face_attribute): Use signal_error for the
16208 error of invalid fontset.
16209
16210 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
16211 fontset, return Qt.
16212
162132008-02-01 Dave Love <fx@gnu.org>
16214
16215 * unexelf.c (unexec): Make .got handling not SGI-specific.
16216
16217 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
16218
16219 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
16220
16221 * keyboard.c (read_key_sequence): Fix type error.
16222
16223 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
16224 type error.
16225
16226 * fontset.c (fontset_add): Return Lisp_Object.
16227
162282008-02-01 Dave Love <fx@gnu.org>
16229
16230 * charset.h (charset_ordered_list_tick): Declare extern.
16231
162322008-02-01 Kenichi Handa <handa@m17n.org>
16233
16234 The following changes (and some of 2008-02-01 changes of mine) are
16235 for handling syntax, category, and case conversion for unibyte
16236 characters by converting them to multibyte on the fly. With these
16237 changes, we don't have to setup syntax and case tables for unibyte
16238 characters in each language environment.
16239
16240 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
16241 multibyte if necessary.
16242
16243 * bytecode.c (Fbyte_code): Likewise.
16244
16245 * character.h (LEADING_CODE_LATIN_1_MIN)
16246 (LEADING_CODE_LATIN_1_MAX): New macros.
16247 (unibyte_to_multibyte_table): Extern it.
16248 (unibyte_char_to_multibyte): New macro.
16249 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
16250 (CHAR_LEADING_CODE): New macro.
16251 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
16252
16253 * character.c (unibyte_to_multibyte_table): New variable.
16254 (unibyte_char_to_multibyte): Move to character.h and define as macro.
16255 (multibyte_char_to_unibyte): If C is an eight-bit character,
16256 convert it to the corresponding byte value.
16257
16258 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
16259 not 1, signals an error. Update the elements of
16260 unibyte_to_multibyte_table.
16261 (init_charset_once): Initialize unibyte_to_multibyte_table.
16262 (syms_of_charset): Define the charset `iso-8859-1'.
16263
16264 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
16265 as is without converting it to unibyte. In a unibyte buffer,
16266 convert C to multibyte before checking the syntax.
16267
16268 * lisp.h (unibyte_char_to_multibyte): Delete extern.
16269
16270 * minibuf.c (Fminibuffer_complete_word): Use the macro
16271 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
16272
16273 * regex.h (struct re_pattern_buffer): New member target_multibyte.
16274
16275 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
16276 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
16277 that is zero, convert an eight-bit char to multibyte.
16278 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
16279 non-emacs case.
16280 (PATFETCH): Convert an eight-bit char to multibyte.
16281 (HANDLE_UNIBYTE_RANGE): New macro.
16282 (regex_compile): Setup the compiled pattern for multibyte chars
16283 even if the given regex string is unibyte. Use PATFETCH_RAW
16284 instead of PATFETCH in many places. To handle `charset'
16285 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
16286 only for ASCII chars.
16287 (analyse_first) <exactn>: Simplify because the compiled pattern
16288 is multibyte.
16289 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
16290 <charset>: Use CHAR_LEADING_CODE to get leading codes.
16291 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
16292 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
16293 multibyte always 1.
16294 (re_search_2): In emacs, set the locale variable multibyte to 1,
16295 otherwise to 0. New local variable target_multibyte. Check it
16296 to decide the multibyteness of STR1 and STR2. If
16297 target_multibyte is zero, convert unibyte chars to multibyte
16298 before translating and checking fastmap.
16299 (TARGET_CHAR_AND_LENGTH): New macro.
16300 (re_match_2_internal): In emacs, set the locale variable multibyte
16301 to 1, otherwise to 0. New local variable target_multibyte. Check
16302 it to decide the multibyteness of STR1 and STR2. Use
16303 TARGET_CHAR_AND_LENGTH to fetch a character from D.
16304 <charset, charset_not>: If multibyte is nonzero, check fastmap
16305 only for ASCII chars. Call bcmp_translate with
16306 target_multibyte, not with multibyte.
16307 <begline>: Declare the local variable C as `unsigned'.
16308 (bcmp_translate): Change the last arg name to target_multibyte.
16309
16310 * search.c (compile_pattern_1): Don't adjust the multibyteness of
16311 the regexp pattern and the matching target. Set cp->buf.multibyte
16312 to the multibyteness of the regexp pattern. Set
16313 cp->but.target_multibyte to the multibyteness of the matching target.
16314 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
16315 FETCH_STRING_CHAR_ADVANCE.
16316 (Freplace_match): Convert unibyte chars to multibyte.
16317
16318 * syntax.c (char_quoted, back_comment, scan_words)
16319 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
16320 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
16321 unibyte chars to multibyte.
16322 (skip_chars): Delete the arg syntaxp, and move the code for
16323 handling syntaxes to skip_syntaxes. Change callers.
16324 Fix the case that the multibyteness of STRING and the current
16325 buffer doesn't match.
16326 (skip_syntaxes): New function.
16327 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
16328 SINGLE_BYTE_CHAR_P.
16329
163302008-02-01 Kenichi Handa <handa@m17n.org>
16331
16332 * xfaces.c (QCfontset): New variable.
16333 (LFACE_FONTSET): New macro.
16334 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
16335 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
16336 (Finternal_set_lisp_face_attribute)
16337 (Finternal_get_lisp_face_attribute): Handle QCfontset.
16338 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
16339 check also LFACE_FONTSET_INDEX.
16340 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
16341 attrs[LFACE_FONT_INDEX].
16342 (syms_of_xfaces): Intern and staticpro QCfontset.
16343
16344 * dispextern.h (enum lface_attribute_index): New member
16345 LFACE_FONTSET_INDEX.
16346
16347 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
16348
163492008-02-01 Kenichi Handa <handa@m17n.org>
16350
16351 * coding.c (coding_set_destination): Fix coding->destination for
16352 the case converting a region.
16353 (encode_coding_utf_8): Encode eight-bit chars as single byte.
16354 (encode_coding_object): Fix coding->dst_pos and
16355 coding->dst_pos_byte for the case converting a region.
16356
16357 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
16358
16359 * character.h (BYTE8_STRING): New macro.
16360
16361 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
16362
163632008-02-01 Kenichi Handa <handa@m17n.org>
16364
16365 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
16366 characters by octal form.
16367
16368 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16369
16370 * buffer.h (_fetch_multibyte_char_len): Delete extern.
16371 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
16372 _fetch_multibyte_char_len.
16373 (FETCH_CHAR_AS_MULTIBYTE): New macro.
16374
16375 * casetab.c (set_canon, set_identity, shuffle): Simplify.
16376
16377 * casefiddle.c (casify_object): Simplify. Handle the case that
16378 the case conversion change the byte length.
16379 (casify_region): Likewise.
16380
16381 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
16382
16383 * character.c (_fetch_multibyte_char_len): Delete this variable.
16384 (syms_of_character): Setup Vprintable_chars.
16385
16386 * editfns.c (Fchar_equal): Fix for the unibyte case.
16387 (Finsert_byte): New function.
16388 (syms_of_editfns): Defsubr it.
16389
16390 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16391 of direct code 0x3ffff.
16392
16393 * search.c (Freplace_match): Fix for the unibyte case.
16394
163952008-02-01 Kenichi Handa <handa@m17n.org>
16396
16397 * lread.c (safe_to_load_p): Fix the logic.
16398
16399 * syntax.c (scan_words): Don't treat characters belonging to
16400 different scripts as constituting a word.
16401
16402 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16403
16404 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16405
16406 * emacs.c (main): In the case of --unibyte, instead of aborting on
16407 finding non-empty buffer, make it unibyte.
16408
164092008-02-01 Kenichi Handa <handa@m17n.org>
16410
16411 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16412 to create a fontset.
16413
164142008-02-01 Dave Love <fx@gnu.org>
16415
16416 * character.c (Funibyte_char_to_multibyte): Doc fix.
16417
16418 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16419
164202008-02-01 Kenichi Handa <handa@m17n.org>
16421
16422 * fontset.c (fontset_add): Make the type `int'.
16423 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16424
16425 * character.c (unibyte_char_to_multibyte)
16426 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16427 charset_unibyte, not charset_primary.
16428
16429 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16430
16431 * charset.c (charset_unibyte): Rename from charset_primary.
16432 (Funibyte_charset): Rename from Fprimary_charset.
16433 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16434 (syms_of_charset): Adjust for the above changes.
16435
16436 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16437 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16438 it->multibyte_p is zero.
16439
16440 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16441 Delete extern.
16442
164432008-02-01 Kenichi Handa <handa@m17n.org>
16444
16445 * coding.c (Fdefine_coding_system_internal): Fix category setting
16446 for a coding system of type iso-2022.
16447
164482008-02-01 Kenichi Handa <handa@m17n.org>
16449
16450 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16451
164522008-02-01 Kenichi Handa <handa@m17n.org>
16453
16454 * syntax.c (Vnext_word_boundary_function_table): New variable.
16455 (next-word-boundary-function-table): Declare it as a Lisp variable
16456 in syms_of_syntax.
16457 (scan_words): Call functions in Vnext_word_boundary_function_table
16458 if any.
16459
16460 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16461
16462 * fontset.c (fs_load_font): If fontp->charset is not negative,
16463 return fontp without setting its members.
16464
164652008-02-01 Dave Love <fx@gnu.org>
16466
16467 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16468
16469 * m/sparc.h (HAVE_ALLOCA): Delete.
16470
16471 * s/irix6-5.h: Don't include strings.h.
16472 (bcopy, bzero, bcmp): Don't undef.
16473
16474 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16475
16476 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16477 (TIOCSIGSEND): Don't test IRIX6.
16478 (bcopy, bzero, bcmp): Define conditionally.
16479
164802008-02-01 Kenichi Handa <handa@m17n.org>
16481
16482 * buffer.c (Qas, Qmake, Qto): New variables.
16483 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16484 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16485
16486 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16487 we are inserting a process output into a multibyte buffer.
16488
16489 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16490 multibyte_char_to_unibyte.
16491
16492 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16493 by the primary charset, make it eight-bit char.
16494 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16495
16496 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16497 (charset_8_bit__control, charset_8_bit_graphic)
16498 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16499 (define_charset_internal): New function.
16500 (syms_of_charset): Call define_charset_internal for pre-defined
16501 charsets.
16502
16503 * charset.h (charset_8_bit): Extern it.
16504
16505 * coding.c (make_conversion_work_buffer): Adjust for the change
16506 of Fset_buffer_multibyte.
16507 (encode_coding_raw_text): Increment p0 in the loop.
16508
16509 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16510
16511 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16512 for the change of Fset_buffer_multibyte.
16513
16514 * fns.c (Fstring_to_multibyte): New function.
16515 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16516
165172008-02-01 Dave Love <fx@gnu.org>
16518
16519 * xfns.c (x_put_x_image): Declare args.
16520
16521 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16522 (try_font_list): Declare an arg.
16523
16524 * xdisp.c (message2_nolog, set_message): Declare an arg.
16525
16526 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16527
16528 * syntax.c (scan_sexps_forward): Declare an arg.
16529
16530 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16531 Declare an arg.
16532
16533 * lisp.h (Fnew_fontset): Declare.
16534
16535 * keymap.c (push_key_description): Call CHARACTERP correctly.
16536
16537 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16538 (face_for_char): Delete unused vars.
16539 (Fset_fontset_font): Doc fix. Delete unused vars.
16540
16541 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16542
16543 * composite.c (update_compositions): Declare arg.
16544
16545 * cm.c (calccost, cmgoto): Declare args.
16546
16547 * charset.c: Remove `emacs' conditional. Doc fixes.
16548 (map_char_table_for_charset): Declare.
16549
16550 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16551
16552 * ccl.c: Remove `emacs' conditional.
16553
165542008-02-01 Kenichi Handa <handa@m17n.org>
16555
16556 The following changes are to allow specifying multiple font
16557 patterns for a character range (specified by script or charset).
16558
16559 * Makefile.in (abbrev.o): Depend on syntax.h.
16560 (xfaces.o): Depend on charset.h.
16561
16562 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16563 SINGLE_BYTE_CHAR_P.
16564
16565 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16566
16567 * character.h (Vchar_script_table): Extern it.
16568
16569 * character.c (Vscript_alist): Delete.
16570 (Vchar_script_table, Qchar_script_table): New variable.
16571 (syms_of_character): Declare Vchar_script_table as a lisp variable
16572 and initialize it.
16573
16574 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16575 have property char-table-extra-slots, make no extra slot.
16576
16577 * dispextern.h (struct face): Delete member `charset'.
16578 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16579 SINGLE_BYTE_CHAR_P.
16580 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16581 Add prototypes.
16582 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16583 (generate_ascii_font_name): Rename from generate_ascii_font.
16584
16585 * fontset.h (get_font_repertory_func): New prototype.
16586 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16587 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16588
16589 * fontset.c (Qprepend, Qappend): New variables.
16590 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16591 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16592 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16593 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16594 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16595 (load_font_get_repertory): New functions.
16596 (fontset_set): Delete.
16597 (fontset_face): New arg FACE. Return face ID, not face.
16598 Complete re-write to handle new fontset structure. Change caller.
16599 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16600 (face_for_char): Don't call lookup_face.
16601 (make_fontset_for_ascii_face): New arg FACE.
16602 (fs_load_font): New arg CHARSET_ID. Don't check
16603 Vfont_encoding_alist here.
16604 (find_font_encoding): New function.
16605 (list_fontsets): Use STRINGP, not ! NILP.
16606 (accumulate_script_ranges): New function.
16607 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16608 re-written to handle new fontset structure.
16609 (Ffontset_font): Return a copy of element.
16610 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16611 docstring of font-encoding-alist.
16612
16613 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16614 (Fset_fotset_font): Fix arguments to 5.
16615
16616 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16617
16618 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16619 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16620 (highlight_trailing_whitespace): Adjust for the change of
16621 lookup_named_face.
16622
16623 * xfaces.c: Include charset.h.
16624 (load_face_font): Delete argument C. Change caller.
16625 (generate_ascii_font_name): Rename from generate_ascii_font.
16626 (font_name_registry): New function.
16627 (cache_face): Store ascii faces before non-ascii faces in buckets.
16628 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16629 Lookup only ascii faces.
16630 (lookup_non_ascii_face): New function.
16631 (lookup_named_face): Delete argument C. Change caller.
16632 (lookup_derived_face): Delete argument C. Change caller.
16633 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16634 a string, just call font_list with it.
16635 (choose_face_font): Delete arguments FACE and C. New arg
16636 FONT_SPEC. Change caller.
16637 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16638 Change caller.
16639 (realize_non_ascii_face): New function.
16640 (realize_x_face): Call load_face_font here.
16641 (realize_tty_face): Delete argument C. Change caller.
16642 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16643 get a face ID.
16644 (dump_realized_face): Don't print charset of FACE.
16645
16646 * xfns.c (x_set_font): Always call x_new_fontset and
16647 store_frame_parameter.
16648 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16649 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16650
16651 * xterm.h (x_get_font_repertory): Extern it.
16652
16653 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16654 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16655 it->multibyte_p is zero.
16656 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16657 (x_new_fontset): If FONTSETNAME doesn't match any existing
16658 fontsets, create a new one.
16659 (x_get_font_repertory): New function.
16660
166612008-02-01 Kenichi Handa <handa@m17n.org>
16662
16663 * coding.c (Ffind_coding_systems_region_internal): Detect an
16664 ASCII only string correctly.
16665
16666 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16667 version is 0.
16668
166692008-02-01 Kenichi Handa <handa@m17n.org>
16670
16671 * lread.c: Include "coding.h".
16672 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16673 (load_each_byte, unread_char): New variables.
16674 (readchar_backlog): Delete.
16675 (readchar): Return a character unless load_each_byte is nonzero.
16676 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16677 cons. If unread_char is not -1, simply return it.
16678 (unreadchar): Handle the case that readcharfun is
16679 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16680 (read_multibyte): Delete.
16681 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16682 (read_emacs_mule_char): New functions.
16683 (Fload): Even if the file doesn't have the extension ".elc", if
16684 safe_to_load_p returns a positive version number, assume that the
16685 file contains bytecompiled code. If the version is less than 22,
16686 load the file while decoding multibyte sequences by emacs-mule.
16687 (readevalloop): Don't use readchar_backlog.
16688 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16689 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16690 (read_escape): Delete the arg BYTEREP.
16691 (read1): Set load_each_byte to 1 temporarily while handling
16692 #@NUMBER. Don't call read_multibyte.
16693 (read_vector): Call Fread with a cons. If readcharfun is
16694 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16695 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16696 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16697 and Qload_force_doc_strings.
16698
166992008-02-01 Kenichi Handa <handa@m17n.org>
16700
16701 * xdisp.c (face_before_or_after_it_pos): Call
16702 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16703
167042008-02-01 Kenichi Handa <handa@m17n.org>
16705
16706 * character.h (TRAILING_CODE_P): New macro.
16707 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16708 (string_char_with_unification): Fix prototype.
16709 (Vscript_alist): Extern it.
16710
16711 * character.c (Vscript_alist): New variable.
16712 (string_char_with_unification, str_as_unibyte)
16713 (string_escape_byte8): Add `const' to local variables.
16714 (syms_of_character): Declare script-alist as a Lisp variable.
16715
16716 * charset.h (Vcharset_ordered_list): Extern it.
16717 (charset_ordered_list_tick): Extern it.
16718 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16719 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16720 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16721 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16722 (Funify_charset): Adjust for the change of Funify_charset.
16723
16724 * charset.c (charset_ordered_list_tick): New variable.
16725 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16726 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16727 deunify intead of unify a charset.
16728 (string_xstring_p): Add `const' to local variables.
16729 (find_charsets_in_text): Add `const' to arguments and local variables.
16730 (encode_char): Adjust for the change of Funify_charset. Fix
16731 detecting of invalid code.
16732 (Fset_charset_priority): Increment charset_ordered_list_tick.
16733 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16734 and TO_CODE.
16735
16736 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16737 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16738 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16739 (decode_coding_ccl, consume_chars)
16740 (Ffind_coding_systems_region_internal)
16741 (Fcheck_coding_systems_region): Add `const' to local variables.
16742
16743 * print.c (print_object): Use octal form for printing the
16744 contents of a bool vector.
16745
167462008-02-01 Dave Love <fx@gnu.org>
16747
16748 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16749 <version == 20>: Refuse to load.
16750
167512008-02-01 Dave Love <fx@gnu.org>
16752
16753 * fns.c: Move coding.h.
16754 (Qcodeset, Qdays, Qmonths): New.
16755 (concat): Use CHARACTERP instead of INTEGERP.
16756 (Flocale_codeset): Delete.
16757 (Flanginfo): New function.
16758 (syms_of_fns): Change accordingly.
16759
16760 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16761
167622008-02-01 Dave Love <fx@gnu.org>
16763
16764 * casetab.c (init_casetab_once, init_casetab_once): Fix
16765 CHAR_TABLE_SET call.
16766
16767 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16768
16769 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16770
16771 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16772 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16773 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16774
16775 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16776
16777 * coding.c (ENCODE_DESIGNATION, decode_eol)
16778 (make_conversion_work_buffer, code_conversion_restore)
16779 (Fdefine_coding_system_internal): Convert Lisp types.
16780 (code_conversion_restore): Use EQ, not ==.
16781 (Fencode_coding_string): Fix code_convert_string call.
16782
16783 * coding.h (code_convert_region): Fix prototype.
16784
16785 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16786
16787 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16788 (Ffontset_info): Convert Lisp types.
16789
16790 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16791
16792 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16793
16794 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16795
16796 * chartab.c: Include "...h", not <...h> in some cases.
16797
16798 * callproc.c (Fcall_process): Remove unused variables.
16799
168002008-02-01 Dave Love <fx@gnu.org>
16801
16802 * coding.c (Fset_coding_system_priority): Allow null arg list.
16803
168042008-02-01 Dave Love <fx@gnu.org>
16805
16806 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16807 (Fself_insert_and_exit): Use CHARACTERP.
16808
16809 * callproc.c (Fcall_process): Remove unused vars.
16810
16811 * xterm.c (XTread_socket): Add extra dead keysyms.
16812
16813 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16814
16815 * dispextern.h: Remove prototypes for redraw_frame,
16816 redraw_garbaged_frames.
16817
16818 * cmds.c (Fself_insert_command): Use CHARACTERP.
16819
16820 * chartab.c (make_sub_char_table): Remove unused var.
16821 (Fset_char_table_default, Fmap_char_table): Doc fix.
16822
16823 * keymap.c (access_keymap): Remove generic char code.
16824 (push_key_description): Use CHARACTERP.
16825
168262008-02-01 Dave Love <fx@gnu.org>
16827
16828 * charset.c: Doc fixes.
16829 (Funify_charset): Extra checking.
16830
168312008-02-01 Dave Love <fx@gnu.org>
16832
16833 * lread.c: Remove some unused variables.
16834 (safe_to_load_p): If safe, return the magic number version byte.
16835 (Fload): Maybe use load-with-code-conversion.
16836
168372008-02-01 Kenichi Handa <handa@m17n.org>
16838
16839 * category.c (Fmodify_category_entry): Don't modify the contents
16840 of category_set for characters out of the range. Avoid
16841 unnecessary modification.
16842
16843 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16844 Vchar_unify_table. The default value of the table is now nil.
16845
16846 * character.c (syms_of_character): Setup Vchar_width_table for
16847 eight-bit-control and raw-byte chars.
16848
16849 * charset.h (enum define_charset_arg_index): Delete
16850 charset_arg_parents and add charset_arg_subset and
16851 charset_arg_superset.
16852 (enum charset_attr_index): Delete charset_parents and add
16853 charset_subset and charset_superset.
16854 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16855 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16856 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16857 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16858 (CHARSET_SUPERSET): New macros.
16859 (charset_work): Extern it.
16860 (ENCODE_CHAR): Use charset_work.
16861 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16862 (map_charset_chars): Extern it.
16863
16864 * charset.c (load_charset_map): Set the default value of encoder
16865 and deunifier char-tables to nil.
16866 (map_charset_chars): Change argument. Change callers. Use
16867 map_char_table_for_charset instead of map_char_table.
16868 (Fmap_charset_chars): New optional args from_code and to_code.
16869 (Fdefine_charset_internal): Adjust for the change of
16870 `define-charset' (:parents -> :subset or :superset).
16871 (charset_work): New variable.
16872 (encode_char, syms_of_charset): Adjust for the change of
16873 Fdefine_charset_internal.
16874 (Ffind_charset_string): Setup the vector `charsets' correctly.
16875
16876 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16877 the previous change.
16878 (char_table_ref_and_range): Adjust for the above change.
16879 (map_sub_char_table_for_charset): New function.
16880 (map_char_table_for_charset): New function.
16881
16882 * keymap.c (describe_vector): Handle a char-table directly here.
16883 (describe_char_table): Delete.
16884
16885 * lisp.h (map_charset_chars): Delete.
16886
168872008-02-01 Dave Love <fx@gnu.org>
16888
16889 * fns.c (count_combining): Comment out (unused).
16890 (Flocale_codeset): New.
16891 (syms_of_fns): Defsubr it.
16892
16893 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16894 (size_t): Remove.
16895
168962008-02-01 Dave Love <fx@gnu.org>
16897
16898 * Makefile.in (chartab.o): Depend on charset.h.
16899
169002008-02-01 Kenichi Handa <handa@m17n.org>
16901
16902 * character.c (syms_of_character): Set the default value of
16903 Vprintable_chars to Qnil.
16904
169052008-02-01 Dave Love <fx@gnu.org>
16906
16907 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16908
169092008-02-01 Kenichi Handa <handa@m17n.org>
16910
16911 * charset.c (load_charset_map): Handle the case that from < to
16912 correctly.
16913
16914 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16915 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16916 Pay attention to raw-8-bit chars.
16917
169182008-02-01 Kenichi Handa <handa@m17n.org>
16919
16920 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16921 It is not bytecompiled now.
16922
16923 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16924 (charset_jisx0208): New variables.
16925 (Fdefine_charset_internal): Setup them if appropriate.
16926 (init_charset_once): Initialize them to -1.
16927
16928 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16929 (charset_jisx0208): Extern them.
16930
16931 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16932 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16933 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16934 (setup_iso_safe_charsets): Fix arguments to Fassq.
16935 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16936 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16937 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16938 (encode_coding_iso_2022): Change the 1st arg to
16939 ENCODE_ISO_CHARACTER to a variable.
16940
169412008-02-01 Kenichi Handa <handa@m17n.org>
16942
16943 * charset.h (enum define_charset_arg_index): New enums
16944 charset_arg_min_code and charset_arg_max_code.
16945 (struct charset): New member char_index_offset.
16946
16947 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16948 Take charset->char_index_offset into account.
16949 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16950 args[charset_arg_max_code]. Setup charset.char_index_offset.
16951 (syms_of_charset): Fix args to Fdefine_charset_internal.
16952
169532008-02-01 Dave Love <fx@gnu.org>
16954
16955 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16956
169572008-02-01 Dave Love <fx@gnu.org>
16958
16959 * coding.c: Doc fixes.
16960 (Fcoding_system_aliases): Fix return value.
16961 (Qmac): Remove (duplicated) definition.
16962
169632008-02-01 Dave Love <fx@gnu.org>
16964
362654a6
JB
16965 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16966 New functions.
aac0c6e3
MR
16967
16968 * character.c (Fstring): Doc fix.
16969
16970 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16971
362654a6 16972 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
16973 (font-encoding-alist): Doc fix.
16974
169752008-02-01 Dave Love <fx@gnu.org>
16976
16977 * term.c (costs_set): Declare static, non-initialized for pcc.
16978 (encode_terminal_code): Remove unused var.
16979
16980 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16981 for K&R.
16982
16983 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16984
16985 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16986 (suffixes): Move out of make_subsidiaries for K&R.
16987
16988 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16989
16990 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16991
169922008-02-01 Dave Love <fx@gnu.org>
16993
16994 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
16995
16996 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
16997
169982008-02-01 Yong Lu <lyongu@asia-infonet.com>
16999
17000 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
17001
17002 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
17003
170042008-02-01 Kenichi Handa <handa@m17n.org>
17005
17006 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
17007 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
17008
170092008-02-01 Kenichi Handa <handa@m17n.org>
17010
17011 * coding.c (decode_coding_charset): Adjust for the change of
17012 Fdefine_coding_system_internal.
17013 (Fdefine_coding_system_internal): For a coding system of
17014 `charset' type, store a list of charset IDs in
17015 `charset_attr_charset_valids' element of coding attributes.
17016
170172008-02-01 Kenichi Handa <handa@m17n.org>
17018
17019 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
17020 (emacs_mule_char): New arg src. Delete arg `composition'. Change
17021 caller. Handle 2-byte and 3-byte charsets correctly.
17022 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
17023 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
17024 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
17025 (DECODE_EMACS_MULE_21_COMPOSITION): Call
17026 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
17027 sequence.
17028 (decode_coding_emacs_mule): Handle composition correctly. Rewind
17029 `src' and `consumed_chars' correctly before calling emacs_mule_char.
17030 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
17031 and alt&rule composition.
17032 (decode_coding_iso_2022): Handle composition correctly.
17033 (init_coding_once): Setup emacs_mule_bytes for private charsets.
17034
17035 * charset.c (Fdefine_charset_internal): Fix bug for the case of
17036 re-defining a charset. If the charset has :emacs-mule-id, setup
17037 emacs_mule_bytes.
17038 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
17039
170402008-02-01 Kenichi Handa <handa@m17n.org>
17041
17042 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
17043 (encode_coding_big5, encode_coding_charset): If coding requires safe
17044 encoding, produce a character specified by
17045 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
17046
170472008-02-01 Dave Love <fx@gnu.org>
17048
17049 * xterm.c (XSetIMValues): Declare.
17050
17051 * process.c: Conditionally include sys/wait.h, pty.h.
17052
17053 * print.c (print_object): Fix print format for 64-bit systems.
17054
17055 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
17056
17057 * buffer.c (emacs_strerror): Declare.
17058
17059 * fontset.c (Fclear_face_cache): Declare.
17060 (accumulate_font_info): Comment-out (unused).
17061 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
17062 variables.
17063
17064 * character.h (string_escape_byte8): Declare.
17065
17066 * charset.c (load_charset_map, load_charset_map_from_file): Remove
17067 unused vars.
17068 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
17069 (Fmap_charset_chars): Doc fix.
17070
17071 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
17072 (Fset_coding_system_priority, Fset_coding_system_priority)
17073 (Fdefine_coding_system_internal): Doc fix.
17074
170752008-02-01 Dave Love <fx@gnu.org>
17076
17077 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
17078
170792008-02-01 Kenichi Handa <handa@m17n.org>
17080
17081 * character.c (string_escape_byte8): Make multibyte string with
17082 correct size.
17083
17084 * charset.c (Fmake_char): Delete unnecessary code.
17085
170862008-02-01 Kenichi Handa <handa@m17n.org>
17087
17088 * xfns.c (x_encode_text): Allocate coding.destination here, and
17089 call encode_coding_object with dst_object Qnil.
17090
17091 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
17092 multibyte form correctly.
17093
17094 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
17095 against Vfont_encoding_alist.
17096
17097 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
17098 handling of charset list.
17099 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
17100 (decode_coding_object): Move point to coding->dst_pos before
17101 calling post-read-conversion function.
17102 (encode_coding_object): Give correct arguments to
17103 pre-write-conversion. Ignore the return value of
17104 pre-write-conversion function. Pay attention to the case that
17105 pre-write-conversion changes the current buffer. If dst_object is
17106 Qt, even if coding->src_bytes is zero, allocate at least one byte
17107 to coding->destination.
17108
17109 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
17110
17111 * charset.c (Fmake_char): Make it more backward compatible.
17112 (Fmap_charset_chars): Fix docstring.
17113
171142008-02-01 Dave Love <fx@gnu.org>
17115
17116 * coding.c: Doc fixes.
17117 (Fdefine_coding_system_alias): Use names, not symbols, in
17118 coding-system-alist.
17119
171202008-02-01 Kenichi Handa <handa@m17n.org>
17121
17122 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
17123 of calling free_realized_face.
17124
171252008-02-01 Yong Lu <lyongu@asia-infonet.com>
17126
17127 * charset.c (read_hex): Don't treat SPC as a comment starter.
17128 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
17129 (Fdecode_char): Fix typo.
17130
171312008-02-01 Kenichi Handa <handa@m17n.org>
17132
17133 * charset.h (struct charset): New member `code_space_mask'.
17134
17135 * coding.c (coding_set_source): Delete the local variable beg_byte.
17136 (encode_coding_charset, Fdefine_coding_system_internal):
17137 Delete the local variable charset.
17138 (Fdefine_coding_system_internal): Setup
17139 attrs[coding_attr_charset_valids] correctly.
17140
17141 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
17142 member to check if CODE is valid or not.
17143 (Fdefine_charset_internal): Initialize `code_space_mask' member.
17144 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
17145 is within the range of charset->min_code and carset->max_code.
17146
171472008-02-01 Dave Love <fx@gnu.org>
17148
17149 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
17150
17151 * dispextern.h (generate_ascii_font): Fix return type.
17152
17153 * xfaces.c (generate_ascii_font): Fix arg declaration.
17154
17155 * coding.c (coding_inherit_eol_type)
17156 (Fset_terminal_coding_system_internal)
17157 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
17158
171592008-02-01 Kenichi Handa <handa@m17n.org>
17160
17161 * coding.c (decode_coding_charset, encode_coding_charset): Handle
17162 multiple charsets correctly.
17163
171642008-02-01 Kenichi Handa <handa@m17n.org>
17165
17166 * search.c (boyer_moore): Fix handling of multibyte character
17167 translation.
17168
17169 * xdisp.c (display_mode_element): When the variable `elt' is
17170 changed, update `this' and `lisp_string'.
17171
171722008-02-01 Kenichi Handa <handa@m17n.org>
17173
17174 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
17175
17176 * callproc.c (Fcall_process): Be sure to give the current buffer
17177 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
17178
17179 * charset.c (struct charset_map_entries): New struct.
17180 (load_charset_map): Rename from parse_charset_map. New args
17181 entries and n_entries. Change caller.
17182 (load_charset_map_from_file): Rename from load_charset_map.
17183 Change caller. New arg control_flag. Call load_charset_map at
17184 the tail.
17185 (load_charset_map_from_vector): New function.
17186 (Fdefine_charset_internal): Setup charset.compact_codes_p.
17187 (encode_char): If the charset is compact, change a character index
17188 to a code point.
17189
17190 * coding.c (coding_alloc_by_making_gap): Check the case that the
17191 source and destination are the same correctly.
17192 (decode_coding_raw_text): Set coding->consumed_char and
17193 coding->consumed to 0.
17194 (produce_chars): If coding->chars_at_source is nonzero, update
17195 coding->consumed_char and coding->consumed before calling
17196 alloc_destination.
17197 (Fdefine_coding_system_alias): Register ALIAS in
17198 Vcoding_system_alist.
17199 (syms_of_coding): Define `no-conversion' coding system at the tail.
17200
17201 * fileio.c (Finsert_file_contents): Set coding_system instead of
17202 val. If the current buffer is multibyte, always call
17203 decode_coding_gap.
17204
17205 * xfaces.c (try_font_list): Give higher priority to fontset's
17206 family than face's family.
17207
172082008-02-01 Kenichi Handa <handa@m17n.org>
17209
17210 * callproc.c (Fcall_process): Be sure to give the current buffer
17211 to decode_coding_c_string.
17212
17213 * xfaces.c (try_font_list): Give a family specified in a fontset
17214 higher priority than a family specified in a face.
17215
172162008-02-01 Kenichi Handa <handa@m17n.org>
17217
17218 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
17219 Fix arguments to insert_from_buffer.
17220
17221 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
17222
172232008-02-01 Kenichi Handa <handa@m17n.org>
17224
17225 * coding.c (produce_chars): Set the variable `multibytep' correctly.
17226 (decode_coding_gap): Set coding->dst_multibyte correctly.
17227
172282008-02-01 Kenichi Handa <handa@m17n.org>
17229
17230 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
17231 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
17232 (encode_coding_utf_16): Substitute coding->default_char for
17233 non-Unicode characters.
17234 (decode_coding): Don't call record_insert here.
17235 (setup_coding_system): Initialize `surrogate' of
17236 coding->spec.utf_16 to 0.
17237 (EMIT_ONE_BYTE): Fix for multibyte case.
17238
17239 * insdel.c (insert_from_gap): Call record_insert.
17240
172412008-02-01 Kenichi Handa <handa@m17n.org>
17242
17243 * casefiddle.c (casify_region): Fix multibyte case.
17244
17245 * character.c (c_string_width): Add return type `int'.
17246 (char_string_with_unification): Delete arg ADVANCED.
17247
17248 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
17249 (CHAR_STRING): Adjust for the change of char_string_with_unification.
17250 (CHAR_STRING_ADVANCE): Make it do-while statement.
17251
17252 * chartab.c (sub_char_table_set_range): Optimize for the case
17253 DEPTH == 3. Add workaround code for a GCC optimization bug.
17254
17255 * charset.c (parse_charset_map): Remove an unused variable.
17256
17257 * coding.c: Delete unused variables.
17258
17259 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
17260 earlier. If inserted is zero and the coding system doesn't
17261 require flushing, don't call decode_coding_gap.
17262
17263 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
17264
172652008-02-01 Kenichi Handa <handa@m17n.org>
17266
17267 The following changes are for using Unicode as an internal
17268 character model, and use UTF-8 format for buffer/string
17269 representation.
17270
17271 * .gdbinit (xchartable): Adjust for the change of char table structure.
17272 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
17273
17274 * Makefile.in (obj): Add character.o and chartab.o.
17275 (lisp, shortlisp): Remove utf-8.elc.
17276 (*.o): For many files, change dependency on charset.h to
17277 character.h, and add dependency on character.h.
17278 (character.o, chartab.o): New targets.
17279
17280 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
17281 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
17282 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
17283 of "charset.h".
17284
17285 * dired.c, filelock.c: Include "character.h".
17286
17287 * alloc.c: Include "character.h" instead of "charset.h".
17288 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
17289 (syms_of_alloc): Remove defsubr for Smake_char_table.
17290
17291 * buffer.c: Include "character.h" instead of "charset.h", don't
17292 include "coding.h".
17293 (Fset_buffer_multibyte): Adjust for UTF-8.
17294
17295 * buffer.h: EXFUN Fbuffer_live_p.
17296
17297 * callproc.c: Include "character.h" instead of "charset.h".
17298 (Fcall_process): Big change for the new code-conversion APIs.
17299
17300 * casetab.c: Include "character.h" instead of "charset.h".
17301 (set_canon, set_identity, shuffle): Adjust for the new
17302 map_char_table spec.
17303 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
17304 accessing the char table structure.
17305
17306 * chartab.c: New file that implements char table.
17307
17308 * category.c: Include "character.h".
17309 (copy_category_entry): New function.
17310 (copy_category_table): Call map_char_table and copy_category_entry.
17311 (Fmake_category_table): Initialize all top-level slots.
17312 (char_category_set): New function.
17313 (modify_lower_category_set): Delete.
17314 (Fmodify_category_entry): Call char_table_ref_and_range.
17315
17316 * category.h (CATEGORY_SET): Just call char_category_set.
17317
17318 * ccl.c: Include "character.h".
17319 (Qccl, Qcclp): New variables.
17320 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
17321 it's less than 256.
17322 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
17323 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
17324 and DST type.
17325 (ccl_driver): Change types of argument, adjust code accordingly.
17326 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
17327 ccl_driver.
17328 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
17329
17330 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
17331 New members src_multibyte, dst_multibyte, consumed, and produced.
17332 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
17333 (CODING_SPEC_CCL_PROGRAM): New macro.
17334 (ccl_driver): Update prototype.
17335 (Qccl, Qcclp, Fccl_program_p): Extern them.
17336 (CHECK_CCL_PROGRAM): New macro.
17337
17338 * character.c, character.h, chartab.c: New files.
17339
17340 * charset.c: Mostly re-written. Move character and multibyte sequence
17341 handling codes to character.c.
17342
17343 * charset.h: Mostly re-written. Move character and multibyte sequence
17344 handling codes to character.h.
17345
17346 * coding.c, coding.h: Mostly re-written.
17347
17348 * composite.c: Include "character.h" instead of "charset.h".
17349 (CHAR_WIDTH): Move to character.h.
17350 (HASH_KEY, HASH_VALUE): Delete.
17351
17352 * composite.h (enum composition_method): Change order of enumeration
17353 symbols.
17354
17355 * data.c: Include "character.h" instead of "charset.h".
17356 (Faref): Call CHAR_TABLE_REF for a char table.
17357 (Faset): Call CHAR_TABLE_SET for a char table.
17358
17359 * dispextern.h (free_realized_face, check_face_attribytes)
17360 (generate_ascii_font): Extern them.
17361 (free_realized_multibyte_face): Delete extern.
17362
17363 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
17364 table structure.
17365
17366 * editfns.c: Include "character.h" instead of "charset.h".
17367 (Fchar_to_string): Always call CHAR_STRING.
17368
17369 * emacs.c (main): Call init_charset_once, init_charset,
17370 syms_of_chartab, and syms_of_character.
17371
17372 * fileio.c: Include "character.h" instead of "charset.h".
17373 (Finsert_file_contents): Big change for the new code-conversion API.
17374 (choose_write_coding_system, Fwrite_region): Likewise.
17375 (build_annotations_2): Delete.
17376 (e_write): Big change for the new code-conversion API.
17377
17378 * fns.c: Include "character.h" instead of "charset.h".
17379 (copy_sub_char_table): Move to chartab.c.
17380 (Fcopy_sequence): Call copy_char_table for a char table.
17381 (concat): Delete codes calling count_multibyte.
17382 (string_char_to_byte, string_byte_to_char): Adjust for the new
17383 multibyte form.
17384 (internal_equal): Adjust for the change of char table structure.
17385 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
17386 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
17387 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17388 (char_table_translate, optimize_sub_char_table)
17389 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17390 chartab.c.
17391 (char_table_ref_and_index): Delete.
17392 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17393 (Fmd5): Call preferred_coding_system instead of accessing
17394 Vcoding_category_list. Adjust for the new code-conversion API.
17395 (syms_of_fns): Move defsubr for char table related functions to
17396 chartab.c.
17397
17398 * fontset.c: Mostly re-written.
17399
17400 * fontset.h (struct font_info): Change type of the member encoding_type.
17401 (enum FONT_SPEC_INDEX): New enum.
17402 (fontset_font_pattern, fs_load_font): Update prototype.
17403 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17404
17405 * indent.c: Include "character.h" instead of "charset.h".
17406 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17407
17408 * insdel.c: Include "character.h" instead of "charset.h".
17409 (copy_text): Don't refer to Vnonascii_translation_table.
17410 (insert_from_gap): New function.
17411
17412 * keyboard.c: Include "character.h" instead of "charset.h".
17413 (command_loop_1): Never call direct_output_forward_char before
17414 a non-ASCII character.
17415 (read_char): If Vkeyboard_translate_table is a char table, always
17416 translate a character.
17417
17418 * keymap.c: Include "character.h".
17419 (store_in_keymap): Handle the case that IDX is a cons.
17420 (Fdefine_key): Handle the case that KEY is a cons and the car part
17421 is also a cons (range).
17422 (push_key_description): Adjust for the new character code.
17423 (describe_vector): Call describe_char_table for a char table.
17424 (describe_char_table): New function.
17425
17426 * keymap.h (describe_char_table): Extern it.
17427
17428 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17429 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17430 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17431 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17432 Delete.
17433 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17434 structure.
17435 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17436 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17437 (CHARTAB_SIZE_BITS_3): New macros.
17438 (chartab_size): Extern it.
17439 (struct Lisp_Char_Table): Re-design.
17440 (struct Lisp_Sub_Char_Table): New structure.
17441 (HASH_KEY, HASH_VALUE): Move from fns.c.
17442 (CHARACTERBITS): Define as 22.
17443 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17444 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17445 (GC_SUB_CHAR_TABLE_P): New macro.
17446 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17447 (code_convert_string_norecord): Deleted extern.
17448 (init_character_once, syms_of_character, init_charset)
17449 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17450
17451 * lread.c: Include "character.h".
17452 (read_multibyte): New arg NBYTES.
17453 (read_escape): Change the meaning of returned *BYTEREP.
17454 (to_multibyte): Delete.
17455 (read1): Adjust the handling of char table and string.
17456
17457 * print.c: Include "character.h" instead of "charset.h".
17458 (print_string): Convert 8-bit raw bytes to octal form by
17459 string_escape_byte8.
17460 (print_object): Adjust for the new multibyte form. Print 8-bit
17461 raw bytes always in octal form. Handle sub char table correctly.
17462
17463 * process.c: Include "character.h" instead of "charset.h".
17464 (read_process_output, send_process): Adjust for the new
17465 code-conversion API.
17466
17467 * puresize.h (BASE_PURESIZE): Increase.
17468
17469 * regex.c: Include "character.h" instead of "charset.h".
17470 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17471 (regex_compile): Accept a range whose starting and ending
17472 character have different leading bytes.
17473 (analyse_first): Adjust for the above change.
17474
17475 * search.c: Include "character.h" instead of "charset.h".
17476 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17477 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17478
17479 * syntax.c: Include "character.h" instead of "charset.h".
17480 (syntax_parent_lookup): Delete.
17481 (Fmodify_syntax_entry): Accept a cons as CHAR.
17482 (skip_chars): Adjust for the new multibyte form.
17483 (init_syntax_once): Call char_table_set_range instead of directly
17484 accessing the structure of a char table.
17485
17486 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17487 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17488 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17489 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17490
17491 * term.c: Include "buffer.h" and "character.h".
17492 (encode_terminal_code, write_glyphs): Adjust for the new
17493 code-conversion API.
17494 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17495
17496 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17497
17498 * xdisp.c: Include "character.h".
17499 (get_next_display_element): Adjust for the new multibyte form.
17500 (disp_char_vector): Adjust for the new char table structure.
17501 (decode_mode_spec_coding): Adjust for the new structure of
17502 coding system.
17503 (decode_mode_spec): Adjust for the new code-conversion API.
17504
17505 * xfaces.c: Include "character.h" instead of "charset.h".
17506 (load_face_font): Adjust for the change of choose_face_font and
17507 FS_LOAD_FONT.
17508 (generate_ascii_font): New function.
17509 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17510 (set_font_frame_param): Adjust for the change of choose_face_font.
17511 (free_realized_face): Make it public.
17512 (free_realized_faces_for_fontset): Rename from
17513 free_realized_multibyte_face. Free also faces realized for ASCII.
17514 (choose_face_font): Change arguments. Adjust for the change of
17515 fontset_font_pattern and FS_LOAD_FONT.
17516
17517 * xfns.c: Include "character.h".
17518 (x_encode_text): Adjust for the new code-conversion API.
17519
17520 * xselect.c: Don't include "charset.h".
17521 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17522
17523 * xterm.c: Include "character.h".
17524 (x_encode_char): New argument CHARSET. Change caller.
17525 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17526 Call ENCODE_CHAR instead of SPLIT_CHAR.
17527 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17528 CHAR_WIDTH instead of CHARSET_WIDTH.
17529 (XTread_socket): Adjust for the new code-conversion API.
17530 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17531 (x_load_font): Adjust for the change of struct font.
17532
175332008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17534
17535 * xfaces.c (face_at_buffer_position): Remove unused vars.
17536
175372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17538
17539 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17540 Fix overflow checking.
17541
175422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17543
17544 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17545 Cancel previous change.
17546
175472008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17548
17549 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17550 ccl->eight_bit_control. Fix check for buffer overflow.
17551 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17552 (ccl_driver): Initialize extra_bytes to 0.
17553
175542008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17555
17556 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17557 return it ORed with ctrl_modifier.
17558
175592008-01-29 Miles Bader <miles@gnu.org>
17560
17561 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17562
175632008-01-28 Jason Rumney <jasonr@gnu.org>
17564
17565 * w32.c (stat): Don't double check for networked drive.
17566
175672008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17568
17569 * window.c (run_window_configuration_change_hook): New function.
17570 Code extracted from set_window_buffer. Set the selected frame.
17571 (set_window_buffer): Use it.
17572 * window.h (run_window_configuration_change_hook): Declare.
17573 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17574
17575 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17576
175772008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17578
17579 * Makefile.in: Remove references to unused macros.
17580
175812008-01-26 Eli Zaretskii <eliz@gnu.org>
17582
17583 * w32.c (g_b_init_get_sid_sub_authority)
17584 (g_b_init_get_sid_sub_authority_count): New static variables.
17585 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17586 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17587 (init_user_info): Use them to retrieve uid and gid.
17588 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17589 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17590 st_uid and st_gid of the file.
17591
175922008-01-26 Jason Rumney <jasonr@gnu.org>
17593
17594 * w32.c (logon_network_drive): New function.
17595 (stat): Use it.
17596
175972008-01-26 Chong Yidong <cyd@stupidchicken.com>
17598
17599 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17600 invisible text covered with an ellipsis.
17601
176022008-01-25 Richard Stallman <rms@gnu.org>
17603
17604 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17605 jump back to beginning. Move some other initializations after that.
17606 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17607 New variables.
17608 (syms_of_xdisp): Init them.
17609
17610 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17611
17612 * buffer.c (reset_buffer_local_variables):
17613 Implement `permanent-local-hook'.
17614 (Qpermanent_local_hook): New variable.
17615 (syms_of_buffer): Init and staticpro it.
17616
176172008-01-25 Michael Albinus <michael.albinus@gmx.de>
17618
17619 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17620
176212008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17622
17623 * fns.c (Fclrhash): Return TABLE.
17624
176252008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17626
17627 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17628 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17629 is set even without positional changes.
17630 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17631
17632 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17633
176342008-01-23 Jason Rumney <jasonr@gnu.org>
17635
17636 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17637
17638 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17639 the unicode range available in MULE by locale-coding-system.
17640 Improve dbcs lead byte detection. Set event timestamp and modifiers
17641 earlier.
17642
176432008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17644
17645 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17646 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17647 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17648 when used on child processes.
17649
176502008-01-21 Michael Albinus <michael.albinus@gmx.de>
17651
17652 * dbusbind.c (Fdbus_method_return_internal): Rename from
17653 Fdbus_method_return.
17654 (Fdbus_unregister_object): Move to dbus.el.
17655 (Fdbus_call_method, Fdbus_method_return_internal)
17656 (Fdbus_send_signal): Improve debug messages.
17657
176582008-01-20 Martin Rudalics <rudalics@gmx.at>
17659
17660 * undo.c (undo_inhibit_record_point): New variable.
17661 (syms_of_undo): Initialize it.
17662 (record_point): Don't record point when undo_inhibit_record_point
17663 is set.
17664
176652008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17666
17667 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17668
17669 * xdisp.c (Qauto_hscroll_mode): New var.
17670 (syms_of_xdisp): Initialize it.
17671 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17672 window's buffer.
17673 (hscroll_windows): Don't check automatic_hscrolling_p here.
17674
17675 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17676 vscroll if we're setting window-buffer to the value it already has.
17677
176782008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17679
17680 * m/intel386.h: Remove references to XENIX.
17681
176822008-01-17 Andreas Schwab <schwab@suse.de>
17683
17684 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17685 instead of HAVE_X86_64_LIB64_DIR.
17686 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17687
176882008-01-17 Glenn Morris <rgm@gnu.org>
17689
17690 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17691 to HAVE_X86_64_LIB64_DIR.
17692
176932008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17694
17695 * s/irix3-3.h:
17696 * s/irix4-0.h:
17697 * s/386-ix.h:
17698 * s/domain.h:
17699 * s/hpux9-x11r4.h:
17700 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17701
17702 * sysdep.c: Remove code containing references to symbols defined
17703 by unsupported systems.
17704
177052008-01-16 Glenn Morris <rgm@gnu.org>
17706
17707 * coding.c (select-safe-coding-system-function): Doc fix.
17708
177092008-01-15 Glenn Morris <rgm@gnu.org>
17710
17711 * config.in: Revert 2008-01-13 change: this is a generated file.
17712
177132008-01-13 Tom Tromey <tromey@redhat.com>
17714
17715 * lisp.h: Fix typo.
17716
177172008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17718
17719 * m/sequent-ptx.h:
17720 * m/sequent.h:
17721 * s/ptx.h:
17722 * s/ptx4-2.h:
17723 * s/ptx4.h: Remove files for systems no longer supported.
17724
17725 * callproc.c (Fcall_process): Fix previous change.
17726
177272008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17728
17729 * unexsunos4.c: Remove file, system not supported anymore.
17730
17731 * m/mips.h:
17732 * m/intel386.h:
17733 * callproc.c:
17734 * config.in:
17735 * ecrt0.c:
17736 * emacs.c:
17737 * fileio.c:
17738 * frame.c:
17739 * getpagesize.h:
17740 * keyboard.c:
17741 * lread.c:
17742 * process.c:
17743 * puresize.h:
17744 * sysdep.c:
17745 * systty.h:
17746 * syswait.h:
17747 * unexec.c:
17748 * xdisp.c:
17749 * alloc.c: Remove code containing references to symbols defined by
17750 unsupported systems.
17751
177522008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17753
17754 * coding.c (detect_coding_mask): Fix previous change.
17755
177562008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17757
17758 * coding.c (detect_coding_iso2022): New arg
17759 latin_extra_code_state. Allow Latin extra codes only
17760 when *latin_extra_code_state is nonzero.
17761 (detect_coding_mask): If there is a NULL byte, detect the encoding
17762 as UTF-16 or binary. If Latin extra codes exist, detect the
17763 encoding as ISO-2022 only when there's no other proper encoding is
17764 found.
17765
177662008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17767
17768 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17769 #ifdef MAC_OS.
17770
177712008-01-08 Richard Stallman <rms@gnu.org>
17772
17773 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17774
177752008-01-06 Nick Roberts <nickrob@snap.net.nz>
17776
17777 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17778 menu bar in parentheses.
17779
177802008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17781
17782 * m/7300.h:
17783 * m/acorn.h:
17784 * m/alliant-2800.h:
17785 * m/alliant.h:
17786 * m/alliant1.h:
17787 * m/alliant4.h:
17788 * m/altos.h:
17789 * m/amdahl.h:
17790 * m/apollo.h:
17791 * m/att3b.h:
17792 * m/aviion-intel.h:
17793 * m/aviion.h:
17794 * m/celerity.h:
17795 * m/clipper.h:
17796 * m/cnvrgnt.h:
17797 * m/convex.h:
17798 * m/cydra5.h:
17799 * m/delta88k.h:
17800 * m/dpx2.h:
17801 * m/dual.h:
17802 * m/elxsi.h:
17803 * m/f301.h:
17804 * m/gould-np1.h:
17805 * m/gould.h:
17806 * m/i860.h:
17807 * m/ibmps2-aix.h:
17808 * m/ibmrt-aix.h:
17809 * m/ibmrt.h:
17810 * m/irist.h:
17811 * m/is386.h:
17812 * m/isi-ov.h:
17813 * m/mega68.h:
17814 * m/mg1.h:
17815 * m/news-r6.h:
17816 * m/news-risc.h:
17817 * m/news.h:
17818 * m/nh3000.h:
17819 * m/nh4000.h:
17820 * m/ns16000.h:
17821 * m/ns32000.h:
17822 * m/nu.h:
17823 * m/orion.h:
17824 * m/orion105.h:
17825 * m/paragon.h:
17826 * m/pfa50.h:
17827 * m/plexus.h:
17828 * m/pyramid.h:
17829 * m/pyrmips.h:
17830 * m/sh3el.h:
17831 * m/sps7.h:
17832 * m/sr2k.h:
17833 * m/stride.h:
17834 * m/sun1.h:
17835 * m/sun2.h:
17836 * m/sun3-68881.h:
17837 * m/sun3-fpa.h:
17838 * m/sun3-soft.h:
17839 * m/sun3.h:
17840 * m/sun386.h:
17841 * m/symmetry.h:
17842 * m/tad68k.h:
17843 * m/tahoe.h:
17844 * m/targon31.h:
17845 * m/tek4300.h:
17846 * m/tekxd88.h:
17847 * m/tower32.h:
17848 * m/tower32v3.h:
17849 * m/ustation.h:
17850 * m/wicat.h:
17851 * m/xps100.h:
17852 * s/cxux.h:
17853 * s/cxux7.h:
17854 * s/dgux.h:
17855 * s/dgux4.h:
17856 * s/dgux5-4-3.h:
17857 * s/dgux5-4r2.h:
17858 * s/esix.h:
17859 * s/esix5r4.h:
17860 * s/hiuxmpp.h:
17861 * s/hiuxwe2.h:
17862 * s/iris3-5.h:
17863 * s/iris3-6.h:
17864 * s/isc2-2.h:
17865 * s/isc3-0.h:
17866 * s/isc4-0.h:
17867 * s/isc4-1.h:
17868 * s/newsos5.h:
17869 * s/newsos6.h:
17870 * s/osf1.h:
17871 * s/osf5-0.h:
17872 * s/riscix1-1.h:
17873 * s/riscix12.h:
17874 * s/sco4.h:
17875 * s/sco5.h:
17876 * s/sunos4-0.h:
17877 * s/sunos4-1.h:
17878 * s/sunos413.h:
17879 * s/sunos4shr.h:
17880 * s/umax.h:
17881 * s/unipl5-2.h:
17882 * s/xenix.h:
17883 * cxux-crt0.s:
17884 * unexapollo.c:
17885 * unexconvex.c:
17886 * unexenix.c:
17887 * unexsni.c: Remove files for systems no longer supported.
17888
17889 * m/intel386.h: Remove references to unsupported systems.
17890
17891 * w32.c (get_emacs_configuration): Remove reference to i860.
17892
17893 * sysdep.c: Remove dead code.
17894
178952008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17896
17897 * s/rtu.h:
17898 * m/masscomp.h: Remove files. Platform is obsolete.
17899
179002008-01-04 Michael Albinus <michael.albinus@gmx.de>
17901
17902 * dbusbind.c (Fdbus_method_return): New function.
17903 (xd_read_message): Add the serial number to the event.
17904 (Fdbus_register_method): Activate the function.
17905
179062008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17907
17908 * keyboard.c (read_key_sequence): Fix typo.
17909
179102008-01-03 Michael Albinus <michael.albinus@gmx.de>
17911
17912 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17913 (xd_signature, xd_append_arg): Handle element type detection for
17914 empty arrays.
17915 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17916 SDATA () calls; this must be solved more general.
17917 (Fdbus_register_signal): Use SBYTES instead of strlen.
17918
179192008-01-03 Magnus Henoch <magnus@zemdatav>
17920
17921 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17922 unsigned int for byte values (necessary for big-endian platform).
17923 (Fdbus_call_method): Handle the case of no returned arguments.
17924
179252007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17926
17927 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17928
179292007-12-31 Magnus Henoch <mange@freemail.hu>
17930
17931 * dbusbind.c (xd_signature): Signature of variant is just "v".
17932
179332007-12-30 Michael Albinus <michael.albinus@gmx.de>
17934
17935 * dbusbind.c: Fix several errors and compiler warnings.
17936 Reported by Tom Tromey <tromey@redhat.com>.
17937 (XD_ERROR, XD_DEBUG_MESSAGE)
17938 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17939 (xd_append_arg): Part for basic D-Bus types rewritten.
17940 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17941 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17942 appropriate.
17943 (xd_read_message): Return Qnil. Don't signal an error; it is not
17944 useful during event reading.
17945 (Fdbus_register_signal): Signal an error if the check for
17946 FUNCTIONP fails.
17947 (Fdbus_register_method): New function. The implementation is not
17948 complete, the call of the function signals an error therefore.
17949 (Fdbus_unregister_object): New function, renamed from
17950 Fdbus_unregister_signal. The initial check signals an error, if
17951 the object is not well formed.
17952
179532007-12-30 Richard Stallman <rms@gnu.org>
17954
17955 * textprop.c (get_char_property_and_overlay):
17956 Signal error if POSITION is out of range in a buffer.
17957
179582007-12-29 Martin Rudalics <rudalics@gmx.at>
17959
17960 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17961 because the original parameters are in pure storage now.
17962
179632007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17964
17965 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17966
179672007-12-22 Eli Zaretskii <eliz@gnu.org>
17968
17969 * callint.c (syms_of_callint) <command-history>: Add reference to
17970 history-length in the doc string.
17971
179722007-12-17 Jason Rumney <jasonr@gnu.org>
17973
17974 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17975 before passing as wParam.
17976
179772007-12-22 Michael Albinus <michael.albinus@gmx.de>
17978
17979 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17980 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17981 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17982 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17983 as number.
17984 (Fdbus_call_method): Fix docstring.
17985
179862007-12-21 Michael Albinus <michael.albinus@gmx.de>
17987
17988 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17989 New macros.
17990 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17991 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17992 Simplify.
17993 (xd_signature): New function.
17994 (xd_append_arg): Compute also signatures. Major rewrite.
17995 (xd_retrieve_arg): Make debug messages friendly.
17996 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
17997 Check for signatures of arguments.
17998
179992007-12-19 Michael Albinus <michael.albinus@gmx.de>
18000
18001 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
18002 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
18003 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
18004 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
18005 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
18006 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
18007 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
18008 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
18009 (xd_retrieve_value): Remove. Functionality included in ...
18010 (xd_append_arg): New function.
18011 (Fdbus_call_method, Fdbus_send_signal): Apply it.
18012
180132007-12-16 Michael Albinus <michael.albinus@gmx.de>
18014
18015 * dbusbind.c (top): Include <stdio.h>.
18016 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
18017 dbus_message_new_method_call and dbus_message_new_signal.
18018 (Fdbus_register_signal): Rename unique_name to uname.
18019 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
18020 non-existing unique name. Fix typos in matching rule. Return an
18021 object which is useful in Fdbus_unregister_signal.
18022 (Fdbus_unregister_signal): Reimplementation, in order to remove
18023 only the corresponding entry.
18024 (Vdbus_registered_functions_table): Change the order of entries.
18025 Apply these changes in xd_read_message and Fdbus_register_signal.
18026
180272007-12-16 Andreas Schwab <schwab@suse.de>
18028
18029 * fileio.c (Finsert_file_contents): Fix overflow check to not
18030 depend on undefined integer overflow.
18031
180322007-12-14 Jason Rumney <jasonr@gnu.org>
18033
18034 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
18035 for characters above 127.
18036
180372007-12-13 Jason Rumney <jasonr@gnu.org>
18038
18039 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
18040 before dereferencing array.
18041 (lookup_vk_code): Remove zero comparison.
18042
180432007-12-14 Michael Albinus <michael.albinus@gmx.de>
18044
18045 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
18046 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
18047 Use `unsigned int' instead of `uint'.
18048 (xd_read_message, Fdbus_register_signal): Split expressions into
18049 multiple lines before operators "&&" and "||", according to the
18050 GNU Coding Standards.
18051
180522007-12-14 Eli Zaretskii <eliz@gnu.org>
18053
18054 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
18055
180562007-12-12 Juri Linkov <juri@jurta.org>
18057
18058 * buffer.c (Frename_buffer): In interactive spec replace
18059 `read-buffer' with `read-string' that uses `buffer-name-history'
18060 as history, and the current buffer's name as default.
18061
180622007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
18063
18064 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
18065 manipulating the backtrace manually.
18066 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
18067 (struct backtrace, backtrace_list): Remove.
18068 (command_loop_1): Remove dead var `no_direct'.
18069
18070 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
18071 preserve non-built-in buffer-local variables.
18072 (Fkill_all_local_variables): Don't re-create&re-set permanent
18073 buffer-local variables.
18074
180752007-12-09 Juri Linkov <juri@jurta.org>
18076
18077 * buffer.c (Frename_buffer): Change interactive spec from "s" to
18078 Lisp code that uses `read-buffer' with current buffer as default.
18079
180802007-12-08 Michael Albinus <michael.albinus@gmx.de>
18081
18082 * dbusbind.c (xd_read_message): Generate an event for every
18083 registered handler. There might be several handlers registered
18084 for the same signal.
18085 (Fdbus_register_signal): Don't overwrite a registration for the
18086 same signal. Add a new registration if handlers are different.
18087 (Vdbus_registered_functions_table): Rework doc string.
18088
180892007-12-07 Michael Albinus <michael.albinus@gmx.de>
18090
18091 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
18092 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
18093 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
18094 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
18095 Unify argument lists.
18096 (xd_read_message, Fdbus_register_signal): Reorder and extend event
18097 arguments and hash table keys. Use unique name for service.
18098 (Fdbus_unregister_signal): Remove checks.
18099 (Vdbus_registered_functions_table): Fix doc string.
18100
181012007-12-05 Magnus Henoch <mange@freemail.hu>
18102
18103 * process.c (make_process): Initialize pty_flag to 0.
18104
181052007-12-05 Jason Rumney <jasonr@gnu.org>
18106
18107 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
18108 specified XBMs.
18109
181102007-12-05 Richard Stallman <rms@gnu.org>
18111
18112 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
18113
181142007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18115
18116 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
18117 New variable.
18118 (mac_try_close_socket) [MAC_OSX]: New function.
18119 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
18120 Update cfsockets_for_select. Replace invalid CFRunLoop source.
18121
18122 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
18123 Use mac_try_close_socket.
18124
181252007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18126
18127 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
18128 reloc_base.
18129 (copy_dysymtab): Compute relocation base here.
18130 (rebase_reloc_address) [__ppc64__]: New function.
18131 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
18132 changed.
18133
181342007-12-05 Jason Rumney <jasonr@gnu.org>
18135
18136 * w32proc.c (sys_spawnve): Quote args with wildcards.
18137
181382007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18139
18140 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
18141 __objc_* sections.
18142 (unrelocate) [_LP64]: Set relocation base to address of data segment.
18143
181442007-12-05 Michael Albinus <michael.albinus@gmx.de>
18145
18146 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
18147 Move check for Vdbus_registered_functions_table to
18148 xd_read_queued_messages.
18149 (xd_read_queued_messages): Protect xd_read_message calls by
18150 internal_condition_case_1.
18151
181522007-12-04 Michael Albinus <michael.albinus@gmx.de>
18153
18154 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
18155 Qdbus_system_bus and Qdbus_session_bus, respectively.
18156 (Vdbus_intern_symbols): Remove.
18157 (Vdbus_registered_functions_table): New hash table.
18158 (XD_SYMBOL_INTERN_SYMBOL): Remove.
18159 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
18160 Rewrite in order to manage registered functions by hash table
18161 Vdbus_registered_functions_table.
18162
181632007-12-03 Jan Djärv <jan.h.d@swipnet.se>
18164
18165 * xterm.c: Update URL to Window Manager Specification in comment.
18166
181672007-12-02 Michael Albinus <michael.albinus@gmx.de>
18168
18169 * config.in (HAVE_DBUS): Add.
18170
18171 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
18172 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
18173 (obj): Add $(DBUS_OBJ).
18174 (LIBES): Add $(DBUS_LIBS).
18175 (dbusbind.o): New target.
18176
18177 * dbusbind.c: New file.
18178
18179 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
18180
18181 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
18182 (Qdbus_event): New Lisp symbol.
18183 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
18184 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 18185 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
18186
18187 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
18188
181892007-12-01 Richard Stallman <rms@gnu.org>
18190
18191 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
18192
181932007-11-30 Jason Rumney <jasonr@gnu.org>
18194
18195 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
18196 (w32con_reset_terminal_modes): Clear screen buffer.
18197 (w32_face_attributes): Don't use color indexes that are out of range.
18198 Only reverse the default colors.
18199
18200 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
18201 WINDOWSNT.
18202
18203 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
18204
182052007-11-29 Jason Rumney <jasonr@gnu.org>
18206
18207 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
18208 (w32_face_attributes): Use Vtty_defined_color_alist to determine
18209 if the terminal colors are initialized.
18210 (unspecified_fg, unspecified_bg): Remove unused declarations.
18211
182122007-11-29 Andreas Schwab <schwab@suse.de>
18213
18214 * keyboard.c (apply_modifiers): Fix typo.
18215
182162007-11-29 Richard Stallman <rms@gnu.org>
18217
18218 * keymap.c (Fcurrent_local_map): Doc fix.
18219
182202007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
18221
18222 * s/gnu-kfreebsd.h: New file.
18223
182242007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
18225
18226 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
18227 Don't cast redundantly.
18228
18229 * keyboard.c (KEY_TO_CHAR): New macro.
18230 (parse_modifiers, apply_modifiers): Accept integer arguments.
18231 (read_key_sequence): Use them to unify the "shift->unshift" mapping
18232 for chars and symbol keys.
18233 After doing such remapping, apply function-key-map again.
18234
182352007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
18236
18237 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
18238 compiled anymore.
18239
182402007-11-26 Andreas Schwab <schwab@suse.de>
18241
18242 * process.c (list_processes_1): Fix indentation level of the
18243 command column.
18244
182452007-11-23 Andreas Schwab <schwab@suse.de>
18246
18247 * editfns.c (Fformat): Handle %c specially since it requires the
18248 argument to be of type int.
18249
182502007-11-23 Markus Triska <markus.triska@gmx.at>
18251
18252 * emacs.c (main): Call init_editfns before init_process, since
18253 init_process sets Vprocess_connection_type depending on OS release.
18254
182552007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
18256
18257 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
18258 (find_symbol_value): Use do_symval_forwarding.
18259
18260 * data.c (set_internal): Set the value in the `cons-cell' (for
18261 Buffer_Local_values) not only for frame-local variables.
18262
182632007-11-22 Andreas Schwab <schwab@suse.de>
18264
18265 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
18266 values to sprintf.
18267 * keymap.c (Fsingle_key_description): Likewise.
18268 * print.c (print_object): Likewise.
18269
182702007-11-22 Jan Djärv <jan.h.d@swipnet.se>
18271
18272 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
18273 file for image is nil.
18274
182752007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
18276
18277 * term.c: Include stdarg.h.
18278 (fatal): Implement using varargs.
18279 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
18280
182812007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18282
18283 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
18284 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
18285 Update call to buffer_slot_type_mismatch.
18286 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
18287 (buffer_slot_type_mismatch): Update.
18288 * buffer.c (buffer_local_types): Remove.
18289 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
18290 (defvar_per_buffer): Set the type in the buffer_objfwd.
18291
182922007-11-21 Jason Rumney <jasonr@gnu.org>
18293
18294 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
18295 CreateFileMapping returns NULL on failure.
18296
182972007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18298
18299 * search.c (Fset_match_data): Remove the `evaporate' feature.
18300 (unwind_set_match_data): Don't use the `evaporate' feature.
18301
183022007-11-21 Jason Rumney <jasonr@gnu.org>
18303
18304 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
18305
18306 * w32console.c (w32con_write_glyphs): Remove unused variables.
18307
183082007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
18309
18310 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
18311
18312 * s/darwin.h (MULTI_KBOARD): Remove.
18313
18314 * macfns.c (x_create_tip_frame, Fx_create_frame)
18315 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
18316
183172007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
18318
18319 * buffer.c (Fbuffer_local_value): Remove redundant test.
18320 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
18321 than in `current-buffer' to match the comment.
18322 Do the swap using swap_in_global_binding.
18323
18324 * data.c (store_symval_forwarding, set_internal):
18325 * eval.c (specbind): Remove dead code.
18326
18327 * coding.c (detect_coding, Fupdate_coding_systems_internal):
18328 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
18329 Since we do not want to see internal Lisp_*fwd objects here.
18330
183312007-11-18 Jan Djärv <jan.h.d@swipnet.se>
18332
18333 * sysdep.c (init_system_name): Use getaddrinfo if available.
18334
18335 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
18336 (x_scroll_bar_note_movement): start, end, with, height in struct
18337 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
18338
183392007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
18340
18341 * puresize.h (BASE_PURESIZE): Increase to 1190000.
18342
183432007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
18344
18345 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
18346 This undoes Richard's change of 14-Oct-2002.
18347
18348 * alloc.c (allocate_other_vector):
18349 * lisp.h (allocate_other_vector): Remove.
18350
18351 * window.c (struct save_window_data): Move non-lisp data to the end
18352 and make it `int' rather than Lisp_Object.
18353 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
18354 Done wrap/unwrap integer values.
18355 (Fset_window_configuration, compare_window_configurations):
18356 Update use of fields to their new types.
18357
18358 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
18359 Turn integer fields into `int'. Merge x_window_low and x_window_high.
18360 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
18361 (SET_SCROLL_BAR_X_WINDOW): Remove.
18362 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
18363 Access the new x_window field directly.
18364 * xterm.c (x_scroll_bar_create): Use a pseudovector.
18365 Don't wrap/unwrap integers into Lisp_Objects.
18366 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
18367 (x_scroll_bar_report_motion):
18368 Don't wrap/unwrap integers into Lisp_Objects.
18369 (x_term_init): Use SDATA.
18370 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
18371 (x_scroll_bar_set_handle, x_scroll_bar_remove)
18372 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
18373 (x_scroll_bar_report_motion, x_scroll_bar_clear):
18374 * xfns.c (x_set_background_color):
18375 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
18376 Access the new x_window field directly.
18377
18378 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
18379 (allocate_pseudovector): Make non-static.
18380
18381 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
18382 (allocate_pseudovector): Declare.
18383 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
18384
183852007-11-15 Andreas Schwab <schwab@suse.de>
18386
18387 * editfns.c (Fformat): Correctly format EMACS_INT values.
18388 Also take precision into account when formatting an integer.
18389
18390 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18391
183922007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18393
18394 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18395 (syms_of_keyboard): Defsubr it.
18396
18397 * data.c (swap_in_global_binding): Fix longstanding bug where
18398 store_symval_forwarding was not called with the right second argument,
18399 thus causing objfwd-ing from being dropped.
18400
184012007-11-14 Juanma Barranquero <lekktu@gmail.com>
18402
18403 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18404 (Fx_display_pixel_height, Fx_display_planes)
18405 (Fx_display_color_cells, Fx_server_max_request_size)
18406 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18407 (Fx_display_visual_class, Fx_display_save_under):
18408 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18409 (Fx_display_pixel_height, Fx_display_planes)
18410 (Fx_display_color_cells, Fx_server_max_request_size)
18411 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18412 (Fx_display_mm_height, Fx_display_mm_width)
18413 (Fx_display_backing_store, Fx_display_visual_class)
18414 (Fw32_select_font, Fx_display_save_under):
18415 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18416 (Fx_display_pixel_height, Fx_display_planes)
18417 (Fx_display_color_cells, Fx_server_max_request_size)
18418 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18419 (Fx_display_save_under): Fix typos in docstrings.
18420
184212007-11-14 Juanma Barranquero <lekktu@gmail.com>
18422
18423 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18424 corresponding to deleted entries; they are an implementation detail.
18425 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18426 Remove variables.
18427 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18428 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18429 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18430 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18431 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18432 (Fw32_define_rgb_color, Fw32_load_color_file)
18433 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18434 Fix typos in docstrings.
18435 (Fx_server_version): Reflow docstring.
18436 (Fw32_shell_execute): Doc fixes.
18437
184382007-11-13 Juanma Barranquero <lekktu@gmail.com>
18439
18440 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18441 if w32_parse_hot_key returned nil.
18442
184432007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18444
18445 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18446
184472007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 18448
aac0c6e3
MR
18449 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18450
18451 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18452
18453 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18454 Remove W32_SCROLL_BAR_CLICK_EVENT.
18455
18456 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18457 Add MULTIMEDIA_KEY_EVENT.
18458
18459 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18460 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18461 (make_lispy_event) [WINDOWSNT]: Use it to translate
18462 MULTIMEDIA_KEY_EVENT.
18463
18464 * w32term.h (WM_APPCOMMAND): Define if not already.
18465 (GET_APPCOMMAND_LPARAM): Likewise.
18466
18467 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18468 WM_APPCOMMAND.
18469
18470 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18471 (syms_of_w32fns): Export and initialize it.
18472 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18473
184742007-11-09 Chong Yidong <cyd@stupidchicken.com>
18475
18476 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18477 twice.
18478
18479 * xdisp.c (handle_face_prop): Fix last change.
18480
184812007-11-09 Richard Stallman <rms@gnu.org>
18482
18483 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18484 not just for after-strings and before-strings.
18485 Call face_for_overlay_string and pass the overlay to it.
18486 (handle_display_prop): Determine whether property came from an overlay.
18487 Pass OVERLAY arg to handle_single_display_spec.
18488 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18489 (load_overlay_strings): Fill in it->string_overlays.
18490 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18491
18492 * xfaces.c (face_for_overlay_string): Function renamed from
18493 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18494
18495 * dispextern.h (struct it): New elt string_overlays.
18496 New elt from_overlay, also in stack.
18497 Rearrange a few elements.
18498 (face_for_overlay_string): Decl renamed from
18499 face_at_buffer_position_no_overlays, and add argument.
18500
185012007-11-09 Richard Stallman <rms@gnu.org>
18502
18503 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18504 to get the base face for an overlay string.
18505
18506 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18507
18508 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18509
18510 * xdisp.c (handle_stop): Move some code out of loop.
18511
185122007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18513
18514 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18515 Fix conversion from Lisp object to ATSUFontID.
18516
185172007-11-09 Jason Rumney <jasonr@gnu.org>
18518
18519 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18520
185212007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18522
18523 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18524 Don't assume regions are aligned to page boundary.
18525 (print_load_command_name): Add LC_UUID if defined.
18526
185272007-11-09 Richard Stallman <rms@gnu.org>
18528
18529 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18530
185312007-11-07 Jason Rumney <jasonr@gnu.org>
18532
18533 * s/windows95.h: Remove.
18534
185352007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18536
18537 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18538 abort with a message on unhandled store_type values.
18539
185402007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18541
18542 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18543 Remove HAVE_X11R5 and HAVE_X11R4.
18544
185452007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18546
18547 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18548
185492007-11-01 Johan Bockgård <bojohan@gnu.org>
18550
18551 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18552 Don't set s->stippled_p here, since it has already been set by
18553 x_set_glyph_string_gc from x_draw_glyph_string.
18554
185552007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18556
18557 * sunfns.c: Remove file.
18558
18559 * m/sun386.h:
18560 * m/sun2.h:
18561 * m/sparc.h: Remove Sun windows code.
18562
185632007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18564
18565 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18566 (init_keyboard): Set current_kboard's window-system to nil.
18567 (tty_read_avail_input): Typo.
18568 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18569
185702007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18571
18572 * s/usg5-4.h:
18573 * s/usg5-3.h:
18574 * s/ptx.h:
18575 * m/is386.h:
18576 * m/ibmps2-aix.h:
18577 * Makefile.in: Remove all mentions of X10.
18578
18579 * dispnew.c (syms_of_display): Don't mention version 10.
18580
185812007-10-28 Juanma Barranquero <lekktu@gmail.com>
18582
18583 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18584 ($(BLD)/abbrev.$(O)): Remove.
18585
185862007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18587
18588 Rewrite abbrev.c in Elisp.
18589 * image.c (Qcount): Don't declare as extern.
18590 (syms_of_image): Initialize and staticpro `Qcount'.
18591 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18592 * emacs.c (main): Don't call syms_of_abbrev.
18593 * Makefile.in (obj): Remove abbrev.o.
18594 (abbrev.o): Remove.
18595 * abbrev.c: Remove.
18596
185972007-10-26 Martin Rudalics <rudalics@gmx.at>
18598
18599 * window.c (window_min_size_2): Don't count header-line.
18600
186012007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18602
18603 * frame.h (struct frame): Move all bit fields after the first bit
18604 field to take advantage of the available space. Group all the
18605 chars together to reduce wasted space due to padding.
18606
186072007-10-26 Juanma Barranquero <lekktu@gmail.com>
18608
18609 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18610
18611 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18612 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18613 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18614 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18615 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18616 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18617 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18618 (last_marked, mark_object_loop_halt): Make static.
18619
18620 * frame.c (syms_of_frame) <delete-frame-functions>:
18621 Fix typo in docstring.
18622
186232007-10-25 Juanma Barranquero <lekktu@gmail.com>
18624
18625 * w32.c (init_environment): Fix tiny memory leak.
18626 (w32_get_resource): Remove unused variable `ok'.
18627
186282007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18629
18630 Make `window-system' into a keyboard-local variable (rather than
18631 frame-local as done originally by multi-tty).
18632
18633 * keyboard.h (struct kboard): Add Vwindow_system.
18634 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18635 (mark_kboards): Mark Vwindow_system.
18636
18637 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18638 (init_display): Don't set the obsolete `window-system' frame-param.
18639
18640 * xterm.c (x_term_init):
18641 * w32term.c (w32_create_terminal):
18642 * term.c (init_tty): Set Vwindow_system.
18643 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18644 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18645
18646 * xfns.c (Fx_create_frame, x_create_tip_frame):
18647 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18648 * macfns.c (Fx_create_frame):
18649 Don't set the obsolete `window-system' frame-param.
18650
18651 * frame.h (Qwindow_system): Remove.
18652 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18653 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18654
186552007-10-24 Richard Stallman <rms@gnu.org>
18656
18657 * frame.c (x_figure_window_size): For fullscreen case,
18658 set USPosition | PPosition without clobbering rest of window_prompting.
18659
18660 * keyboard.c (Fcurrent_idle_time): Doc fix.
18661
18662 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18663
186642007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18665
18666 * process.c (unwind_request_sigio): Only define if __ultrix__.
18667
18668 * callproc.c (child_setup): Remove spurious *.
18669
18670 * lisp.h (Fget_text_property): Declare.
18671 (have_menus_p): Declare it here rather than in sys-dep header files.
18672 * macterm.h (have_menus_p):
18673 * msdos.h (have_menus_p):
18674 * xterm.h (have_menus_p): Remove.
18675
18676 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18677 (Fmake_variable_frame_local): Just check the variable's const-ness
18678 rather than checking nil or t.
18679
186802007-10-22 Jason Rumney <jasonr@gnu.org>
18681
18682 * w32fns.c: Include math.h.
18683 (w32_abort): Declaration moved to nt/config.nt.
18684
18685 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18686 (abort): Redefinition moved to nt/config.nt.
18687
18688 * m/windowsnt.h: Remove.
18689
186902007-10-22 Juanma Barranquero <lekktu@gmail.com>
18691
18692 * emacs.c (Fdump_emacs): Fix typo in message.
18693 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18694 <installation-directory>: Reflow docstring.
18695
186962007-10-22 Juri Linkov <juri@jurta.org>
18697
18698 * minibuf.c: Allow minibuffer default to be a list of default values.
18699 With empty input use the first element of this list as returned default.
18700 (string_to_object)
18701 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18702 (read_minibuf): If defalt is cons, set histstring to its car.
18703 (Fread_string): If default_value is cons, set val to its car.
18704 (Fread_buffer): If def is cons, use its car.
18705 (Fcompleting_read): If defalt is cons, set val to its car.
18706
187072007-10-21 Michael Albinus <michael.albinus@gmx.de>
18708
18709 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18710
187112007-10-20 Juanma Barranquero <lekktu@gmail.com>
18712
18713 * doc.c (Fdocumentation): Check for advice in all cases.
18714
187152007-10-19 Chong Yidong <cyd@stupidchicken.com>
18716
18717 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18718
187192007-10-19 Richard Stallman <rms@gnu.org>
18720
18721 * doc.c (Fdocumentation): Check for and handle an advised function.
18722
187232007-10-19 Juanma Barranquero <lekktu@gmail.com>
18724
18725 * process.c (Fset_process_filter): Doc fix.
18726
187272007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18728
18729 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18730 which caused key-translation-map to applied repeatedly (thus breaking
18731 double-mode).
18732
187332007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18734
18735 * xselect.c (x_own_selection, x_handle_selection_clear)
18736 (x_clear_frame_selections):
18737 * w32menu.c (list_of_panes, list_of_items):
18738 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18739 * textprop.c (validate_plist, interval_has_all_properties)
18740 (interval_has_some_properties, interval_has_some_properties_list)
18741 (add_properties, text_property_list):
18742 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18743 * minibuf.c (Fassoc_string):
18744 * macselect.c (x_own_selection, x_clear_frame_selections)
18745 (Fx_disown_selection_internal):
18746 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18747 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18748
187492007-10-17 Chong Yidong <cyd@stupidchicken.com>
18750
18751 * process.c: Link to libs for calling res_init() if available.
18752 (Fmake_network_process): Call res_init() before getaddrinfo or
18753 gethostbyname, if possible.
18754
187552007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18756
18757 * lread.c (read1): Set pvectype for char_tables.
18758
18759 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18760 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18761 Add type checks.
18762 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18763
18764 * alloc.c (free_misc): Use XMISCTYPE.
18765 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18766
187672007-10-17 Glenn Morris <rgm@gnu.org>
18768
18769 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18770 (syms_of_minibuf): Add Qcompletion_ignore_case.
18771 * dired.c (Qcompletion_ignore_case): Change to external.
18772 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18773 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18774 (Fread_file_name): Use it rather than intern'ing.
18775
18776 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18777 (Fread_coding_system): Ignore case of user input.
18778
187792007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18780
18781 * xdisp.c (handle_display_prop): Ignore display specs after
18782 replacing one when string text is being replaced.
18783 (handle_single_display_spec): Pretend as if characters with display
18784 property haven't been consumed only when buffer text is being replaced.
18785
187862007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18787
18788 * xfns.c (Fx_create_frame, Fx_display_list):
18789 * window.c (window_fixed_size_p, enlarge_window)
18790 (shrink_window_lowest_first):
18791 * macterm.c (init_font_name_table):
18792 * macfns.c (Fx_create_frame, Fx_display_list):
18793 * lread.c (close_load_descs):
18794 * keyboard.c (read_char_x_menu_prompt):
18795 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18796 * coding.c (code_convert_region_unwind): Test the type of an object
18797 rather than just !NILP before extracting data from it.
18798
18799 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18800
18801 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18802 (XMISCANY): New macro.
18803 (XMISCTYPE): Use it.
18804 (struct Lisp_Misc_Any): New type.
18805 (union Lisp_Misc): Use it.
18806 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18807 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18808 (find_symbol_value, set_internal, default_value, Fset_default)
18809 (Fmake_variable_buffer_local, Fmake_local_variable)
18810 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18811 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18812 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18813 * alloc.c (allocate_buffer): Set the size and tag.
18814 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18815 Use XMISCANY.
18816 (die): Follow the GNU convention for error messages.
18817 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18818 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18819 tag any more.
18820 (set_buffer_internal_1):
18821 * frame.c (store_frame_param):
18822 * eval.c (specbind):
18823 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18824
18825 * doc.c (Fsnarf_documentation): Simplify.
18826
188272007-10-14 Juanma Barranquero <lekktu@gmail.com>
18828
18829 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18830 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18831
188322007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18833
18834 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18835
188362007-10-14 Juanma Barranquero <lekktu@gmail.com>
18837
18838 * eval.c (do_autoload): Don't save autoloads.
18839
18840 * data.c (Ffset): Save autoload of the function being set.
18841
188422007-10-07 John Paul Wallington <jpw@pobox.com>
18843
18844 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18845 parameter before setting up faces.
18846
188472007-10-13 Eli Zaretskii <eliz@gnu.org>
18848
18849 * ccl.c (Fregister_code_conversion_map):
18850 * keyboard.c (append_tool_bar_item): Reformat last change.
18851
18852 * lisp.h (eabs): Rename from `abs'. All callers changed.
18853
188542007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18855
18856 * buffer.c (add_overlay_mod_hooklist):
18857 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18858 * fontset.c (make_fontset):
18859 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18860 (append_tool_bar_item):
18861 * macmenu.c (grow_menu_items):
18862 * w32menu.c (grow_menu_items):
18863 * xmenu.c (grow_menu_items): Use larger_vector.
18864
188652007-10-13 Eli Zaretskii <eliz@gnu.org>
18866
18867 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18868 selected frame'' on MSDOS).
18869
188702007-10-12 Martin Rudalics <rudalics@gmx.at>
18871
18872 * frame.c (Qexplicit_name): New variable.
18873 (x_report_frame_params): Report it in parameter alist.
18874 (syms_of_frame): Intern and staticpro it.
18875
188762007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18877
18878 * macfns.c (x_create_tip_frame): Set terminal for frame.
18879
188802007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18881
18882 * frame.c (Qenvironment): Remove.
18883 (syms_of_frame) <Qenvironment>: Don't initialize.
18884 (Fdelete_frame): Don't treat the `environment' param specially.
18885 * frame.h (Qenvironment): Don't declare.
18886 * callproc.c (set_initial_environment): Don't set unused frame param.
18887
18888 * frame.c (Fframe_with_environment): Remove.
18889 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18890
18891 * lisp.h (Fframe_with_environment): Don't declare.
18892
188932007-10-10 Juanma Barranquero <lekktu@gmail.com>
18894
18895 * indent.c (indent_tabs_mode, last_known_column)
18896 (last_known_column_modified): Make static.
18897 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18898
188992007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18900
18901 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18902
189032007-10-09 Jason Rumney <jasonr@gnu.org>
18904
18905 * w32term.c (x_set_window_size): Disable code that attempts to tell
18906 Lisp code about a size change before it actually happens.
18907
189082007-10-09 Richard Stallman <rms@gnu.org>
18909
18910 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18911 return HANDLED_RETURN.
18912
189132007-10-08 Martin Rudalics <rudalics@gmx.at>
18914
18915 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18916 when there's an unread command event.
18917
18918 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18919 window autoselection act appropriately when leaving selected frame.
18920 (syms_of_frame): Initialize focus_follows_mouse.
18921 * frame.h (focus_follows_mouse): Extern it.
18922 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18923 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18924 * msdos.c (dos_rawgetc): Likewise.
18925 * w32term.c (w32_read_socket): Likewise.
18926 * xterm.c (handle_one_xevent): Likewise.
18927 * xdisp.c (syms_of_xdisp): In doc-string of
18928 mouse-autoselect-window mention focus-follows-mouse.
18929
189302007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18931
18932 * macterm.c (mac_load_query_font): Fix missing return value.
18933 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18934 Add BLOCK_INPUT.
18935
189362007-10-08 Richard Stallman <rms@gnu.org>
18937
18938 * xdisp.c (get_window_cursor_type): Implement documented behavior
18939 for cursor-in-non-selected-windows = t.
18940
189412007-10-08 Jason Rumney <jasonr@gnu.org>
18942
18943 * w32.c (w32_get_resource): Always close registry keys.
18944
189452007-10-08 Jason Rumney <jasonr@gnu.org>
18946
18947 * makefile.w32-in (LIBS): Add COMCTL32.
18948
18949 * w32fns.c (globals_of_w32fns): Init common controls.
18950
189512007-10-08 Richard Stallman <rms@gnu.org>
18952
18953 * image.c (our_memory_buffer): Rename from omfib_buffer.
18954
189552007-10-08 Richard Stallman <rms@gnu.org>
18956
18957 * buffer.c (Foverlays_at): Doc fix.
18958
189592007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18960
18961 * fns.c (Fplist_put): Preserve uneven tail data.
18962
189632007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18964
18965 * termhooks.h (enum event_kind): Remove trailing comma.
18966
18967 * frame.h (enum): Remove trailing comma.
18968
189692007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18970
18971 * w32proc.c (delete_child): Don't terminate threads of zombies.
18972
189732007-10-08 Martin Rudalics <rudalics@gmx.at>
18974
18975 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18976
18977 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18978 last-repeatable-command.
18979 (init_kboard): Initialize Vlast_repeatable_command.
18980 (command_loop_1): Set it to real_this_command unless that was
18981 bound to an input event.
18982 (mark_kboards): Mark it.
18983
189842007-10-08 Richard Stallman <rms@gnu.org>
18985
18986 * eval.c (condition-case): Doc fix.
18987
189882007-10-08 Masatake YAMATO <jet@gyve.org>
18989
18990 * xfaces.c (tty_supports_face_attributes_p): Fix code
18991 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18992 was copied and not edited.
18993
189942007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
18995
18996 Add new `input-decode-map' keymap and use it for terminal
18997 escape sequences.
18998 * keyboard.h (struct kboard): Add Vinput_decode_map.
18999 Remove Vlocal_key_translation_map.
19000 * keyboard.c (read_key_sequence): Add support for input-decode-map.
19001 (init_kboard): Init input-decode-map.
19002 Replace local-key-translation-map back with key-translation-map.
19003 (syms_of_keyboard): Declare input-decode-map.
19004 Remove local-key-translation-map. Update docstrings.
19005 (mark_kboards): Mark Vinput_decode_map.
19006 Don't mark Vlocal_key_translation_map.
19007 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
19008 Replace local-key-translation-map back with key-translation-map.
19009 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
19010 Bind in input-decode-map rather than function-key-map.
19011
19012 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
19013 This was made redundant by the previous introduction of XSETPVECTYPE.
19014
190152007-10-09 Richard Stallman <rms@gnu.org>
19016
19017 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
19018
190192007-09-29 Richard Stallman <rms@gnu.org>
19020
19021 * eval.c (internal_condition_case_2, internal_condition_case_1)
19022 (internal_condition_case): Reenable abort if x_catching_errors ()
19023 to see if that really happens and why.
19024
190252007-10-06 Andreas Schwab <schwab@suse.de>
19026
19027 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
19028
190292007-10-04 Juanma Barranquero <lekktu@gmail.com>
19030
19031 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
19032
190332007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
19034
19035 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
19036
190372007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
19038
19039 * window.h (struct window):
19040 * window.c (struct save_window_data, struct saved_window):
19041 * termhooks.h (struct terminal):
19042 * process.h (struct Lisp_Process):
19043 * frame.h (struct frame):
19044 * buffer.h (struct buffer):
19045 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
19046 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
19047 The size field of (pseudo)vectors is now unsigned.
19048 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
19049
19050 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
19051 Turn `count' into an integer.
19052
19053 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
19054 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
19055 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
19056 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
19057 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
19058
19059 * alloc.c (allocate_pseudovector): New fun.
19060 (ALLOCATE_PSEUDOVECTOR): New macro.
19061 (allocate_window, allocate_terminal, allocate_frame)
19062 (allocate_process): Use it.
19063 (mark_vectorlike): New function.
19064 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
19065 (mark_terminals): Use it.
19066 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
19067 (Fmake_byte_code): Use XSETPVECTYPE.
19068
19069 * frame.c (Fframe_parameters): Minor simplification.
19070
19071 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
19072
19073 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
19074
19075 * buffer.c (Fget_buffer_create, init_buffer_once):
19076 * lread.c (defsubr):
19077 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
19078
19079 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
19080 defined differently in the m/*.h files.
19081 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
19082 (XSETPVECTYPE): New macro.
19083 (XSETPSEUDOVECTOR): Use it.
19084
19085 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
19086 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
19087
19088 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
19089 * lread.c (defvar_per_buffer):
19090 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
19091
19092 * window.c (candidate_window_p): Only consider as visible frames that
19093 are on the same terminal.
19094
19095 * m/ibms390x.h (MARKBIT): Remove unused macro.
19096
190972007-10-01 Juanma Barranquero <lekktu@gmail.com>
19098
19099 * lread.c (Fload): Fix typo in docstring.
19100
191012007-10-01 Michaël Cadilhac <michael@cadilhac.name>
19102
19103 * floatfns.c (Fexpt): Manually check for overflows, so that a power
19104 of a non-zero value can't yield zero.
19105
191062007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
19107
19108 * term.c (term_clear_mouse_face, term_mouse_highlight)
19109 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
19110
19111 * print.c (safe_debug_print): Use XHASH.
19112
19113 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
19114 Lisp elements such as tags.
19115 (XHASH): New macro.
19116 (EQ): Use it.
19117 (SREF, SSET, STRING_COPYIN): Use SDATA.
19118 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
19119
19120 * alloc.c (mark_terminal): Remove left-over declaration.
19121 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
19122 (allocate_vectorlike): Remove type argument. Adjust callers.
19123 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
19124 Only handle the one remaining MEM_TYPE_VECTORLIKE.
19125
19126 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
19127 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
19128 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
19129 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
19130 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
19131 Use them.
19132
19133 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
19134 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
19135 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
19136
191372007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
19138
19139 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
19140 loaded by default.
19141
191422007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
19143
19144 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
19145 on this tty.
19146 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
19147
19148 * term.c (mouse_face_window): Rename from Qmouse_face_window.
19149 Update all users.
19150 (handle_one_term_event): Use Gpm_DrawPointer.
19151 (Fgpm_mouse_start): Rename from Fterm_open_connection.
19152 Signal errors instead of returning nil. Always return nil.
19153 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
19154 Make it a noop if gpm-mouse was not activated.
19155 (syms_of_term): Update names.
19156
191572007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
19158
19159 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
19160 (init_sys_modes): Check that gpm_tty is the current tty.
19161
19162 * alloc.c (allocate_terminal): Set the vector size to only count the
19163 lisp fields. Initialize those to nil.
19164 (mark_object): Don't treat terminals specially.
19165 (mark_terminal): Remove.
19166 (mark_terminals): Use mark_object instead.
19167
19168 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
19169 the GC to the beginning.
19170
19171 * indent.h:
19172 * indent.c: Use EMACS_INT for ints coming from Elisp data.
19173
19174 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
19175
191762007-09-25 Jason Rumney <jasonr@gnu.org>
19177
19178 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
19179
19180 * w32console.c (create_w32cons_output): Remove.
19181
19182 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
19183
19184 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
19185 (reset_sys_modes): Use reset_terminal_modes_hook.
19186
191872007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
19188
19189 * eval.c (do_autoload): Don't output any message.
19190
191912007-09-24 Juri Linkov <juri@jurta.org>
19192
19193 * emacs.c (standard_args): Change priority of "--no-splash"
19194 from 40 to 3. Add "--no-desktop" with the same priority.
19195
191962007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
19197
19198 * alloc.c (gc_sweep): Check cons cell mark bits word by word
19199 and optimize the case where they are all 1.
19200
192012007-09-23 Johannes Weiner <hannes@saeurebad.de>
19202
19203 * lisp.h (abs): Define if not defined.
19204 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
19205 Don't define `abs', since it's defined in lisp.h.
19206
192072007-09-22 Eli Zaretskii <eliz@gnu.org>
19208
19209 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
19210 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
19211 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
19212 (init_tty): Use DEV_TTY instead of "/dev/tty".
19213 [WINDOWSNT]: No need to protect from NAME arg being null.
19214
192152007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
19216
19217 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
19218 up the tty state.
19219
192202007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19221
19222 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
19223 (gpm_tty): Change its type.
19224 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
19225 (gpm_tty): Change its type and initialize it.
19226 (Fterm_open_connection): Check the frame is indeed a tty.
19227 Use the new gpm_tty.
19228 (Fterm_close_connection): Use the new gpm_tty.
19229 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
19230 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
19231
192322007-09-21 Juanma Barranquero <lekktu@gmail.com>
19233
19234 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
19235 underline_color, to draw strike-through.
19236
192372007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19238
19239 * lisp.h (allocate_terminal): Declare.
19240
19241 * window.c (candidate_window_p): Consider frames that are being placed
19242 by the user as somewhere between visible and iconified.
19243 (window_loop): Prefer windows on the current frame.
19244 (Fselect_window): Move the use of select-frame to the beginning so we
19245 can just delegate all the work (it'll call us back anyway).
19246
19247 * frame.c (Qdisplay_environment_variable):
19248 * frame.h (Qdisplay_environment_variable): Delete.
19249
19250 * .gdbinit (xbacktrace): Print the arg's address rather than the value
19251 of the first arg, since that value may be a union.
19252
19253 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
19254 parameter rather than Qdisplay_environment_variable. If all else
19255 fails, look for DISPLAY in initial-environment.
19256
192572007-09-21 Glenn Morris <rgm@gnu.org>
19258
19259 * Makefile.in (emacstool): Remove target.
19260 (lisp, shortlisp): Remove termdev.elc.
19261
192622007-09-21 Markus Triska <markus.triska@gmx.at>
19263
19264 * xterm.c (x_delete_display): Compile session management conditionally.
19265
192662007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
19267
19268 * callproc.c (getenv_internal_1): New function.
19269 (getenv_internal): Use it.
19270 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
19271
19272 * terminal.c (get_terminal): Don't accept ints to represent terminals.
19273 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
19274 (Fset_terminal_parameter): Work with dead terminals as well.
19275 (Fmodify_terminal_parameters): Remove.
19276
19277 * terminal.c (get_terminal): Handle terminals.
19278 Make sure the terminal returned is live.
19279 (create_terminal): Use allocate_terminal.
19280 (mark_terminals): Move to alloc.c.
19281 (delete_terminal): Use terminal->name as liveness status.
19282 NULL out fields after freeing their contents.
19283 Don't deallocate the object.
19284 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
19285 rather than an int.
19286 (Fterminal_live_p): Accept non-integer arguments.
19287 (Fterminal_list): Return terminal objects rather than an ints.
19288
19289 * alloc.c (enum mem_type): New member for `terminal' objects.
19290 (allocate_terminal): New function.
19291 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
19292 Handle terminals.
19293 (mark_terminal): New fun.
19294 (mark_terminals): Move from terminal.c.
19295
19296 * term.c (get_tty_terminal): Don't treat output_initial specially.
19297 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
19298 (delete_tty): Use terminal->name as liveness status.
19299
19300 * termhooks.h (struct terminal): Make it into a pseudovector.
19301 Remove `deleted' replaced by checking `name's nullness.
19302
19303 * print.c (print_object): Handle terminals.
19304
19305 * lisp.h (enum pvec_type): New `terminal' pseudovector.
19306 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
19307
19308 * frame.c (make_terminal_frame):
19309 * keyboard.c (tty_read_avail_input):
19310 * w32term.c (x_delete_terminal):
19311 * xfns.c (Fx_create_frame, x_create_tip_frame):
19312 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
19313
193142007-09-20 Glenn Morris <rgm@gnu.org>
19315
19316 * process.c (Fmake_network_process): Doc fix.
19317
193182007-09-19 Jason Rumney <jasonr@gnu.org>
19319
19320 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
19321
193222007-09-19 Michaël Cadilhac <michael@cadilhac.name>
19323
19324 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
19325 Fix a C warning regarding variable constness.
19326
19327 * xterm.c (handle_one_xevent): Fix a C warning.
19328
193292007-09-18 Jason Rumney <jasonr@gnu.org>
19330
19331 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
19332
193332007-09-17 Jan Djärv <jan.h.d@swipnet.se>
19334
19335 * gtkutil.c (gdpy_def): New variable.
19336 (xg_initialize): Initialize gdpy_def.
19337 (xg_display_close): If no other display exists, set gdpy_def to a
19338 new connection.
19339
193402007-09-16 Jan Djärv <jan.h.d@swipnet.se>
19341
19342 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
19343 when we have no file name for the icon.
19344 (xg_tool_bar_expose_callback): Remove.
19345 (xg_create_tool_bar): Don't connect expose signal to
19346 xg_tool_bar_expose_callback.
19347 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
19348
193492007-09-16 Andreas Schwab <schwab@suse.de>
19350
19351 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
19352 values instead of zapping them.
19353
193542007-09-14 Glenn Morris <rgm@gnu.org>
19355
19356 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
19357 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
19358 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
19359 scope and rename to omfib_buffer for clarity.
19360 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
19361
193622007-09-14 Kenichi Handa <handa@m17n.org>
19363
19364 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
19365
193662007-09-13 Jason Rumney <jasonr@gnu.org>
19367
19368 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
19369
19370 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
19371
19372 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
19373 (mac_term_init): Call here instead, passing rif.
19374
193752007-09-13 Glenn Morris <rgm@gnu.org>
19376
19377 * s/hpux.h: No longer define `static' as nothing.
19378
193792007-09-13 Johan Bockgård <bojohan@gnu.org>
19380
19381 * callint.c (Fcall_interactively): Remove unused var `fun'.
19382
193832007-09-12 Romain Francoise <romain@orebokech.com>
19384
19385 * window.c (prefer_window_split_horizontally, display_buffer):
19386 Revert 2007-09-08 change.
19387
193882007-09-12 Glenn Morris <rgm@gnu.org>
19389
19390 * alloca.c: Remove file.
19391 * Makefile.in (alloca): Do not undef.
19392 (allocaobj, alloca.o): Remove.
19393 (otherobj): Remove allocaobj.
19394 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19395 * regex.c (C_ALLOCA): Remove all references and code that was only
19396 used when this was defined.
19397 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19398 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19399 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19400
19401 * Makefile.in (SOURCES, unlock, relock): Delete.
19402
19403 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19404 (menu_grab_callback): All uses changed.
19405
19406 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19407 (x_reply_selection_request): All uses changed.
19408
194092007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19410
19411 * lread.c (load_warn_old_style_backquotes): Change message to look
19412 better when it appears in the middle of byte-compiler messages.
19413
194142007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19415
19416 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19417
19418 * xterm.c (x_create_terminal): Add comment.
19419
19420 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19421
194222007-09-10 Richard Stallman <rms@gnu.org>
19423
19424 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19425
194262007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19427
19428 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19429 (DEFUN): Document `intspec', use it instead of `prompt'.
19430
19431 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19432
19433 * data.c (Finteractive_form): If the interactive specification starts
19434 with a `(', use it as a Lisp form.
19435
19436 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19437 name and file modes.
19438
19439 * callint.c (Fcall_interactively): Comment fixes.
19440
194412007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19442
19443 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19444 and compiled functions.
19445
194462007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19447
19448 * window.c (prefer_window_split_horizontally): New variable.
19449 (display_buffer): Consider splitting window horizontally depending
19450 on prefer_window_split_horizontally.
19451
194522007-09-08 Eli Zaretskii <eliz@gnu.org>
19453
19454 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19455
194562007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19457
19458 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19459
19460 * frame.c (x_set_frame_parameters): Check number is positive before
19461 using XFASTINT.
19462
19463 * window.c (freeze_window_start): Don't presume selected_window holds
19464 a window object.
19465 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19466
194672007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19468
19469 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19470
194712007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19472
19473 * window.c (Vsplit_window_preferred_function): New var.
19474 (Fdisplay_buffer): Use it.
19475 (syms_of_window): Export, and initialize it.
19476
194772007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19478
19479 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19480
194812007-09-06 Glenn Morris <rgm@gnu.org>
19482
19483 * gtkutil.c (menu_grab_callback) <cnt>:
19484 * xselect.c (x_reply_selection_request) <cnt>: Move static
19485 variable to file scope.
19486
194872007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19488
19489 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19490 consistent values of selected_frame and selected_window.
19491
194922007-09-04 Jason Rumney <jasonr@gnu.org>
19493
19494 * w32console.c (initialize_w32_display): Zero unused hooks.
19495
194962007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19497
19498 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19499 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19500
195012007-09-04 Jason Rumney <jasonr@gnu.org>
19502
19503 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19504 in w32console.c. Set up input. Remove XXX comments that have been
19505 confirmed as correct.
19506
19507 * s/ms-w32.h (MULTI_KBOARD): Define.
19508
19509 * w32console.c (one_and_only_w32cons): Remove.
19510 (initialize_w32_display): Take terminal argument.
19511
19512 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19513 initialize_w32_display.
19514 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19515
19516 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19517
19518 * keyboard.c (discard_mouse_events): Discard it.
19519 (make_lispy_event): Translate it to a lisp event.
19520 (lispy_wheel_names): Add wheel-left and right events.
19521 (syms_of_keyboard): Enlarge wheel_syms.
19522
19523 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19524 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19525
19526 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19527
19528 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19529 from WM_MOUSEHWHEEL.
19530 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19531
19532 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19533 terminal.
19534
19535 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19536 keyboard for the terminal.
19537
195382007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19539
19540 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19541 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19542 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19543 and resume-tty-function to resume-tty-hook.
19544 (Fsuspend_tty, Fresume_tty): Use new names.
19545
195462007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19547
19548 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19549 if it starts with "n:".
19550
195512007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19552
19553 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19554
195552007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19556
19557 * frame.h:
19558 * frame.c (Qterm_environment_variable): Remove.
19559 (syms_of_frame): Don't init and staticpro it.
19560
19561 * callproc.c (getenv_internal): Remove special case for $TERM.
19562
19563 * callproc.c (Vinitial_environment): New variable.
19564 (set_initial_environment): Initialize it.
19565 (syms_of_callproc): Declare it.
19566 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19567 TERM under which a process runs is never related to the TERM in which
19568 Emacs is running.
19569
195702007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19571
19572 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19573 * s/darwin.h: ... do it here.
19574
195752007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19576
19577 * lisp.h (set_initial_environment): Rename from set_global_environment.
19578
19579 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19580 removed by mistake on the multi-tty branch.
19581
19582 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19583 (Fmodify_frame_parameters): Return a value.
19584
19585 * image.c (png_load): Comment-out var only used in commented-out code.
19586
19587 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19588 before passing it to mark_object.
19589
19590 * xfaces.c (internal_resolve_face_name): Return a value.
19591 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19592
19593 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19594 (x_icon): Comment-out var only used in commented-out code.
19595
195962007-08-29 Romain Francoise <romain@orebokech.com>
19597
19598 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19599 QUIT hasn't been provided.
19600
196012007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19602
19603 * callproc.c (child_setup, getenv_internal): Use the
19604 display-environment-variable and term-environment-variable frame params.
19605 (set_initial_environment): Initialise Vprocess_environment.
19606
19607 * config.in: Disable multi-keyboard support on a mac.
19608
19609 * frame.c (Qterm_environment_variable)
19610 (Qdisplay_environment_variable): New variables.
19611 (syms_of_frame): Intern and staticpro them.
19612 (Fmake_terminal_frame): Disable output method test.
19613
19614 * frame.h: Declare them here.
19615
19616 * macfns.c (x_set_mouse_color): Get rif from the frame.
19617 (x_set_tool_bar_lines): Don't use updating_frame.
19618 (mac_window): Add 2 new parameters for consistency with other systems.
19619 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19620 frame parameters following what is done in X11 and w32. Don't use
19621 FRAME_MAC_DISPLAY_INFO.
19622 (Fx_open_connection, start_hourglass): Remove window-system check.
19623 (x_create_tip_frame): Get the keyboard from the terminal.
19624
19625 * macmenu.c: Reorder includes.
19626 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19627
19628 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19629 terminal parameter.
19630 (x_clear_frame): Add a frame parameter.
19631 (note_mouse_movement): Get rif from the frame.
19632 (mac_term_init): Initialize the terminal.
19633 (mac_initialize): Make static and move terminal initialization ...
19634 (mac_create_terminal): ... to this new function.
19635
19636 * macterm.h (struct mac_display_info): Add terminal.
19637 (mac_initialize): Delete declaration.
19638
19639 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19640
19641 * sysdep.c: Comment out text after #endif.
19642
19643 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19644 is defined. Better initialize ttys in windows. Use terminal
19645 specific mouse_position_hook.
19646
19647 * termhooks.h (union display_info): Add mac_display_info.
19648
19649 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19650 Set the default minibuffer frame, window_system and the rest of the
19651 frame parameters following what is done in X11.
19652
19653 * w32term.c (w32_initialize): Make static.
19654
19655 * xselect.c (x_handle_selection_clear): Only access
19656 terminal->kboard when MULTI_KBOARD is defined.
19657
19658 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19659 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19660
196612007-08-29 Jason Rumney <jasonr@gnu.org>
19662
19663 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19664 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19665
19666 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19667 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19668
19669 * keyboard.c (restore_kboard_configuration): Only define when
19670 MULTI_KBOARD defined.
19671
19672 * makefile.w32-in: Update dependancies from Makefile.in.
19673 (OBJ1): Add terminal.$(O)
19674
19675 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19676 Don't define function body.
19677 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19678
19679 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19680
19681 * w32.c (request_sigio, unrequest_sigio): Remove.
19682
19683 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19684 (w32con_clear_frame, w32con_clear_end_of_line)
19685 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19686 (w32con_delete_glyphs, w32con_set_terminal_window)
19687 (scroll_line, w32_sys_ring_bell): Add frame arg.
19688 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19689 Add terminal arg.
19690 (PICK_FRAME): Remove.
19691 (w32con_write_glyphs): Use frame specific terminal coding.
19692 (one_and_only_w32cons): New global variable.
19693 (initialize_w32_display): Use it for storing hooks.
19694 (create_w32cons_output): New function.
19695
19696 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19697 arg a frame.
19698
19699 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19700 Set window_system.
19701 (x_set_tool_bar_lines): Don't use updating_frame.
19702 (Fx_create_frame): Set terminal and ref count.
19703 (Fx_open_connection): Remove window-system check.
19704
19705 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19706
19707 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19708 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19709 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19710 Add frame arg.
19711 (x_delete_terminal, w32_create_terminal): New functions.
19712 (w32_term_init): Create a terminal.
19713 (w32_initialize): Move terminal specific initialization to
19714 w32_create_terminal.
19715
19716 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19717 (w32_clear_rect, w32_clear_area): Use background from frame.
19718 (w32_display_info): Add terminal.
19719 (w32_sys_ring_bell, x_delete_display): Declare here.
19720
19721 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19722
19723 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19724
197252007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19726
19727 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19728 Fix get_named_tty calls for the controlling tty.
19729
197302007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19731
19732 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19733
197342007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19735
19736 * term.c (tty_insert_glyphs): Add missing first parameter.
19737
197382007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19739
19740 * buffer.c (Fbuffer_list, Fbury_buffer):
19741 Take frame->buried_buffer_list into account.
19742
19743 * cm.c (current_tty): New variable, for cmputc().
19744 (cmputc): Use it.
19745 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19746 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19747 (cmgoto): Add tty parameter. Pass it on to calccost().
19748 Use emacs_tputs() instead of tputs().
19749
19750 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19751 tputs().
19752 (current_tty): New variable, for cmputc().
19753 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19754
19755 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19756 (internal_condition_case, internal_condition_case_1)
19757 (internal_condition_case_2): Don't abort when x_catching_errors.
19758
19759 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19760 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19761 prevent crashes caused by bogus longjmps in read_char.
19762
19763 * keymap.h (Fset_keymap_parent): Add EXFUN.
19764
19765 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19766 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19767 Remove redundant definition.
19768
19769 * macfns.c (x_set_mouse_color, x_make_gc):
19770 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19771
19772 * w32term.c (x_free_frame_resources):
19773 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19774 (w32_initialize): Use the accessor macros for terminal characteristics.
19775
19776 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19777 Use the accessor macros for terminal characteristics.
19778 * msdos.c (internal_terminal_init): Use the accessor macros for
19779 terminal characteristics.
19780 (ScreenVisualBell, internal_terminal_init):
19781 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19782
19783 * termopts.h (no_redraw_on_reenter): Declare.
19784
19785 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19786 (mark_terminals, mark_ttys): Declare.
19787 (Fgarbage_collect): Call them.
19788 (mark_object): Mark buried_buffer_list.
19789
19790 * prefix-args.c: Include stdlib.h for exit.
19791
19792 * syssignal.h: Add comment.
19793
19794 * indent.c: Include stdio.h.
19795
19796 * window.h (Vinitial_window_system): Declare.
19797 (Vwindow_system): Delete declaration.
19798
19799 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19800
19801 * image.c (lookup_image): Don't initialize `c' until the xasserts
19802 have been run.
19803
19804 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19805 FRAME_FOREGROUND_PIXEL.
19806
19807 * print.c (print_preprocess): Don't lose print_depth levels while
19808 iterating.
19809
19810 * widget.c (update_from_various_frame_slots):
19811 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19812
19813 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19814 frames.
19815 (window_internal_height): Remove bogus make_number call.
19816 (init_window_once): Call make_terminal_frame with two zero parameters.
19817
19818 * fileio.c (Fread_file_name): Update comment.
19819
19820 * callint.c (Fcall_interactively):
19821 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19822 Make sure it is correctly unwound.
19823
19824 * xsmfns.c (x_session_close): New function.
19825
19826 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19827 Delete declarations.
19828
19829 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19830 (x_output): Remove background_pixel and foreground_pixel fields.
19831 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19832 (x_delete_device, x_session_close): Declare.
19833
19834 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19835 (read_filtered_event): Call `read_char' with a local
19836 `wrong_kboard_jmpbuf'.
19837
19838 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19839 Don't call single_kboard_state. Use FRAME_RIF.
19840
19841 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19842 systems.
19843
19844 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19845 (Fframe_with_environment, Fset_input_meta_mode)
19846 (Fset_quit_char): EXFUN.
19847 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19848 (init_sys_modes, reset_sys_modes): Update prototypes.
19849 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19850
19851 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19852 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19853 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19854 Delete declarations.
19855 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19856 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19857 New declarations.
19858
19859 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19860 already does that during init_display(). Call syms_of_keymap
19861 before syms_of_keyboard. Call `syms_of_terminal'.
19862 Call set_initial_environment, not set_process_environment.
19863 (shut_down_emacs): Call reset_all_sys_modes() instead of
19864 reset_sys_modes().
19865
19866 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19867 (internal_resolve_face_name, resolve_face_name_error): New functions.
19868 (resolve_face_name): Protect against loops and errors thrown by Fget.
19869 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19870 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19871
19872 * scroll.c: Replace CURTTY() with local variables throughout the
19873 file (where applicable).
19874 (calculate_scrolling, calculate_direct_scrolling)
19875 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19876 characteristics.
19877
19878 * keymap.c (Vfunction_key_map): Remove.
19879 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19880 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19881 (Vkey_translation_map): Remove.
19882 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19883 (Fdescribe_buffer_bindings)
19884 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19885 Update for terminal-local key-translation-map.
19886
19887 * Makefile.in (callproc.o): Update dependencies.
19888 (lisp, shortlisp): Add termdev.elc.
19889 (obj): Add terminal.o.
19890 (terminal.o): Add dependencies.
19891 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19892 (data.o, fns.o): Add termhooks.h dependency.
19893 (SOME_MACHINE_LISP): Add dnd.elc.
19894 (minibuf.o): Fix typo.
19895 Update dependencies.
19896
19897 * data.c (do_symval_forwarding, store_symval_forwarding)
19898 (find_symbol_value): Use the selected frame's keyboard, not
19899 current_kboard.
19900
19901 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19902 Vwindow_system.
19903
19904 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19905 Fmenu_bar_open.
19906 (syms_of_xmenu): Update defsubr.
19907 (mouse_position_for_popup, Fx_popup_menu)
19908 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19909 (set_frame_menubar, free_frame_menubar)
b97439ce 19910 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
19911 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19912 an X frame.
19913
19914 * xselect.c (x_own_selection): Abort if not an X frame.
19915 (some_frame_on_display): Check if it is an X frame.
19916 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19917
19918 * coding.c: Include frame.h and termhooks.h.
19919 (terminal_coding, keyboard_coding): Delete.
19920 (Fset_terminal_coding_system_internal)
19921 (Fset_keyboard_coding_system_internal)
19922 (Fkeyboard_coding_system)
19923 (Fterminal_coding_system): Add a terminal parameter.
19924 Get terminal_coding from the terminal.
19925 (init_coding_once): Don't call setup_coding_system here.
19926
19927 * dispextern.h (set_scroll_region, turn_off_insert)
19928 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19929 (tty_clear_end_of_line, tty_setup_colors)
19930 (delete_tty, updating_frame)
19931 (produce_special_glyphs, produce_glyphs, write_glyphs)
19932 (insert_glyphs): Remove.
19933 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19934 (tty_turn_off_highlight, get_tty_size): Add declaration.
19935 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19936
19937 * frame.h (enum output_method): Add output_initial.
19938 (struct x_output): Delete.
19939 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19940 Access foreground_pixel and background_pixel directly from the frame.
19941 (tty_display): Delete.
19942 (struct frame): Add buried_buffer_list, foreground_pixel,
19943 background_pixel and terminal. Delete kboard.
19944 (union output_data): Add tty.
19945 (FRAME_KBOARD): Get the kboard from the terminal.
19946 (FRAME_INITIAL_P): New macro.
19947 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19948 (Qterm_environment_variable, Qdisplay_environment_variable)
19949 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19950 New declarations.
19951
19952 * termchar.h (tty_output, tty_display_info): New structures.
19953 (tty_list): Declare.
19954 (FRAME_TTY, CURTTY): New macros.
19955 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19956 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19957 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19958 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19959
19960 * callproc.c: Include frame.h and termhooks.h, for terminal
19961 parameters.
19962 (add_env): New function.
19963 (child_setup): Use it.
19964 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19965 (getenv_internal): Fix get_terminal_param call.
19966 (Fgetenv_internal, egetenv): Update doc.
19967 (syms_of_callproc): Initialize Vprocess_environment to nil.
19968 Register and initialize them. Remove obsolete defvars. Update doc
19969 strings.
19970 (child_setup): Handle Vlocal_environment_variables.
19971 (getenv_internal): Add terminal parameter.
19972 Handle Vlocal_environment_variables.
19973 (Fgetenv_internal): Add terminal parameter.
19974 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19975 environment in a frame (not terminal) parameter. Update doc strings.
19976 (set_initial_environment): Rename from set_global_environment.
19977 Store Emacs environment in initial frame parameter.
19978
19979 * xdisp.c (redisplay_internal): Update references to
19980 `previous_terminal_frame'.
19981 (display_mode_line, Fformat_mode_line): Replace calls to
19982 `push_frame_kboard' with `push_kboard'.
19983 (get_glyph_string_clip_rects): Add extra parentheses and
19984 braces to prevent compiler warnings.
19985 (calc_pixel_width_or_height): Add xassert to check that the
19986 frame is alive. Don't call `lookup_image' on a termcap frame.
19987 (message2_nolog, message3_nolog, redisplay_internal)
19988 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19989 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19990 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19991 (Fx_display_pixel_width, Fx_display_pixel_height)
19992 (Fx_display_planes, Fx_display_color_cells)
19993 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19994 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
19995 (Fx_display_backing_store, Fx_display_visual_class)
19996 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
19997 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
19998
19999 * xfns.c (x_set_foreground_color x_set_background_color)
20000 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
20001 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20002 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
20003 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
20004 terminal that is being deleted.
20005 (Fx_create_frame): Use `store_frame_param' to set `window-system'
20006 frame parameter, and make sure it overrides any user-supplied setting.
20007 (Fx_close_connection, Fx_synchronize): Unify argument names with
20008 the rest of the DEFUNs.
20009
20010 * dispnew.c (Fsend_string_to_terminal): Update call to
20011 `get_tty_terminal'.
20012 (Fredraw_frame, Fsend_string_to_terminal)
20013 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
20014 FRAME_TERMCAP_P and FRAME_TTY.
20015 (window_change_signal): Don't believe width/height values that are
20016 impossibly small.
20017 (Vinitial_window_system): Rename from Vwindow_system.
20018 (termscript, Wcm, rif): Delete.
20019
20020 * termhooks.h (struct terminal): New struct containing the
20021 previously global text display hooks and new members NAME,
20022 DELETED and PARAM_ALIST.
20023 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
20024 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
20025 (FRAME_RIF): New macros.
20026 (get_terminal_param, get_device): New declarations.
20027 (termscript): Delete declaration.
20028
20029 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
20030 (XTflash, x_free_frame_resources, x_scroll_bar_create)
20031 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
20032 FRAME_FOREGROUND_PIXEL.
20033 (x_fully_uncatch_errors): Disable definition.
20034 (x_scroll_bar_expose): Fix reference to foreground pixel.
20035 (XTread_socket): Disable loop on all X displays.
20036 (x_delete_terminal): Don't set terminal->deleted and let
20037 delete_terminal delete the frames on the terminal.
20038 (x_delete_display): Doc update to reflect changes in
20039 delete_terminal.
20040 (x_display_info) <terminal>: Move member earlier in the struct.
20041 (deleting_tty): Remove old variable.
20042 (Fsuspend_tty): Call clear_tty_hooks.
20043 (Fresume_tty, init_tty): Call set_tty_hooks.
20044 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
20045 errors on X frames.
20046 (x_catch_errors_unwind): Abort if x_error_message is NULL.
20047 (handle_one_xevent): Initialize `f' to NULL.
20048 (x_delete_terminal, x_create_terminal): New functions.
20049 (XTset_terminal_modes, XTreset_terminal_modes)
20050 (XTread_socket, x_connection_closed, x_term_init)
20051 (x_term_init, x_delete_display): Add terminal parameter.
20052 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
20053 X connections.
20054
20055 * frame.c: Include termchar.h.
20056 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
20057 (Qwindow_system, Qenvironment, Qterm_environment_variable)
20058 (Qdisplay_environment_variable): New vars.
20059 (Fframep): Deal with output_initial.
20060 (Fframe-live-p): Doc fix.
20061 (Fwindow-system): New function.
20062 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
20063 (make_terminal_frame): Don't create frames on a terminal that is
20064 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20065 (store_frame_param): Check for found_for_frame before calling XFRAME.
20066 (Fmake_terminal_frame): Handle NULL tty names correctly.
20067 (syms_of_frame): Enhance doc string of `default-frame-alist'.
20068 (Fdelete_frame): Remove unused variable `count'. Don't allow other
20069 frames to refer to a deleted frame in their 'environment parameter.
20070 (Fframe_with_environment): New function.
20071 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
20072 (get_future_frame_param): New function.
20073 (Fmake_terminal_frame): Use it.
20074 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
20075
20076 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
20077 * sysdep.c (reset_sys_modes): Update for renames.
20078
20079 * keyboard.c (tty_read_avail_input): New function.
20080 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
20081 (syms_of_keyboard): Defsubr them.
20082 (Fset_input_meta_mode, Fset_quit_char): New functions.
20083 (Fset_input_mode): Split to above functions.
20084 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
20085 parameter. Use it in call to `read_char'.
20086 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
20087 Set wrong_kboard_jmpbuf correctly in recursive calls.
20088 Use current_kboard to access Vkeyboard_translate_table.
20089 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
20090 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
20091 Update longjmp invocations. Remember the original current_kboard,
20092 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
20093 changes it. Comment out unnecessary calls to
20094 `record_single_kboard_state' and `any_kboard_state'.
20095 Update recursive calls.
20096 (wrong_kboard_jmpbuf): Remove global variable.
20097 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
20098 Handle deleted interrupted_kboards correctly; that is a legal
20099 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
20100 and read_char calls. Abort if interrupted_kboard died in read_char.
20101 (any_kboard_state, single_kboard_state)
20102 (push_frame_kboard): Remove function.
20103 (pop_kboard): Switch out of single_kboard mode if the kboard has
20104 been deleted. Remove unused variable. Help debugging by not
20105 changing current_kboard unnecessarily. Set current_kboard to the
20106 kboard of the selected frame when the stored kboard object has
20107 been deleted before pop_kboard.
20108 (temporarily_switch_to_single_kboard): Change first parameter to a
20109 frame pointer. Throw an error when caller wants to change kboards
20110 while in single_kboard mode. Don't push_kboard if we weren't in
20111 single kboard state. Don't pop_kboard if we popped into any
20112 kboard state.
20113 (restore_kboard_configuration): Abort if pop_kboard changed the
20114 kboard in single_kboard mode. Call pop_kboard only after setting
20115 up single_kboard mode.
20116 (Frecursive_edit): Switch to single_kboard mode only in nested
20117 command loops.
20118 (cmd_error, command_loop, command_loop_1, timer_check):
20119 Comment out unnecessary call to `any_kboard_state' and
20120 `record_single_kboard_state'.
20121 (delete_kboard): Exit single_kboard mode if we have just deleted
20122 that kboard. Use FRAME_KBOARD.
20123 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
20124 `fatal_error_signal'.
20125 (record_single_kboard_state): Don't push_kboard if we weren't in
20126 single kboard state. Don't pop_kboard if we popped into any
20127 kboard state.
20128 (push_frame_kboard): Rename to push_kboard.
20129 (kbd_buffer_get_event): Use FRAME_TERMINAL.
20130 (read_avail_input): Read input from all terminals.
20131 (mark_kboards): Also mark Vkeyboard_translate_table.
20132 (kbd_buffer_store_event_hold): Simplify condition.
20133 (read_key_sequence): Reinitialize fkey and keytran at each replay.
20134 (Vkeyboard_translate_table): Move to struct kboard.
20135 (init_kboard): Initialize Vkeyboard_translate_table.
20136 (syms_of_keyboard): Use DEFVAR_KBOARD to define
20137 Vkeyboard_translate_table. Update doc strings. Update docs of
20138 local-function-key-map and function-key-map.
20139
20140 * terminal.c: New file.
20141
20142 * term.c: Include errno.h.
20143 (Vring_bell_function, device_list, initial_device)
20144 (next_device_id, ring_bell, update_begin, update_end)
20145 (set_terminal_window, cursor_to, raw_cursor_to)
20146 (clear_to_end, clear_frame, clear_end_of_line)
20147 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
20148 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
20149 (syms_of_term): Move their initialization to terminal.c.
20150 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
20151 (Ftty_display_color_cells)
20152 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
20153 (clear_tty_hooks, set_tty_hooks)
20154 (init_tty, maybe_fatal): New functions.
20155 (Ftty_type): Return nil if terminal is not on a tty instead of
20156 throwing an error. Doc update.
20157 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
20158 Doc update. Initialize new subrs and variables.
20159 (delete_tty): Use terminal->deleted.
20160 (tty_set_terminal_modes): Rename from set_terminal_modes.
20161 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
20162 (set_scroll_region): Rename to `tty_set_scroll_region'.
20163 (turn_on_insert): Rename to `tty_turn_on_insert'.
20164 (turn_off_insert): Rename to `tty_turn_off_insert'.
20165 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
20166 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
20167 (toggle_highligh): Rename to `tty_toggle_highlight'.
20168 (background_highlight): Rename to `tty_background_highlight'.
20169 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
20170 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
20171 (tty_set_scroll_region, tty_background_highlight)
20172 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
20173 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
20174 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
20175 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
20176 Add static modifier.
20177 (tty_reset_terminal_modes, tty_set_terminal_window)
20178 (tty_set_scroll_region, tty_background_highlight)
20179 (tty_highlight_if_desired, tty_cursor_to)
20180 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
20181 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
20182 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
20183 renames.
20184
201852007-08-28 Jan Djärv <jan.h.d@swipnet.se>
20186
20187 * keyboard.c: Qrtl is new.
20188 (parse_tool_bar_item): Handle :rtl keyword.
20189 (syms_of_keyboard): Intern :rtl keyword.
20190
20191 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
20192
20193 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
20194 so no Lisp code is executed.
20195 (file_for_image, find_rtl_image): New functions.
20196 (xg_get_image_for_pixmap): Use file_for_image.
20197 (update_frame_tool_bar): If direction is RTL, use RTL image if
20198 defined. Use Gtk stock images if defined.
20199
202002007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20201
20202 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
20203 for nonexistent or zero-width glyph in composition glyph.
20204
202052007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
20206
20207 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
20208
20209 * xdisp.c (Finvisible_p): New function.
20210 (syms_of_xdisp): defsubr it.
20211
202122007-08-24 Juanma Barranquero <lekktu@gmail.com>
20213
20214 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
20215 Doc fixes.
20216
202172007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20218
20219 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
20220
202212007-08-24 Martin Rudalics <rudalics@gmx.at>
20222
20223 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
20224 whether decoding has modified buffer contents.
20225
202262007-08-24 Jason Rumney <jasonr@gnu.org>
20227
20228 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
20229 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
20230 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
20231 (init_svg_functions) [HAVE_NTGUI]: New function.
20232 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
20233 (svg_load_image): Use them.
20234 (svg_load_image) [HAVE_NTGUI]: Implement background.
20235
202362007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20237
20238 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
20239 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
20240 (LIBX): Remove @RSVG_LIBS@.
20241 (LIBES): Add $(RSVG_LIBS).
20242
20243 * image.c (svg_load_image): Blend with specified background if exists.
20244 Use IMAGE_BACKGROUND. Add Mac OS Support.
20245
20246 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
20247 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
20248 Remove macros.
20249 [MAC_OSX] (socket_callback): Do nothing.
20250 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
20251 ReceiveNextEvent.
20252 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
20253 socket_callback.
20254 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
20255
202562007-08-22 Glenn Morris <rgm@gnu.org>
20257
20258 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
20259
202602007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
20261
20262 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
20263
20264 * image.c: Add support for SVG images. Some additional comments
20265 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
20266 (svg_image_p): New function to test for SVG image.
20267 (svg_load): New function to load SVG image.
20268 (svg_load_image): New function, helper for svg_load.
20269 (Qsvg): New Lisp_object.
20270 (svg_keyword_index): New enum.
20271 (svg_format): New static `image_keyword' struct.
20272 (svg_type): New static `image_type' struct.
20273 (librsvg/rsvg.h): Include it.
20274
202752007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
20276
20277 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
20278
202792007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
20280
20281 * lread.c (Qold_style_backquotes): New var.
20282 (syms_of_lread): Init and staticpro it.
20283 (load_warn_old_style_backquotes): New fun.
20284 (Fload): Use them to warn about old style backquotes.
20285 (end_of_file_error, Fload): Remove unused vars.
20286
20287 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
20288
20289 * lread.c (Vold_style_backquotes): New var.
20290 (syms_of_lread): Init and export it to Elisp.
20291 (read1): Set it when we find an old-style (back)quote.
20292
202932007-08-22 Jason Rumney <jasonr@gnu.org>
20294
20295 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
20296
202972007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
20298
20299 * puresize.h (BASE_PURESIZE): Increase to 1140000.
20300
203012007-08-19 Richard Stallman <rms@gnu.org>
20302
20303 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
20304
203052007-08-19 Andreas Schwab <schwab@suse.de>
20306
20307 * alloc.c (pure): Round PURESIZE up.
20308
203092007-08-17 Jan Djärv <jan.h.d@swipnet.se>
20310
20311 * xterm.c (handle_one_xevent): Remove check that mouse click is in
20312 active frame.
20313
203142007-08-16 Richard Stallman <rms@gnu.org>
20315
20316 * eval.c (Fcommandp): Add parens to clarify.
20317
20318 * minibuf.c (Fall_completions): Use enum for type of table.
20319
20320 * emacs.c (USAGE2): Improve text.
20321
203222007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
20323
20324 * term.c (tty_default_color_capabilities): Declare static
20325 variables in file scope, to avoid HPUX compiler problem.
20326
203272007-08-13 Jan Djärv <jan.h.d@swipnet.se>
20328
20329 * gtkutil.c (update_frame_tool_bar): Use -1 as index
20330 to gtk_toolbar_insert.
20331
203322007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
20333
20334 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
20335
20336 * insdel.c (reset_var_on_error): New fun.
20337 (signal_before_change, signal_after_change):
20338 Use it to reset (after|before)-change-functions to nil in case of error.
20339 Bind inhibit-modification-hooks to t.
20340 Don't bind (after|before)-change-functions to nil while they run.
20341
203422007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20343
20344 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
20345 filling pixmap with stippled background.
20346
203472007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20348
20349 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
20350 Don't use invisible frame as parent window for repositioning.
20351
203522007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
20353
20354 * print.c (new_backquote_output): Rename from old_backquote_output.
20355 (print): Inverse its logic (according to its name) so as to match the
20356 behavior of new_backquote_flag in lread.c.
20357
203582007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20359
20360 * gmalloc.c (posix_memalign): New function.
20361
20362 * macterm.c (frame_highlight, frame_unhighlight): Don't call
20363 ActivateControl/DeactivateControl here.
20364 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
20365 frame-notice-user-settings is non-nil.
20366 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
20367 for kEventParamFMFontStyle.
20368 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
20369 mac_pass_command_to_system and mac_pass_control_to_system here.
20370 (XTread_socket): Call ActivateControl/DeactivateControl here.
20371 (XTread_socket) [TARGET_API_MAC_CARBON]:
20372 Check mac_pass_command_to_system and mac_pass_control_to_system here.
20373 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
20374 for window repositioning.
20375
203762007-08-08 Glenn Morris <rgm@gnu.org>
20377
20378 * Replace `iff' in doc-strings and comments.
20379
203802007-08-07 Chong Yidong <cyd@stupidchicken.com>
20381
20382 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
20383
203842007-08-07 Martin Rudalics <rudalics@gmx.at>
20385
20386 * fileio.c (Finsert_file_contents): Run format-decode and
20387 after_insert_file_functions on entire buffer when REPLACE is
20388 non-nil and inhibit modification_hooks and point_motion_hooks.
20389 For consistency, run after_insert_file_functions iff something
20390 got inserted. Move signal_after_change and update_compositions
20391 after code running after_insert_file_functions. Make sure that
20392 undo_list doesn't record intermediate steps of the decoding process.
20393
203942007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20395
20396 * emacs.c (main)
20397 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20398 Call malloc_enable_thread on interactive startup.
20399
20400 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20401 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20402 [USE_PTHREAD]: Conditionalize with it.
20403 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20404 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20405 New functions.
20406
204072007-08-06 Chong Yidong <cyd@stupidchicken.com>
20408
20409 * xdisp.c (redisplay_window): When restoring original buffer
20410 position, make sure it is still valid.
20411
20412 * image.c (png_load): Ignore png-supplied background color.
20413
204142007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20415
20416 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20417 Use kCFAbsoluteTimeIntervalSince1970.
20418
20419 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20420 New variable.
20421 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20422 event loop should be quit.
20423 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20424 Quit dialog event loop if quit_dialog_event_loop is set.
20425
20426 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20427 (Selection): New typedef. Use instead of ScrapRef.
20428 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20429 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20430 (mac_clear_selection): Rename from clear_scrap.
20431 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20432 scrap_has_target_type. All uses changed.
20433 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20434 (mac_selection_has_target_p): New functions.
20435 (mac_put_selection_value): Rename from put_scrap_string.
20436 (mac_get_selection_value): Rename from get_scrap_string.
20437 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20438 (put_scrap_private_timestamp, scrap_has_target_type)
20439 (get_scrap_private_timestamp): Remove functions.
20440 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20441 (x_own_selection, x_get_local_selection):
20442 Use mac_valid_selection_value_p.
20443 (x_own_selection): Don't use put_scrap_private_timestamp.
20444 Record OWNERSHIP-INFO into Vselection_alist instead.
20445 (x_get_local_selection): Don't check type if request is local.
20446 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20447 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20448
204492007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20450
20451 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20452 add comment explaining why.
20453
204542007-08-03 Richard Stallman <rms@gnu.org>
20455
20456 * fileio.c (Fvisited_file_modtime): Use make_time.
20457
204582007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20459
20460 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20461 build.
20462
204632007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20464
20465 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20466
204672007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20468
20469 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20470
204712007-07-30 Richard Stallman <rms@gnu.org>
20472
20473 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20474
204752007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20476
20477 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20478
204792007-07-28 Nick Roberts <nickrob@snap.net.nz>
20480
20481 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20482 remote default-directory.
20483
20484 * buffer.c (mode-line-format): Update doc string.
20485
204862007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20487
20488 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20489 scroll bar gap.
20490 (x_scroll_bar_create): Set bar->fringe_extended_p.
20491 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20492 on frame edge. Check fringe background extension. Don't clear
20493 extended fringe background area.
20494
20495 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20496 (w32_fill_area): Enclose multiple statements with do ... while (0).
20497
20498 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20499 Extend fringe background to scroll bar gap.
20500 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20501 Set bar->fringe_extended_p.
20502 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20503 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20504 background extension. Don't clear extended fringe background area.
20505
20506 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20507 New member fringe_extended_p.
20508
205092007-07-25 Glenn Morris <rgm@gnu.org>
20510
20511 * Relicense all FSF files to GPLv3 or later.
20512
20513 * COPYING: Switch to GPLv3.
20514
205152007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20516
20517 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20518
20519 * data.c (Finteractive_form): Check for the presence of an
20520 `interactive-form' symbol property more thoroughly.
20521
20522 * data.c (Finteractive_form): Use an `interactive-form' property if
20523 present, analogous to the function-documentation property.
20524
205252007-07-24 Jason Rumney <jasonr@gnu.org>
20526
20527 * w32fns.c (x_real_positions): Get real position from OS instead of
20528 calculating it.
20529
205302007-07-23 Jason Rumney <jasonr@gnu.org>
20531
20532 * filelock.c (current_lock_owner): Allow for @ sign in username.
20533
205342007-07-22 Nick Roberts <nickrob@snap.net.nz>
20535
20536 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20537 remote default-directory.
20538
20539 * buffer.c (mode-line-format): Describe above case in doc string.
20540
205412007-07-20 Eli Zaretskii <eliz@gnu.org>
20542
20543 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20544 Define if not defined.
20545
205462007-07-18 Jason Rumney <jasonr@gnu.org>
20547
20548 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20549
205502007-07-18 Richard Stallman <rms@gnu.org>
20551
20552 * data.c (Fsetq_default): Doc fix.
20553
20554 * eval.c (Fsetq): Doc fix.
20555
205562007-07-18 Juanma Barranquero <lekktu@gmail.com>
20557
20558 * coding.c (Ffind_operation_coding_system):
20559 * eval.c (For, Fand): Doc fixes.
20560 Reported by Johan Bockgård.
20561
205622007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20563
20564 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20565
20566 * xterm.h: Declare x_ewmh_activate_frame.
20567
20568 * xterm.c (x_ewmh_activate_frame): New function.
20569 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20570
205712007-07-17 Martin Rudalics <rudalics@gmx.at>
20572
20573 * window.c (Fdisplay_buffer): If largest or LRU window is the
20574 only window, split it even if it is not eligible for splitting.
20575 This restores the original behavior broken by the 2007-07-15
20576 change.
20577
205782007-07-17 Glenn Morris <rgm@gnu.org>
20579
20580 * abbrev.c (abbrev_check_chars): New function.
20581 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20582 Call abbrev_check_chars to check abbrev characters are word
20583 constituents. Doc fix.
20584
205852007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20586
20587 * process.c (Fstart_process, Fmake_network_process)
20588 (read_process_output): Fix up last changes.
20589
205902007-07-16 Eli Zaretskii <eliz@gnu.org>
20591
20592 * makefile.w32-in (clean): Don't delete *~.
20593
205942007-07-16 Andreas Schwab <schwab@suse.de>
20595
20596 * window.c (Fdisplay_buffer): Use NILP.
20597 (Fset_window_scroll_bars): Likewise.
20598
205992007-07-15 Martin Rudalics <rudalics@gmx.at>
20600
20601 * window.c (window_min_size_2): New function.
20602 (window_min_size_1, size_window, Fdisplay_buffer)
20603 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20604 windows without mode- or header-lines when window-min-height is
20605 too small.
20606 (size_window): Reset nodelete_p after testing it, following an
20607 earlier note by Kim F. Storm.
20608 (display_buffer): Do not set split_height_threshold to twice the
20609 value of window_min_height to avoid changing the value of a
20610 customizable variable. Rather explicitly check whether the
20611 height of the window that shall be splitted is at least as large
20612 as split_height_threshold.
20613 (Fwindow_full_width_p): New defun.
20614 (syms_of_window): Defsubr it.
20615
20616 * window.h: Add EXFUN for Fwindow_full_width_p.
20617
206182007-07-14 Jason Rumney <jasonr@gnu.org>
20619
20620 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20621
206222007-07-14 Richard Stallman <rms@gnu.org>
20623
20624 * eval.c (maybe_call_debugger): New function.
20625 (find_handler_clause): Use maybe_call_debugger.
20626 Call it when the handler says `debug'.
20627 Eliminate DEBUGGER_VALUE_PTR.
20628 (Fsignal): Eliminate debugger_value.
20629 (Qdebug): New variable.
20630 (syms_of_eval): Initialize it.
20631
206322007-07-14 Juanma Barranquero <lekktu@gmail.com>
20633
20634 * eval.c (Fprogn):
20635 * keyboard.c (Ftrack_mouse):
20636 * print.c (Fwith_output_to_temp_buffer):
20637 * window.c (Fsave_window_excursion): Doc fix.
20638
206392007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20640
20641 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20642
206432007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20644
20645 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20646 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20647 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20648 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20649 Remove unused encoding_carryover.
20650 * process.c: Adjust all functions accordingly.
20651
206522007-07-12 Richard Stallman <rms@gnu.org>
20653
20654 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20655
206562007-07-11 Jason Rumney <jasonr@gnu.org>
20657
20658 * makefile.w32-in (LIBS): Include OLE32.
20659
20660 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20661 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20662
206632007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20664
20665 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20666 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20667 from a Lisp_Object into a bare pointer.
20668 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20669 Adjust the code correspondingly.
20670
20671 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20672
20673 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20674 (term_show_mouse_face): Remove unused var `j'.
20675 (handle_one_term_event): Remove unused vars `i' and `j'.
20676 Don't cast return value of ttyname since it's not necessary.
20677
206782007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20679
20680 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20681 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20682
20683 * fns.c (map_char_table): Use an array of int for `indices' rather than
20684 an array of Lisp_Objects (which are only ever integers anyway).
20685 (Fmap_char_table): Update caller.
20686 * lisp.h: Update prototype.
20687 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20688 * fontset.c (Ffontset_info):
20689 * casetab.c (set_case_table): Update callers.
20690
20691 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20692
20693 * keymap.c (struct accessible_keymaps_data)
20694 (struct where_is_internal_data): New structures.
20695 (accessible_keymaps_1, where_is_internal_1): Use them to change
20696 interface to adhere to the one used by map_keymap.
20697 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20698 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20699
20700 * keymap.h (map_keymap_function_t): More informative prototype.
20701
207022007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20703
20704 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20705 (looking_at_1): Don't change search_regs and last_thing_searched
20706 if `inhibit-changing-match-data' is non-nil.
20707 (string_match_1, search_buffer, set_search_regs): Likewise.
20708 (syms_of_search): Add Lisp level definition for
20709 `inhibit-changing-match-data' and set it to nil.
20710 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20711 start and end of the match, instead of using values in search_regs.
20712
207132007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20714
20715 * minibuf.c (Fcompleting_read): New value `confirm-only'
20716 for `require-match'.
20717
207182007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20719
20720 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20721 part of the 2007-06-27 change to syms_of_fileio.
20722
207232007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20724
20725 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20726 Check WINDOWP before using XWINDOW. Consolidate return statements.
20727
207282007-06-27 Richard Stallman <rms@gnu.org>
20729
20730 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20731
207322007-06-27 Juanma Barranquero <lekktu@gmail.com>
20733
20734 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20735
207362007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20737
20738 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20739 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20740 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20741 (_free_internal, memalign): Use them.
20742 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20743 Initialize to PTHREAD_MUTEX_INITIALIZER.
20744 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20745 (morecore_nolock): Rename from morecore. All uses changed.
20746 Use only nolock versions of internal allocation functions.
20747 (_malloc_internal_nolock, _realloc_internal_nolock)
20748 (_free_internal_nolock): New functions created from
20749 _malloc_internal, _realloc_internal, and _free_internal.
20750 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20751 Copy hook value to automatic variable before its use.
20752 (memalign): Copy hook value to automatic variable before its use.
20753
207542007-06-26 Kenichi Handa <handa@m17n.org>
20755
20756 * coding.c (Ffind_operation_coding_system): Docstring improved.
20757 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20758
207592007-06-25 David Kastrup <dak@gnu.org>
20760
20761 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20762 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20763 cater for additional parameter.
20764
20765 * keymap.h: Adjust number of parameters to `current-active-maps'.
20766
20767 * doc.c (Fsubstitute_command_keys): Adjust call of
20768 `current-active-maps'.
20769
207702007-06-25 David Kastrup <dak@gnu.org>
20771
20772 * callint.c (Fcall_interactively): Make the parsing of interactive
20773 specs somewhat more readable.
20774
207752007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20776
20777 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20778 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20779 if extended background has already been filled.
20780
207812007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20782
20783 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20784 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20785
20786 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20787 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20788 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20789 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20790 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20791 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20792 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20793 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20794 Run timers during dialog popup.
20795 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20796
207972007-06-21 Jason Rumney <jasonr@gnu.org>
20798
20799 * image.c (convert_mono_to_color_image): Swap fore and background.
20800
208012007-06-20 Jason Rumney <jasonr@gnu.org>
20802
20803 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20804 (w32_free_bdf_font): Unmap memory not handle.
20805
208062007-06-20 Sam Steingold <sds@gnu.org>
20807
20808 * gmalloc.c (__morecore): Fix the declaration to comply with the
20809 definition.
20810
208112007-06-20 Juanma Barranquero <lekktu@gmail.com>
20812
20813 * w32term.c (w32_delete_display): Remove leftover declaration.
20814 (w32_define_cursor, w32_initialize): Make static.
20815
20816 * w32.c (_wsa_errlist): Fix typo in error message.
20817 (init_environment): Ignore any environment variable from the
20818 registry having a null value.
20819
208202007-06-20 Glenn Morris <rgm@gnu.org>
20821
20822 * Makefile.in (LIBGIF): Default to -lgif.
20823
208242007-06-17 Jason Rumney <jasonr@gnu.org>
20825
20826 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20827 unicode strings.
20828
208292007-06-16 Juanma Barranquero <lekktu@gmail.com>
20830
20831 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20832 Fix typo in docstring.
20833
208342007-06-16 Eli Zaretskii <eliz@gnu.org>
20835
20836 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20837 and their keybindings.
20838
208392007-06-15 Chong Yidong <cyd@stupidchicken.com>
20840
20841 * composite.c (update_compositions): Fix last fix.
20842
208432007-06-14 Jason Rumney <jasonr@gnu.org>
20844
20845 * w32.c (get_process_times_fn): New function pointer.
20846 (globals_of_w32): Intialize it if present in kernel32.dll.
20847 (w32_get_internal_run_time): New function.
20848
20849 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20850
208512007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20852
20853 * composite.c (update_compositions): Check the validness of
20854 compositions.
20855
208562007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20857
20858 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20859 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20860
20861 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20862 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20863
20864 * macgui.h (USE_MAC_TOOLBAR): New define.
20865
20866 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20867 Return immediately unless popup is activated.
20868
20869 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20870 background to scroll bar gap.
20871 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20872 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20873 scroll bars on frame edge. Check fringe background extension.
20874 Don't clear extended fringe background area.
20875 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20876 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20877 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20878 [USE_MAC_TOOLBAR]: New macros.
20879 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20880 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20881 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20882 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20883 [USE_MAC_TOOLBAR]: New functions.
20884 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20885 manually if previous repositioning has failed.
20886 (mac_handle_keyboard_event): Use precomputed event kind.
20887 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20888 as tool bar item click. Handle mouse movement over tool bar items.
20889
20890 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20891 toolbar_win_gravity.
20892 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20893 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20894 Add externs.
20895
20896 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20897 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20898
208992007-06-14 Chong Yidong <cyd@stupidchicken.com>
20900
20901 * image.c (search_image_cache): Remove unused variable.
20902
209032007-06-13 Chong Yidong <cyd@stupidchicken.com>
20904
20905 * xfns.c, xmenu.c: Link to xaw3d if available.
20906
209072007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20908
20909 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20910 frame_foreground and frame_background.
20911
20912 * image.c (lookup_image): Save frame foreground and background colors.
20913 (search_image_cache): Check if saved and current frame colors match.
20914
209152007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20916
20917 * regex.c (regex_compile): Remove the `regnum' counter.
20918 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20919
209202007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20921
20922 * term.c: Include intervals.h to declare Fget_text_property.
20923
209242007-06-10 Jason Rumney <jasonr@gnu.org>
20925
20926 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20927
209282007-06-08 Juanma Barranquero <lekktu@gmail.com>
20929
20930 * callint.c (Fcall_interactively):
20931 * editfns.c (Fdelete_and_extract_region):
20932 * fileio.c (Fread_file_name):
20933 * fns.c (Fmapconcat):
20934 * keyboard.c (cmd_error_internal):
20935 * keymap.c (Fkey_description):
20936 * lread.c (openp):
20937 * minibuf.c (read_minibuf):
20938 * search.c (wordify):
20939 * sunfns.c (sel_read):
20940 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20941 * xfns.c (x_default_scroll_bar_color_parameter):
20942 * xmenu.c (menu_help_callback):
20943 * xselect.c (Fx_get_atom_name):
20944 * xterm.c (x_term_init): Use empty_unibyte_string.
20945
209462007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20947
20948 * alloc.c (init_strings): Initialize canonical empty strings.
20949 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20950 canonical empty string when the requested size is 0.
20951
20952 * emacs.c (empty_unibyte_string): Rename from empty_string.
20953 (empty_multibyte_string): New canonical empty string.
20954 (syms_of_emacs): Don't initialize empty_string.
20955
20956 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20957 string, if appropriate.
20958 (empty_unibyte_string, empty_multibyte_string): New externs.
20959 (empty_string): Remove extern.
20960
20961 * lread.c (syms_of_lread): Use empty_unibyte_string.
20962
209632007-06-07 Jason Rumney <jasonr@gnu.org>
20964
20965 * s/ms-w32.h: Don't define HAVE_TZNAME.
20966
20967 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20968
209692007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20970
20971 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20972
20973 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20974 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20975
20976 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20977 Don't call next handler.
20978 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20979 Remove argument. Install handler to application.
20980 (set_frame_menubar): Don't change deep_p.
20981 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20982 FRAME_OUTER_TO_INNER_DIFF_Y.
20983 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20984 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20985 [HAVE_DIALOGS]: New macros.
20986 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20987 Use them.
20988 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20989
20990 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20991 init_service_handler. All callers changed. Return OSStatus value.
20992
20993 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20994 All callers changed so as not to call SetPortWindowPort.
20995 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
20996 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
20997 mac_draw_string_common.
20998 (mac_draw_image_string_qd): Likewise.
20999 (mac_draw_string_common): Use them. Add INLINE.
21000 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
21001 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
21002 GetGlobalMouse.
21003 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
21004 and FRAME_OUTER_TO_INNER_DIFF_Y.
21005 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
21006 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
21007 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
21008 repositioning window to mac_handle_window_event.
21009 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
21010 saving window location to mac_handle_window_event
21011 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
21012 (install_menu_target_item_handler): Remove argument in extern.
21013 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
21014 Also accept command events.
21015 (do_keystroke): New function created from XTread_socket.
21016 (init_command_handler): Remove functions.
21017 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
21018 and save window location by kEventWindowShowing and kEventWindowHiding
21019 handlers here. Don't call next handler for window state change and
21020 focus events.
21021 (mac_handle_application_event, mac_handle_keyboard_event)
21022 [TARGET_API_MAC_CARBON]: New functions.
21023 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
21024 kEventWindowShowing and kEventWindowHiding events. Move installation
21025 of mouse, font, text input and menu target item handlers to
21026 install_application_handler.
21027 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
21028 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
21029 New function.
21030 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
21031 Register it.
21032 (XTread_socket) [TARGET_API_MAC_CARBON]:
21033 Consolidate SendEventToEventTarget calls.
21034 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
21035 Move application activation handler to mac_handle_application_event.
21036 Move keyboard handler to mac_handle_keyboard_event.
21037 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
21038 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
21039 init_command_handler. Call install_application_handler.
21040
21041 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
21042 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
21043
210442007-06-07 Glenn Morris <rgm@gnu.org>
21045
21046 * emacs.c (main): Use `emacs-copyright' in --version output.
21047
210482007-06-06 Chong Yidong <cyd@stupidchicken.com>
21049
21050 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
21051
210522007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21053
21054 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
21055
21056 * macgui.h: Replace WindowPtr with WindowRef.
21057
21058 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21059 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21060 Replace ControlHandle with ControlRef.
21061 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
21062
21063 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21064 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21065 Replace ControlHandle with ControlRef.
21066 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
21067 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
21068
21069 * macterm.h (struct scroll_bar): Rename member control_handle_low
21070 and control_handle_high to control_ref_low and control_ref_high.
21071 All uses changed.
21072 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
21073 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
21074 respectively. All uses changed.
21075 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
21076 (install_window_handler, remove_window_handler): Replace WindowPtr
21077 with WindowRef in externs.
21078
210792007-06-05 Juanma Barranquero <lekktu@gmail.com>
21080
21081 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
21082
210832007-06-03 Nick Roberts <nickrob@snap.net.nz>
21084
21085 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
21086
21087 * frame.c (Fmouse_position, Fmouse_pixel_position):
21088 Condition on HAVE_GPM too.
21089
21090 * term.c (term_mouse_highlight): Remove unused variables.
21091 (Fterm_open_connection): Set gpm_zerobased to 1.
21092 (term_mouse_movement, term_mouse_click, handle_one_term_event):
21093 Use zero based co-ordinates.
21094 (handle_one_term_event): Report a drag as mouse movement too.
21095
21096 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
21097
210982007-06-03 Chong Yidong <cyd@stupidchicken.com>
21099
21100 * image.c (search_image_cache): New function. Require background
21101 color match if background color is unspecified in the image spec.
21102 (uncache_image, lookup_image): Use it.
21103
211042007-06-01 Juanma Barranquero <lekktu@gmail.com>
21105
21106 * window.c (Fshrink_window): Reflow docstring.
21107
211082007-06-02 Chong Yidong <cyd@stupidchicken.com>
21109
21110 * Version 22.1 released.
21111
211122007-06-01 Richard Stallman <rms@gnu.org>
21113
21114 * xfns.c (x_encode_text): Add GCPRO.
21115
211162007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21117
21118 * xfns.c (x_set_name_internal): Save encoded name before
21119 x_encode_text in case string data is relocated.
21120
211212007-05-31 Richard Stallman <rms@gnu.org>
21122
21123 * buffer.c (syms_of_buffer): Doc fix.
21124
211252007-05-30 Nick Roberts <nickrob@snap.net.nz>
21126
21127 * sysdep.c (init_sys_modes): Add rather than replace with
21128 O_NONBLOCK.
21129
21130 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
21131 term_mouse_moveto.
21132
21133 * termhooks.h (term_mouse_moveto): New extern.
21134
21135 * term.c (mouse_face_window): Rename...
21136 (Qmouse_face_window): ...to this.
21137 (term_show_mouse_face, term_clear_mouse_face)
21138 (term_mouse_highlight): Use Qmouse_face_window.
21139 (term_mouse_moveto): New function.
21140 (term_mouse_position): Make it work.
21141 (syms_of_term): Uncomment assignment to mouse_position_hook.
21142 Staticpro Qmouse_face_window.
21143
211442007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21145
21146 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
21147 around current_column call.
21148
211492007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
21150
21151 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
21152 * xdisp.c (next_element_from_buffer):
21153 * window.c (delete_window):
21154 * term.c (term_mouse_highlight):
21155 * msdos.c (getdefdir):
21156 * macterm.c (mac_create_bitmap_from_bitmap_data)
21157 (init_font_name_table):
21158 * fns.c (Fsxhash):
21159 * data.c (Fmake_local_variable):
21160 * ccl.c (ccl_driver): Likewise.
21161
211622007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21163
21164 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
21165 Call mac_wakeup_from_rne on window size change.
21166
211672007-05-25 Chong Yidong <cyd@stupidchicken.com>
21168
21169 * image.c (uncache_image): Fix typo.
21170
211712007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
21172
21173 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
21174
211752007-05-22 Richard Stallman <rms@gnu.org>
21176
21177 * xterm.c (x_connection_closed): Remove NO_RETURN.
21178
211792007-05-22 Martin Rudalics <rudalics@gmx.at>
21180
21181 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
21182
211832007-05-21 Chong Yidong <cyd@stupidchicken.com>
21184
21185 * image.c (uncache_image): New function.
21186 (Fimage_refresh): New function.
21187
211882007-05-20 Jan Djärv <jan.h.d@swipnet.se>
21189
21190 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
21191
211922007-05-20 Nick Roberts <nickrob@snap.net.nz>
21193
21194 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
21195 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
21196
211972007-05-20 Nick Roberts <nickrob@snap.net.nz>
21198
21199 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
21200 conditional on [HAVE_GPM_H].
21201
212022007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
21203
21204 * syntax.c (skip_chars): Update syntax-table only after we checked that
21205 the new location is valid.
21206
212072007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21208
21209 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
21210 mac_get_window_bounds.
21211
212122007-05-20 Nick Roberts <nickrob@snap.net.nz>
21213
21214 * Makefile.in (LIBGPM): Allow it to be set from configure.
21215 If set then link Emacs with it.
21216
21217 * config.in: Regenerate.
21218
21219 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
21220 New externs.
21221
21222 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
21223 Include gpm.h.
21224 (handle_one_term_event, term_gpm): New externs.
21225
21226 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
21227 and allow it to be interrupted by SIGIO.
21228
21229 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
21230 (wait_reading_process_output): Wait on gpm_fd too.
21231 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
21232 (add_gpm_wait_descriptor_called_flag): New variable.
21233 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
21234
21235 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
21236 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
21237 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
21238 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
21239 (make_lispy_event): Add case GPM_CLICK_EVENT.
21240 (read_avail_input): Handle mouse input.
21241
21242 * term.c (write_glyphs_with_face): New function.
21243 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
21244 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
21245 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
21246 (mouse_face_face_id, term_gpm, pos_x, pos_y)
21247 (last_mouse_x, last_mouse_y): New variables.
21248 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
21249 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
21250 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
21251 (Fterm_close_connection): New functions.
21252 (term_init): Initialise mouse_face_window.
21253
212542007-05-19 Chong Yidong <cyd@stupidchicken.com>
21255
21256 * xdisp.c (redisplay_window): If first window line is a
21257 continuation line, recompute the new window start instead of
21258 recentering.
21259
212602007-05-18 Glenn Morris <rgm@gnu.org>
21261
21262 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
21263 Suggested by Alfred M. Szmidt <ams@gnu.org>.
21264
212652007-05-17 Glenn Morris <rgm@gnu.org>
21266
21267 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
21268
212692007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21270
21271 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
21272 dead key repeat and up events.
21273
212742007-05-14 Chong Yidong <cyd@stupidchicken.com>
21275
21276 * image.c (pbm_load): Check image size for monochrome pbm.
21277
212782007-05-13 Chong Yidong <cyd@stupidchicken.com>
21279
21280 * xterm.c (XTread_socket): Revert last change.
21281
212822007-05-12 Chong Yidong <cyd@stupidchicken.com>
21283
21284 * image.c (pbm_load): Correctly check image size for greyscale pbm.
21285
21286 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
21287
212882007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21289
21290 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
21291 mixup (YAILOM).
21292
212932007-05-07 Andreas Schwab <schwab@suse.de>
21294
21295 * keymap.c (Flookup_key): Fix typo in last change.
21296
212972007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21298
21299 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
21300 mapping for unibyte strings.
21301
213022007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21303
21304 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
21305 (Fx_popup_dialog) [MAC_OSX]: Likewise.
21306
213072007-04-29 Richard Stallman <rms@gnu.org>
21308
21309 * insdel.c (replace_range): For undo, record insertion first.
21310
213112007-04-29 Andreas Schwab <schwab@suse.de>
21312
21313 * lisp.h (VECSIZE): Use OFFSETOF.
21314
213152007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21316
21317 * xdisp.c (try_window_reusing_current_matrix): Fix number of
21318 disabled lines.
21319
213202007-04-28 Richard Stallman <rms@gnu.org>
21321
21322 * lread.c (read_escape): In a string, \s is always space.
21323
213242007-04-27 Jan Djärv <jan.h.d@swipnet.se>
21325
21326 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
21327
21328 * gtkutil.c (xg_update_menubar, create_menus): Create empty
21329 submenu for menu bar items.
21330
21331See ChangeLog.10 for earlier changes.
21332
21333;; Local Variables:
21334;; coding: utf-8
21335;; add-log-time-zone-rule: t
aac0c6e3
MR
21336;; End:
21337
e3eb1dae 21338 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
21339
21340 This file is part of GNU Emacs.
21341
21342 GNU Emacs is free software: you can redistribute it and/or modify
21343 it under the terms of the GNU General Public License as published by
21344 the Free Software Foundation, either version 3 of the License, or
21345 (at your option) any later version.
21346
21347 GNU Emacs is distributed in the hope that it will be useful,
21348 but WITHOUT ANY WARRANTY; without even the implied warranty of
21349 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21350 GNU General Public License for more details.
21351
21352 You should have received a copy of the GNU General Public License
21353 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21354
21355;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40