Replace emacs-pretest-bug with bug-gnu-emacs mailing list.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
893db5bc
GM
12010-01-12 Glenn Morris <rgm@gnu.org>
2
3 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
4 bug-gnu-emacs rather than emacs-pretest-bug.
5
4d03ece0
CY
62010-01-11 Chong Yidong <cyd@stupidchicken.com>
7
8 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
9 initializing the Lisp variables that depend on them.
10
1df47e38
YM
112010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12
13 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
14 Clear areas that will not be updated after change of menu bar lines.
15 Clear the menu bar window's current matrix when the window gets empty.
16
2f1c6384
CY
172010-01-09 Chong Yidong <cyd@stupidchicken.com>
18
e398c61c
CY
19 * intervals.h, textprop.c (extend_property_ranges): Return value
20 and args changed. Discard properties that begin at or after the
21 new end (Bug#5306).
22
23 * editfns.c (Fformat): Caller changed.
24
e5a29a10
CY
25 * nsterm.m (ns_set_default_prefs): Delete function.
26 (syms_of_nsterm): Initialize ns_command_modifier,
27 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
28 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
29
2f1c6384
CY
30 * xdisp.c (pos_visible_p): Check for invisible text at the correct
31 position (Bug#4040).
32
d427a9fa
EZ
332010-01-09 Eli Zaretskii <eliz@gnu.org>
34
35 * editfns.c (Ffloat_time): Doc fix.
36
21b9df2f
JD
372010-01-09 Jan Djärv <jan.h.d@swipnet.se>
38
39 * xfns.c (Fx_create_frame): Don't create frame larger than display
40 by default bug#3643.
41
4b00d3b1
YM
422010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
43
44 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
45 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
46 windows above internal border.
47
48 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
49 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
50 windows above internal border.
51
52 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
53 tool bar windows specially.
54
55 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
56
57 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
58 specially.
59 (XTflash): Take account of menu bar height.
60
61 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
62 specially.
63
5075d853
JD
642010-01-08 Jan Djärv <jan.h.d@swipnet.se>
65
66 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
67 also be true before we can return early (bug #5339).
68
474217c8
CY
692010-01-06 David Reitter <david.reitter@gmail.com>
70
71 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
72 (Fns_display_usable_bounds): Rewrite, computing bounds properly
73 (Bug#3233).
74
c0e6d47d
JD
752010-01-06 Jan Djärv <jan.h.d@swipnet.se>
76
d0cf45b7
JD
77 * font.c (font_open_entity): Enable chache and call cached_font_ok
78 for the driver if defined.
79 (QCuser_spec): New symbol.
80 (font_spec_from_name): Save name as user-spec.
81 (font_load_for_lface): Keep user-spec instead of name.
82 (font_open_by_name): Save name as user-spec.
83 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 84 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
85
86 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
87 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
88 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
89
90 * font.h (struct font_driver): Add cached_font_ok.
91
c0e6d47d
JD
92 * xterm.c (x_clear_frame): Queue draw for scroll bars.
93
7c583cd8
JD
942010-01-05 Jan Djärv <jan.h.d@swipnet.se>
95
96 * xterm.c (x_new_font): Move code for setting rows/cols before
97 resizing ...
98 (x_set_window_size): ... to here. bug #2568.
99
100 * gtkutil.c (xg_clear_under_internal_border): New function.
101 (xg_frame_resized, xg_frame_set_char_size): Call
102 xg_clear_under_internal_border.
103 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 104
03f77f0a
CY
1052010-01-05 Chong Yidong <cyd@stupidchicken.com>
106
107 * keyboard.c (read_key_sequence): Catch keyboard switch after
108 making a new tty frame (Bug#5095).
109
2a1ef5be
KH
1102010-01-05 Kenichi Handa <handa@m17n.org>
111
112 * fontset.c (fontset_find_font): Fix getting the frame pointer.
113
e3eb1dae
SM
1142010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
115
116 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
117 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
118 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
119
777013f2
MA
1202010-01-03 Michael Albinus <michael.albinus@gmx.de>
121
122 * dbusbind.c (xd_add_watch): Improve debug message.
123 (xd_remove_watch): Improve debug message. If DATA is the session
124 bus, unset D-Bus session environment.
125 (Fdbus_init_bus): Pass the bus as argument to
126 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 127
8932b1c2
CY
1282010-01-01 Chong Yidong <cyd@stupidchicken.com>
129
87231e2c
CY
130 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
131
4801c5fa
CY
132 * lread.c (syms_of_lread): Make it clearer that these are the
133 names of loaded files (Bug#5068).
134
8932b1c2
CY
135 * eval.c (run_hook_with_args): Handle the case where the global
136 value has the obsolete single-function form (Bug#5026).
137
11e3c684
CY
1382009-12-27 Chong Yidong <cyd@stupidchicken.com>
139
140 * minibuf.c (Fall_completions): Minor optimization.
141
5b28ce35
EZ
1422009-12-26 Eli Zaretskii <eliz@gnu.org>
143
5ce6e4f4
JB
144 * .gdbinit (pgx): Fix display of composite glyphs.
145 Display cmp.from and cmp.to as well.
146 (pitx): Fix last change.
5b28ce35 147
bcffff46
KH
1482009-12-25 Kenichi Handa <handa@m17n.org>
149
150 * composite.h (composition_adjust_point): Update prototype.
151
152 * composite.c (composition_reseat_it): Don't make a composition
153 spanning over point.
154 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
155 composable characters.
156 (composition_adjust_point): New arg NEW_PT. Callers changed.
157
158 * keyboard.c (command_loop_1): Force redisplay if the last point
159 was within a composition.
160 (adjust_point_for_property): Don't adjust point for automatic
161 composition when called after buffer modification.
162
3f670e9a
EZ
1632009-12-19 Eli Zaretskii <eliz@gnu.org>
164
5ce6e4f4
JB
165 * .gdbinit (pitx): Don't use enum names, use their values.
166 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
167 (pgx): Don't use enum names, use their values.
168 (pitmethod): New helper command.
169 (pitx): Use it to display iteration method.
170 (pgrowit): New command.
171
ad903955
EZ
172 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
173
3f670e9a
EZ
174 Update dependencies in Makefile.in.
175
176 * Makefile.in (alloc.o): Depend on termhooks.h.
177 (atimer.o): Depend on blockinput.h.
178 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
179 and frame.h.
180 (callint.o): Depend on systime.h, coding.h, and composite.h.
181 (callproc.o): Depend on buffer.h.
182 (casefiddle.o): Don't depend on charset.h.
183 (casetab.o): Depend on character.h.
184 (ccl.o): Depend on composite.h.
185 (chartab.o): Depend on ccl.h.
186 (cm.o): Depend on dispextern.h.
187 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
188 (coding.o): Don't depend on $(INTERVALS_H).
189 (composite.o): Don't depend on dispextern.h explicitly (it's in
190 $(INTERVALS_H)). Depend on ccl.h.
191 (data.o): Depend on systime.h, coding.h, composite.h,
192 dispextern.h, font.h, and ccl.h.
193 (dired.o): Depend on composite.h.
194 (dispnew.o): Depend on coding.h. Don't depend explicitly on
195 composite.h (it's in $(INTERVALS_H)).
196 (doc.o): Depend on systime.h, coding.h, and composite.h.
197 (editfns.o): Don't depend explicitly on dispextern.h.
198 (emacs.o): Depend on frame.h and coding.h.
199 (eval.o): Depend on coding.h, composite.h, and xterm.h.
200 (fileio.o): Depend on frame.h and commands.h. Don't depend
201 explicitly on dispextern.h.
202 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
203 composite.h.
204 (fns.o): Don't depend on termhooks.h.
205 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
206 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
207 coding.h, $(INTERVALS_H), window.h, xterm.h.
208 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
209 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
210 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
211 fontset.h, ccl.h, and ftfont.h.
212 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
213 (gtkutil.o): Depend on dispextern.h and composite.h.
214 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
215 termhooks.h, and ccl.h.
216 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
217 (intervals.o): Depend on systime.h and coding.h.
218 (keyboard.o): Depend on composite.h and coding.h.
219 (keymap.o): Depend on coding.h and frame.h.
220 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
221 (macros.o): Depend on systime.h, coding.h, and composite.h.
222 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
223 and atimer.h.
224 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
225 dispextern.h explicitly.
226 (print.o): Depend on termhooks.h, coding.h, and ccl.h. Don't
227 depend explicitly on dispextern.h and composite.h.
228 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
229 (regex.o): Don't depend on charset.h.
230 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
231 (search.o): Don't depend explicitly on composite.h.
232 (sound.o): Depend on atimer.h and systime.h.
233 (syntax.o): Don't depend explicitly on composite.h.
234 (sysdep.o): Depend on coding.h and composite.h.
235 (term.o): Depend on xterm.h and buffer.h.
236 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
237 (textprop.o): Don't depend on dispextern.h explicitly.
238 (undo.o): Depend on dispextern.h.
239 (window.o): Depend on coding.h and termhooks.h. Don't depend on
240 dispextern.h and composite.h explicitly.
241 (xdisp.o): Depend on ccl.h.
242 (xfaces.o): Depend on coding.h and ccl.h.
243 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
244 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
245 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
246 ftfont.h.
247 (xgselect.o): New dependency.
248 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
249 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
250 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
251 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
252 (xsmfns.o): Depend on frame.h and dispextern.h.
253 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
254 sysselect.h.
255
7a6f7fea
AS
2562009-12-19 Andreas Schwab <schwab@linux-m68k.org>
257
258 * font.c (Fclear_font_cache): Pass correct cache argument to
259 font_clear_cache.
260
f4c21026
AS
2612009-12-16 Andreas Schwab <schwab@linux-m68k.org>
262
263 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
264 twice.
265
f7ab0997
CY
2662009-12-15 Chong Yidong <cyd@stupidchicken.com>
267
268 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
269 calling file-remote-p. Reported by Jim Meyering.
270
fa8e045a
MA
2712009-12-15 Michael Albinus <michael.albinus@gmx.de>
272
273 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 274 avoid compiler warnings. (Bug #5217)
fa8e045a 275
a63dba42
KH
2762009-12-14 Kenichi Handa <handa@m17n.org>
277
278 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
279 in 8-bit encoding.
280
5ce6e4f4 2812009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
282
283 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
284 tooltip windows.
285
223e5fc6
JD
2862009-12-13 Jan Djärv <jan.h.d@swipnet.se>
287
36acb2a7
JD
288 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
289 Xatom_net_window_type.
290
291 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
292 Xatom_net_window_type.
293
b8f00677
JD
294 * xterm.c (my_log_handler): New function.
295 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 296 so we can filter out buggy messages. (Bug #5120).
b8f00677 297
e5f0bc9a
JD
298 * xterm.c (xg_scroll_callback): Parameter list changed,
299 use parameter GtkScrollType to determine scroll/line/page.
300 Only allow dragging if a button < 4 is grabbed (bug #5177).
301 (xg_end_scroll_callback): New function.
302 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
303 xg_create_scroll_bar.
304
305 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
306 (scroll_end_callback): Remove.
307 (xg_create_scroll_bar): Add parameter end_callback, bind it to
308 button-release-event. Replace value-changed event with change-value,
309 bug #5177,
310 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
311 bug #5177.
312
313 * gtkutil.h (XG_LAST_SB_DATA): Remove.
314 (xg_create_scroll_bar): Add GCallback end_callback.
315
223e5fc6
JD
316 * xftfont.c (QClcdfilter): New variable.
317 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
318 (syms_of_xftfont): Initialize QClcdfilter.
319
3c055b77
JD
3202009-12-12 Jan Djärv <jan.h.d@swipnet.se>
321
322 * xsettings.c (struct xsettings): Add member seen.
323 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 324 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
325 (apply_xft_settings): Only update Xft settings with what member seen
326 indicates as new.
327
05fe33ff
EZ
3282009-12-12 Eli Zaretskii <eliz@gnu.org>
329
330 * dispextern.h (struct text_pos): Use EMACS_INT;
331 (struct glyph): Use EMACS_INT for charpos.
332 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
333 region_beg_charpos, region_end_charpos,
334 redisplay_end_trigger_charpos, and also for
335 iterator_stack_entry.end_charpos and
336 iterator_stack_entry.stop_charpos.
337
e8d7886a
JD
3382009-12-12 Jan Djärv <jan.h.d@swipnet.se>
339
5ce6e4f4 340 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
341 (xg_create_scroll_bar): Call scroll_end_callback on button release
342 event (bug #5177).
343 (xg_event_is_for_scrollbar): != replaced with ==.
344
d0db2ec8
KH
3452009-12-12 Kenichi Handa <handa@m17n.org>
346
347 * ftfont.c (struct ftfont_info): New member matrix.
348 (ftfont_open): Setup xftfont_info->matrix.
349 (MFLTFontFT): New member matrix.
350 (FLOOR, CEIL, ROUND): New macros.
351 (ftfont_get_metrics): Handle matrix transformation.
352 (ftfont_shape_by_flt): New arg matrix. Callers changed.
353
354 * xftfont.c (struct xftfont_info): New member matrix.
355 (xftfont_open): Setup xftfont_info->matrix.
356
3572009-12-10 Kenichi Handa <handa@m17n.org>
358
359 * xdisp.c (append_space_for_newline): Consider face-remapping.
360
2cc7b62f
AS
3612009-12-09 Andreas Schwab <schwab@linux-m68k.org>
362
b87dd913
AS
363 * xsettings.c: Include "keyboard.h".
364
eba5eb94
AS
365 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
366
2cc7b62f
AS
367 Fix implicit function declarations.
368 * cmds.c: Include "frame.h".
369 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
370 * frame.h: Move declaration of delete_frame outside of
371 HAVE_WINDOW_SYSTEM.
372
a4ef73c8
CY
3732009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
374
375 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
376
377 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
378 GTK builds.
379
944a300c
AS
3802009-12-07 Andreas Schwab <schwab@linux-m68k.org>
381
382 * unexelf.c (unexec): Don't search for .data twice.
383
022eef62
CY
3842009-12-05 Chong Yidong <cyd@stupidchicken.com>
385
426ac949
CY
386 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
387 if push failed.
388 (handle_line_prefix): Set avoid_cursor_p here. Check return value
389 of push_display_prop (Bug#5000).
390
022eef62
CY
391 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
392 value of font_list_entities (Bug#5085).
393
be95bee9
JB
3942009-12-04 Juanma Barranquero <lekktu@gmail.com>
395
396 Fix `string-to-number' to deal consistently with integers and floats.
397 * lread.c (isfloat_string): New argument ignore_trailing to accept all
398 trailing characters, not just whitespace.
399 (read1): Pass new arg 0 to keep old behavior.
400 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
401 trailing chars, as it is already done for integers. Doc fixes.
402 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
403
24c2d7ce
EZ
4042009-12-04 Eli Zaretskii <eliz@gnu.org>
405
406 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>: Delete
407 unused enumeration value.
408
7e694795
EZ
4092009-12-03 Eli Zaretskii <eliz@gnu.org>
410
411 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
412
84b31826
SM
4132009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
414
415 * process.c (Fmake_network_process): Fix up the tests for
416 "connectionless socket", so they DTRT for seqpacket sockets as well.
417
f00c449b
SM
4182009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
419
420 * process.c (Qseqpacket): New symbol.
421 (HAVE_SEQPACKET): New macro.
422 (Fmake_network_process): Accept new :type `seqpacket'.
423 (init_process): Add `seqpacket' feature when applicable.
424 (syms_of_process): Initialize Qseqpacket.
425
8096a0ff
YM
4262009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
427
428 * font.c (font_load_for_lface, font_open_by_name): Don't store name
429 if entity is Qnil.
430
3e0de07f
SM
4312009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
432
433 * print.c (print_preprocess): Preprocess the key_and_value table of
434 hashtables, even tho they're "hidden" (bug#5082).
435
abeafb2a
JD
4362009-11-29 Jan Djärv <jan.h.d@swipnet.se>
437
438 * frame.c (frame_make_pointer_invisible)
439 (frame_make_pointer_visible): Declare f before statements.
440
4bf47195
EZ
4412009-11-28 Eli Zaretskii <eliz@gnu.org>
442
443 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
444 omitted dependencies on lisp.h.
445
c525b3f2
JD
4462009-11-27 Jan Djärv <jan.h.d@swipnet.se>
447
ece2d4ed
JD
448 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
449 is NULL.
450
451 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
452
453 * frame.c (frame_make_pointer_invisible)
3e0de07f 454 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
455 frame.
456
c525b3f2
JD
457 * search.c (simple_search): Remove warning by making *p const.
458
2f00e299
DN
4592009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
460
461 * xdisp.c (power_letter): Remove duplicate const.
462
084b049b
JD
4632009-11-25 Jan Djärv <jan.h.d@swipnet.se>
464
a1fadc6f
JD
465 * term.c (delete_tty): Remove check for last terminal (bug#4970).
466
5ce6e4f4 467 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
468 defaults (bug #5025).
469
28259cac
SM
4702009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
471
472 * insdel.c (adjust_markers_for_delete): Move it in the
473 right direction! (bug#4803)
474
e8e14166
YM
4752009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
476
477 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
478
479 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
480
86677b58
GM
4812009-11-24 Glenn Morris <rgm@gnu.org>
482
483 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
484
581e51e8
JD
4852009-11-23 Jan Djärv <jan.h.d@swipnet.se>
486
cfc86c7a
JD
487 * Makefile.in: Must create deps for ecrt0.o in its rule.
488
581e51e8
JD
489 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
490 because that is what Gtk+ font dialog understands.
491
492 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
493 of Fcopy_sequence.
494 (font_open_by_name): Put name given into QCname for font-object returned.
495
496 * frame.c (x_set_font): Save original font name as frame parameter
497 font-parameter.
498
499 * xsettings.c (set_default_xft_settings): New function.
500 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
501 is found.
502
8b264ecb
AS
5032009-11-22 Andreas Schwab <schwab@linux-m68k.org>
504
505 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
506 searching backwards through multibyte buffer.
507
872870b2
JD
5082009-11-21 Jan Djärv <jan.h.d@swipnet.se>
509
510 * xterm.c: #include xgselect.h.
511 (x_initialize): Call xgselect_initialize.
512
513 * xsettings.c (something_changedCB): C++ comments => C comments.
514 (init_gconf): Do not deal with any GLib file descriptors, xg_select
515 does that now.
516
517 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
518 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
519 (scroll_bar_button_cb): Remove.
5ce6e4f4 520 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
521 event.
522 (xg_create_scroll_bar): Don't bind button-press-event and
523 button-release-event.
524
525 * process.c: Include xgselect.h if defined (USE_GTK) ||
526 defined (HAVE_GCONF).
527 (wait_reading_process_output): Call xg_select for the same condition.
528
529 * xgselect.c (xg_select): New function to better integrate with
530 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
531
532 * xgselect.h: New file, declare xg_select, xgselect_initialize.
533
534 * Makefile.in (XOBJ): Add xgselect.o.
535
62a6e103
AS
5362009-11-21 Andreas Schwab <schwab@linux-m68k.org>
537
538 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Remove
539 ignored second argument. All callers changed.
540 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
541 (RE_STRING_CHAR_AND_LENGTH): Likewise.
542 * xdisp.c (string_char_and_length): Likewise.
543
b0ca0f33
DN
5442009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
545
546 * xterm.c (x_new_font):
547 * print.c (print_object):
548 * cmds.c (Fself_insert_command): Move declarations before statements.
549
dd5a6279
CY
5502009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
551
552 * s/cygwin.h: Remove unneeded linker flags.
553
4a8e097d
JD
5542009-11-20 Jan Djärv <jan.h.d@swipnet.se>
555
0d1d0d26
JD
556 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
557
558 * xsettings.h: Declare xsettings_get_system_font.
559
560 * xsettings.c (xsettings_get_system_font): New function.
561 (init_gconf): No use initiating gconf unless we have Xft also.
562 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
563 HAVE_GCONF.
564
4a8e097d
JD
565 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
566 add a blank entry so it doesn't collapse into nothing.
567
8ab1650e
SM
5682009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
569
570 * lread.c (Funintern): Comment out last change.
571
82c602f0
RS
5722009-11-19 Richard Stallman <rms@gnu.org>
573
574 * lread.c (Funintern): Error if symbol is t or nil.
575
87e32266
SM
5762009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
577
578 * insdel.c (make_gap_larger): Don't make as many assumptions about the
579 representation of Lisp integers.
580 Reported by MJ Chan <mjchan.inbox@gmail.com>.
581
1b9ac145
AS
5822009-11-17 Andreas Schwab <schwab@linux-m68k.org>
583
584 * lisp.h: Remove declaration of Ffont_get_system_font.
585 * xfns.c: Move include of "xsettings.h".
586 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
587
dfb3c4c6
JD
5882009-11-17 Jan Djärv <jan.h.d@swipnet.se>
589
87e32266
SM
590 * xsettings.c (something_changedCB, Ffont_get_system_font):
591 Check use_system_font.
dfb3c4c6
JD
592 (syms_of_xsettings): DEFVAR font-use-system-font.
593
9370c1d8
AS
5942009-11-17 Andreas Schwab <schwab@linux-m68k.org>
595
25fe851a
AS
596 * xfns.c (x_default_font_parameter): Remove dead assignment.
597
9370c1d8
AS
598 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
599
637fa988
JD
6002009-11-17 Jan Djärv <jan.h.d@swipnet.se>
601
87e32266 602 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 603 not have FC_LCD_*. #define them if not there.
a6eb20d8 604
87e32266 605 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 606
637fa988
JD
607 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
608
609 * xterm.c (handle_one_xevent): Call xft_settings_event for
610 ClientMessage, PropertyNotify and DestroyNotify.
611 (x_term_init): If we have XFT, get DPI from Xft.dpi.
612 Call xsettings_initialize.
613
614 * xftfont.c (xftfont_fix_match): New function.
615 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
616 Call xftfont_fix_match after XftFontMatch.
617
618 * xfont.c (xfont_driver): Initialize all members.
619
87e32266
SM
620 * xfns.c (x_default_font_parameter):
621 Try font from Ffont_get_system_font.
637fa988
JD
622 Do not get font from x_default_parameter if we got one from
623 Ffont_get_system_font.
87e32266 624 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
625
626 * w32font.c (w32font_driver): Initialize all members.
627
628 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
629
630 * lisp.h: Declare syms_of_xsettings.
631
87e32266
SM
632 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
633 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
634
635 * ftfont.c (ftfont_filter_properties): New function.
636
637 * frame.c (x_set_font): Remove unused variable lval.
638
87e32266 639 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
640
641 * font.c (font_put_extra): Don't return if val is nil, it means
642 boolean option is off.
643 (font_parse_fcname): Collect all extra properties in extra_props
644 and call filter_properties for all drivers with extra_props and
645 font as parameter.
87e32266
SM
646 (font_open_entity): Do not use cache, it does not pick up new
647 fontconfig settings like hinting.
637fa988
JD
648 (font_load_for_lface): If spec had a name in it, store it in entity.
649
650 * emacs.c (main): Call syms_of_xsettings
651
652 * config.in: HAVE_GCONF is new.
653
654 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
655 xsettings.o is new.
656
5a942932
KH
6572009-11-17 Kenichi Handa <handa@m17n.org>
658
659 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
660 back to the default font in case that no suitable font is found.
661
b7c7a4d1
SM
6622009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
663
664 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
665 Suggested by Chad Brown <yandros@mit.edu>.
666 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
667
072f1e39
JD
6682009-11-16 Jan Djärv <jan.h.d@swipnet.se>
669
670 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
671
5d1e70a2
AS
6722009-11-14 Andreas Schwab <schwab@linux-m68k.org>
673
87e32266 674 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 675
a53cfbe5
JD
6762009-11-14 Jan Djärv <jan.h.d@swipnet.se>
677
473a99b7
JD
678 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
679 has a parent.
680
a53cfbe5 681 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 682 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
683
684 * config.in: Generated (AUTO_DEPEND).
685
f04bb9b2
MA
6862009-11-13 Michael Albinus <michael.albinus@gmx.de>
687
b7c7a4d1 688 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
689 Vdbus_registered_functions_table, because it contains also
690 properties. Fix docstring.
b7c7a4d1 691 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 692
8f11f7ec
SM
6932009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
694
695 * alloc.c (mark_object): Don't reprocess marked strings.
696 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
697 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
698
8a605fe8
KH
6992009-11-13 Kenichi Handa <handa@m17n.org>
700
8f11f7ec 701 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
702 semantics of Vword_combining_categories.
703 (Vword_combining_categories): Describe the slight change of the
704 semantics.
705
241c4680
EZ
7062009-11-13 Eli Zaretskii <eliz@gnu.org>
707
708 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
709
710 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
711
5d58e44c
SM
7122009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
713
714 * xdisp.c (syms_of_xdisp): Fix typo in last change.
715
5e13f9d3
JB
7162009-11-12 Juanma Barranquero <lekktu@gmail.com>
717
718 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
719
cf54c754
DR
7202009-11-11 David Reitter <david.reitter@gmail.com>
721
722 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
723 variables to fix 2009-11-09 change.
724
a4ada374
DN
7252009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
726
91433552
DN
727 * process.c (ifflag_def): Make flag_sym constant.
728 (Fnetwork_interface_info): Use a constant pointer.
729 (ifflag_table):
730 * xfns.c (cursor_bits):
731 * xdisp.c (power_letter):
732 * termcap.c (speeds, esctab):
733 * sysdep.c (baud_convert):
734 * keyboard.c (lispy_accent_codes, modifier_names):
735 * image.c (xbm_format, xpm_format, pbm_format, png_format)
736 (jpeg_format, tiff_format, gif_format, svg_format)
737 (interlace_start, interlace_increment, gs_format):
738 * gtkutil.c (separator_names):
739 * fringe.c (swap_nibble):
740 * fns.c (base64_value_to_char, base64_char_to_value):
741 * fileio.c (make_temp_name_tbl):
742 * coding.c (suffixes): Make constant.
743
f4265f6c
DN
744 * frame.c (make_initial_frame):
745 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
746 build_string.
747 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
748
04420943
DN
749 * s/freebsd.h:
750 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
751
0a5d24ae
DN
752 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
753 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
754
a4ada374
DN
755 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
756 * xterm.c (syms_of_xterm):
757 * xfaces.c (syms_of_xfaces):
758 * xdisp.c (syms_of_xdisp):
759 * lread.c (syms_of_lread):
760 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
761 build_string.
91433552 762
a4ada374
DN
763 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
764
af98fc7f
SM
7652009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
766
8ab1650e 767 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 768
e90292a9
JD
7692009-11-10 Jan Djärv <jan.h.d@swipnet.se>
770
771 * keyboard.h: Declare timer_check.
772
773 * keyboard.c (timer_check_2): New function that does what the old
774 timer_check did.
775 (timer_check): Call timer_check_2 until -1 or a non-zero time is
776 returned, i.e. don't return -1 with timers pending.
777
778 * process.c: Remove extern declaration of timer_check.
779
780 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
781 even if timer_check returned -1.
782
af98fc7f
SM
783 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
784 xg_dialog_data.
e90292a9
JD
785 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
786 the event loop.
787 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
788 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
789 Destroy the dialog after xg_dialog_run.
790
045b83c0
SM
7912009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
792
793 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
794
1fb99a3a
JD
7952009-11-10 Jan Djärv <jan.h.d@swipnet.se>
796
797 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
798
04e452cb
JB
7992009-11-09 Juanma Barranquero <lekktu@gmail.com>
800
801 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
802
ef7417fd
SM
8032009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
804
805 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
806 w32menu.c, and nsmenu.m.
807 Simplify the obsolete case where position is nil.
808 (cleanup_popup_menu): New function, moved from nsmenu.m.
809 (struct skp): Remove slot `notreal'.
810 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
811 adjust callers.
812 (single_menu_item): Adjust call to parse_menu_item.
813 (syms_of_menu): Defsubr x-popup-menu.
814 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
815 (keymap_panes): Don't export any more.
816 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
817 (xmenu_show): Declare.
818 * keyboard.c (parse_menu_item): Remove arg `notreal'.
819 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
820 * keyboard.h (parse_menu_item): Update declaration.
821 * xmenu.c (Fx_popup_menu): Remove.
822 (syms_of_xmenu): Don't defsubr x-popup-menu.
823 * w32menu.c (Fx_popup_menu): Remove.
824 (syms_of_w32menu): Don't defsubr x-popup-menu.
825 * nsmenu.m (cleanup_popup_menu): Remove.
826 (ns_menu_show): Rename from ns_popup_menu and remove all the code
827 moved to menu.c's Fx_popup_menu.
828 (Fx_popup_menu): Remove.
829 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
830 menu_items (it's done in menu.c already).
831
424d6179
SM
8322009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
833
834 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
835 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
836
c0df13a6 8372009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
838
839 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 840 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
841 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
842 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
843
2de9f71c
SM
8442009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
845
846 Let integers use up 2 tags to give them one extra bit and thus double
847 their range.
848 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
849 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
850 New macros.
851 (enum Lisp_Type): Use them. Give explicit values.
852 (Lisp_Type_Limit): Remove.
853 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
854 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
855 Pay attention to USE_2_TAGS_FOR_INTS.
856 (INTEGERP): Use LISP_INT_TAG_P.
857 * fns.c (internal_equal): Simplify the default case.
858 (sxhash): Use case_Lisp_Int.
859 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
860 any more.
861 (Ftype_of): Use case_Lisp_Int.
862 (store_symval_forwarding): Take into account the fact that Ints can
863 now have more than one tag.
864 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
865 buffer_slot_type_mismatch):
866 * xfaces.c (face_attr_equal_p):
867 * print.c (print_object):
868 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
869 Use case_Lisp_Int.
870
323637a2
EZ
8712009-11-06 Eli Zaretskii <eliz@gnu.org>
872
7ac65b38
EZ
873 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
874
323637a2
EZ
875 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
876 warning.
877
e511451f
JD
8782009-11-06 Jan Djärv <jan.h.d@swipnet.se>
879
880 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
881
882 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
883
884 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
885 ButtonPressRelease and MotionNotify (bug#4870).
886
5e2327cf
DN
8872009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
888
5adc433e
DN
889 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
890
d67b4f80
DN
891 * xterm.c (syms_of_xterm):
892 * xselect.c (syms_of_xselect):
893 * xmenu.c (syms_of_xmenu):
894 * xfns.c (syms_of_xfns):
895 * xfaces.c (syms_of_xfaces):
896 * xdisp.c (syms_of_xdisp):
897 * window.c (syms_of_window):
898 * w32fns.c (syms_of_w32fns):
899 * undo.c (syms_of_undo):
900 * textprop.c (syms_of_textprop):
901 * terminal.c (syms_of_terminal):
902 * syntax.c (syms_of_syntax):
903 * sound.c (syms_of_sound):
904 * search.c (syms_of_search):
905 * print.c (syms_of_print):
906 * minibuf.c (syms_of_minibuf):
907 * macros.c (syms_of_macros):
908 * keymap.c (syms_of_keymap, initial_define_key)
909 (initial_define_lispy_key):
910 * keyboard.c (syms_of_keyboard):
911 * insdel.c (syms_of_insdel):
912 * image.c (syms_of_image):
913 * fringe.c (syms_of_fringe):
914 * frame.c (syms_of_frame):
915 * fontset.c (syms_of_fontset):
916 * fns.c (syms_of_fns):
917 * fns.c (syms_of_fns):
918 * fileio.c (syms_of_fileio):
919 * fileio.c (syms_of_fileio):
920 * eval.c (syms_of_eval):
921 * doc.c (syms_of_doc):
922 * dispnew.c (syms_of_display):
923 * dired.c (syms_of_dired):
924 * dbusbind.c (syms_of_dbusbind):
925 * data.c (syms_of_data):
926 * composite.c (syms_of_composite):
927 * coding.c (syms_of_coding):
928 * cmds.c (syms_of_cmds):
929 * charset.c (define_charset_internal, syms_of_character):
930 * ccl.c (syms_of_ccl):
931 * category.c (syms_of_category, init_category_once):
932 * casetab.c (syms_of_casetab):
933 * casefiddle.c (syms_of_casefiddle):
934 * callint.c (syms_of_callint):
935 * bytecode.c (syms_of_bytecode):
936 * buffer.c (keys_of_buffer, syms_of_buffer):
937 * alloc.c (syms_of_alloc):
938 * process.c (syms_of_process, init_process):
939 * lread.c (syms_of_lread, init_obarray):
940 * font.c (build_style_table):
941 * emacs.c (syms_of_emacs, main): Replace calls to intern with
942 intern_c_string, calls to make_pure_string with
943 make_pure_c_string. Use pure_cons instead of Fcons.
944
5e2327cf
DN
945 * process.c (socket_options): Make it const.
946 (set_socket_option, init_process): Use a const pointer.
947
948 * lread.c (intern_c_string): New function.
949 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
950 (defvar_int): Uset it. Make the name const char*.
951
952 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
953 (defvar_int): Update prototypes.
954 (DEFUN, EXFUN): Support for prototypes is now required.
955 (intern_c_string): New prototype.
956 (struct Lisp_Subr): Make symbol_name constant.
957
958 * font.c (struct table_entry): Remove unused member. Make NAMES
959 constant.
960 (weight_table, slant_table, width_table): Make constant.
961
962 * emacs.c (struct standard_args): Make name and longname constant.
963
964 * character.h (DEFSYM): Use intern_c_string.
965
a56eaaef
DN
9662009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
967
968 * alloc.c (make_pure_c_string): New function.
969
970 * eval.c (Fautoload): Purecopy all arguments.
971
f6a07420
KH
9722009-11-05 Kenichi Handa <handa@m17n.org>
973
974 * fileio.c (Finsert_file_contents): Be sure set coding-system of
975 the buffer in case of replace.
976
5d28d4b1
DN
9772009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
978
979 * puresize.h (BASE_PURESIZE): Increase to 1620000.
980
b349d111
SM
9812009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
982
d528b1ce
SM
983 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
984 when applicable (bug#4851).
985
b349d111
SM
986 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
987 (P_): Support for prototypes is now required.
988
c38eb027
CY
9892009-10-31 Chong Yidong <cyd@stupidchicken.com>
990
991 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
992 (Bug#4827).
993
0405f8d9
EZ
9942009-10-30 Eli Zaretskii <eliz@gnu.org>
995
d528b1ce 996 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 997
ca0a881a
DN
9982009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
999
1000 * puresize.h (BASE_PURESIZE): Increase to 1470000.
1001
d528b1ce
SM
1002 * lread.c (Fload): Purecopy the file name when building
1003 Vpreloaded_file_list.
ca0a881a 1004
47e0e0e4
JR
10052009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
1006
1007 * w32fns.c (syms_of_w32fns): Change default value of
1008 w32-scroll-lock-modifier to nil. (Bug#2827)
1009
057bce6f
JB
10102009-10-26 Juanma Barranquero <lekktu@gmail.com>
1011
782a943e 1012 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 1013
242bc74c
AS
10142009-10-26 Andreas Schwab <schwab@redhat.com>
1015
1016 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
1017
522d013a
JB
10182009-10-26 Juanma Barranquero <lekktu@gmail.com>
1019
1020 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
1021 For delta < 0, skip check that only makes sense when the mini-window
1022 is going to be enlarged. (Bug#4534)
1023
18060980
CY
10242009-10-25 Chong Yidong <cyd@stupidchicken.com>
1025
1026 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
1027 string in menu maps (Bug#4471).
1028
fec8f0fe
CY
10292009-10-24 Chong Yidong <cyd@stupidchicken.com>
1030
1031 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
1032 FRAME_NS_VIEW on terminal frames (Bug#4765).
1033
10d66ec0
AS
10342009-10-24 Andreas Schwab <schwab@linux-m68k.org>
1035
1cae01f7
AS
1036 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
1037 DBUS_TYPE_UINTnn separately to get proper sign extension.
1038
58a12889
AS
1039 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
1040 can properly handle unsigned types.
d528b1ce 1041 (make_uid, make_gid): Remove.
58a12889 1042
987c9327
AS
1043 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
1044 types again.
1045
522d013a 1046 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
1047 (system_process_attributes): Likewise.
1048
905a9ed3
DN
10492009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
1050
1051 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
1052
1053 * eval.c (Fautoload): Purecopy the filename. Simplify.
1054
1055 * category.c (Fdefine_category): Purecopy docstring.
1056
a599b3e8
AS
10572009-10-23 Andreas Schwab <schwab@linux-m68k.org>
1058
7b792fc9
AS
1059 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
1060
a599b3e8
AS
1061 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
1062
b35ac83e
CY
10632009-10-23 Chong Yidong <cyd@stupidchicken.com>
1064
1065 * window.c (Fwindow_edges, Fwindow_pixel_edges)
1066 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
1067 (Bug#4775).
1068
e8903e00
SM
10692009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
1070
1071 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
1072 (init_fileio_once):
1073 * lisp.h (init_fileio_once): Remove.
1074 * emacs.c (main): Don't call init_fileio_once.
1075
8f43cbf3
DN
10762009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
1077
1078 * puresize.h (BASE_PURESIZE): Increase to 1430000.
1079
26898943
AS
10802009-10-21 Andreas Schwab <schwab@linux-m68k.org>
1081
1082 * doprnt.c (doprnt): Fix overflow check.
1083
5c646d5a
JD
10842009-10-21 Jan Djärv <jan.h.d@swipnet.se>
1085
3132a7ea
JD
1086 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
1087
5c646d5a
JD
1088 * xterm.h (x_wait_for_event): Declare it.
1089
1090 * xterm.c (pending_event_wait): New variable.
1091 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
1092 see pending_event_wait.eventtype.
1093 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
1094 (x_new_font): Call change_frame_size with new rows/columns before we
1095 try to resize the frame.
5c646d5a 1096 (x_wait_for_event): New function.
d528b1ce
SM
1097 (x_set_window_size_1): Don't change gravity unless change_gravity
1098 is set.
5c646d5a
JD
1099 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
1100 don't change frame size, instead wait for the ConfigureNotify.
1101 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
1102 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
1103 (x_initialize): Initialize pending_event_wait.
1104
1105 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
1106 size.
1107
1108 * widget.c (EmacsFrameSetValues): Add comment.
1109 (EmacsFrameSetCharSize): Just call x_set_window_size.
1110
1111 * gtkutil.c (xg_frame_set_char_size): Flush events and call
1112 x_wait_for_event.
d528b1ce 1113 (flush_and_sync): Remove again.
5c646d5a
JD
1114 (xg_get_font_name): Suggest monospace if no previous font is known.
1115
e9c1637d
SM
11162009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
1117
1118 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 1119 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 1120
5a72cccb
YM
11212009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1122
1123 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
1124 processing pending events when event is filtered for input method.
ab04798f 1125 (Bug#3681)
5a72cccb 1126
2629aa37
JB
11272009-10-20 Juanma Barranquero <lekktu@gmail.com>
1128
1129 * fns.c: Add #endif accidentally removed in previous change.
1130
c3417a74
DN
11312009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1132
1133 * fns.c: Remove code for unsupported system: MAC_OS.
1134 * image.c: Likewise. Include setjmp.h.
1135
9685cef2
JD
11362009-10-19 Jan Djärv <jan.h.d@swipnet.se>
1137
1138 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
1139 pixel -1 (bug #4742).
1140
d7306fe6
DN
11412009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1142
019d2c4c
DN
1143 * process.c (create_pty): Remove conditionals for no longer
1144 supported systems: UNIPLUS and RTU.
1145
ee6bacd4
DN
1146 * xterm.c:
1147 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
1148
d7306fe6
DN
1149 * alloc.c: Do not define struct catchtag.
1150 * eval.c: Move struct catchtag definition ...
1151 * lisp.h: ... here.
1152
1153 * image.c: Move png.h #include earlier to avoid warnings.
1154
1155 * xterm.c:
1156 * xsmfns.c:
1157 * xselect.c:
1158 * xrdb.c:
1159 * xmenu.c:
1160 * xftfont.c:
1161 * xfont.c:
1162 * xfns.c:
1163 * xfaces.c:
1164 * xdisp.c:
1165 * window.c:
1166 * widget.c:
1167 * w32xfns.c:
1168 * w32uniscribe.c:
1169 * w32term.c:
1170 * w32select.c:
1171 * w32reg.c:
1172 * w32proc.c:
1173 * w32menu.c:
1174 * w32inevt.c:
1175 * w32heap.c:
1176 * w32font.c:
1177 * w32fns.c:
1178 * w32console.c:
1179 * w32.c:
1180 * w16select.c:
1181 * vm-limit.c:
1182 * unexsol.c:
1183 * unexec.c:
1184 * unexcw.c:
1185 * unexaix.c:
1186 * undo.c:
1187 * tparam.c:
1188 * textprop.c:
1189 * terminfo.c:
1190 * terminal.c:
1191 * termcap.c:
1192 * term.c:
1193 * syntax.c:
1194 * sound.c:
1195 * sheap.c:
1196 * search.c:
1197 * scroll.c:
1198 * region-cache.c:
1199 * regex.c:
1200 * ralloc.c:
1201 * process.c:
1202 * print.c:
b024548b
DN
1203 * nsterm.m:
1204 * nsselect.m:
1205 * nsmenu.m:
1206 * nsimage.m:
1207 * nsfont.m:
1208 * nsfns.m:
d7306fe6
DN
1209 * msdos.c:
1210 * minibuf.c:
1211 * menu.c:
1212 * marker.c:
1213 * macros.c:
1214 * keymap.c:
1215 * keyboard.c:
1216 * intervals.c:
1217 * insdel.c:
1218 * indent.c:
1219 * gtkutil.c:
1220 * ftxfont.c:
1221 * ftfont.c:
1222 * fringe.c:
1223 * frame.c:
1224 * fontset.c:
1225 * font.c:
1226 * fns.c:
1227 * floatfns.c:
1228 * filelock.c:
1229 * fileio.c:
1230 * emacs.c:
1231 * editfns.c:
1232 * dosfns.c:
1233 * doprnt.c:
1234 * doc.c:
1235 * dispnew.c:
1236 * dired.c:
1237 * dbusbind.c:
1238 * data.c:
1239 * composite.c:
1240 * coding.c:
1241 * cmds.c:
1242 * cm.c:
1243 * chartab.c:
1244 * charset.c:
1245 * character.c:
1246 * ccl.c:
1247 * category.c:
1248 * casetab.c:
1249 * casefiddle.c:
1250 * callproc.c:
1251 * callint.c:
1252 * bytecode.c:
1253 * buffer.c:
1254 * atimer.c: Include setjmp.h. (Bug#4643)
1255
fd5f21e6
SM
12562009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
1257
4c0354d7
SM
1258 Remove leftover table unibyte_to_multibyte_table.
1259 * character.c (unibyte_to_multibyte_table): Remove.
1260 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
1261 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
1262 * character.h (UNIBYTE_TO_CHAR): New macro.
1263 (MAKE_CHAR_MULTIBYTE): Use it.
1264 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
1265 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
1266 (message_dolog, set_message_1):
1267 * search.c (Freplace_match):
1268 * editfns.c (Fcompare_buffer_substrings):
1269 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
1270 (concat):
1271 * insdel.c (copy_text, count_size_as_multibyte):
1272 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
1273 * term.c (produce_glyphs):
1274 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
1275 * regex.c (RE_CHAR_TO_MULTIBYTE):
1276 * cmds.c (internal_self_insert):
1277 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
1278
fd5f21e6
SM
1279 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
1280
4418646e
DN
12812009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
1282
1283 * puresize.h (BASE_PURESIZE): Increase to 1310000.
1284
35f5c1d2
JB
12852009-10-16 Juanma Barranquero <lekktu@gmail.com>
1286
1287 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
1288
a0cd8f6b
AR
12892009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
1290
1291 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
1292 still needed under Tiger.
1293
1294 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
1295
1296 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
1297 __Apple__.
1298
1299 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
1300
01a8d3fa
KH
13012009-10-15 Kenichi Handa <handa@m17n.org>
1302
1303 * print.c (print_object): Escape a symbol like "2E10" too.
1304
bf6c75c9 13052009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
1306
1307 Cleanups and changes for 64-bit compile under Snow Leopard.
1308 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
1309
1310 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
1311
c5959062 1312 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
1313 (ns_findfonts, nsfont_list_family): Use long format in printf, and
1314 cast argument.
1315 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 1316 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
1317
1318 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
1319
1320 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
1321 where appropriate.
1322
1323 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
1324 where appropriate.
6e4780c5
JB
1325 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
1326 Use stringWithUTF8String.
bf6c75c9
AR
1327 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
1328
6e4780c5
JB
1329 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
1330 Add formal protocol mention to inheritance.
bf6c75c9
AR
1331 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
1332
6e4780c5
JB
1333 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
1334 Fix printf format.
bf6c75c9
AR
1335 (ns_query_color): Use CGFloat where appropriate.
1336 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
1337 (EmacsScroller-mouseDown:) Use long format in printf, and cast
1338 argument.
1339
3d87f118
AR
1340 * config.in (NS_HAVE_NSINTEGER): Drop.
1341
a95c8102
AR
1342 * dbusbind.c (dbus-method-return-internal)
1343 (dbus-method-error-internal): Use long format in printf, and cast
1344 argument.
1345
1346 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
1347 in printf, and cast argument.
1348
6873acca 1349 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
1350 cast argument.
1351
9ec6f100
GM
13522009-10-11 Glenn Morris <rgm@gnu.org>
1353
1354 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
1355
5be883cd
JD
13562009-10-08 Jan Djärv <jan.h.d@swipnet.se>
1357
1358 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
1359 menu bar with a small width so it doesn't enlarge the frame.
1360
d7a39b51
JB
13612009-10-08 Juanma Barranquero <lekktu@gmail.com>
1362
1363 * fontset.c (Fset_fontset_font): Fix typos in error messages.
1364
0c2b6f8e
GM
13652009-10-06 Glenn Morris <rgm@gnu.org>
1366
1367 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
1368 SOME_MACHINE_LISP (this enters indirectly via DOC).
1369
e02131a2
EZ
13702009-10-05 Eli Zaretskii <eliz@gnu.org>
1371
1372 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
1373
b4744254
EZ
13742009-10-04 Eli Zaretskii <eliz@gnu.org>
1375
1376 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
1377 Doc fix.
1378
dbf64827
JB
13792009-10-03 Martin Rudalics <rudalics@gmx.at>
1380
1381 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
1382
e9a0aef8
MA
13832009-10-02 Michael Albinus <michael.albinus@gmx.de>
1384
d528b1ce 1385 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
1386 used anymore outside fileio.c.
1387
1388 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
1389
64eb2b56
JB
13902009-10-01 Juanma Barranquero <lekktu@gmail.com>
1391
1392 * lisp.h (Qdelete_directory_internal):
1393 Declare, instead of Qdelete_directory.
1394
1395 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1396
9d28c33e
SM
13972009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1398
1399 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1400
9d8f3bd9
MA
14012009-10-01 Michael Albinus <michael.albinus@gmx.de>
1402
9d28c33e 1403 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
1404 Fdelete_directory. It is not a command anymore. It has no file
1405 name handler.
1406
9694740b
SM
14072009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1408
1409 * xdisp.c (get_next_display_element): Use an enum in last change.
1410
748e162f
KH
14112009-09-28 Kenichi Handa <handa@m17n.org>
1412
9694740b 1413 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
1414 unibyte_display_via_language_environment in handling
1415 Vnobreak_char_display.
1416
17efd58d
AR
14172009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1418
1419 * nsterm.h (ns_app_name): New extern variable.
1420
1421 * nsterm.m (ns_app_name): New variable.
1422 (ns_term_init): Set and use it.
1423 (ns_term_shutdown): Use it.
1424
1425 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1426 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1427
1428 * nsfns.m (ns_set_name_iconic, ns_set_name)
1429 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1430 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1431
9694740b
SM
1432 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1433 Remove double-casting in client_data comparison.
31c2d412 1434
3208cb35
YM
14352009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1436
1437 * keyboard.c (make_lispy_event): Remember last wheel direction.
1438 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1439
b7d552d6
GM
14402009-09-26 Glenn Morris <rgm@gnu.org>
1441
1442 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1443 internal.elc. Add term/pc-win.elc.
1444 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1445 term/x-win.elc.
1446 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1447 term/w32-win.elc.
1448 (NS_SUPPORT): New.
1449 (lisp): Add NS_SUPPORT.
1450 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1451
4ff670a8
DR
14522009-09-25 David Reitter <david.reitter@gmail.com>
1453
1454 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1455 on Mac OS X 10.6+ (bug#4513).
1456
feabfb6c
JB
14572009-09-24 Juanma Barranquero <lekktu@gmail.com>
1458
1459 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
1460 some parts of Emacs code (like font selection) don't grok them.
1461 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 1462
de59072a
AS
14632009-09-24 Andreas Schwab <schwab@redhat.com>
1464
1465 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1466
a489517b
JB
14672009-09-24 Juanma Barranquero <lekktu@gmail.com>
1468
1469 * dired.c (Fdirectory_files): Fix typo in docstring.
1470
0592970c
AR
14712009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1472
1473 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1474 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1475 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1476 under GNUstep.
1477 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1478
1479 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1480 glyph advancement.
1481
48e8a88b
AR
14822009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1483
1484 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 1485 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
1486
1487 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1488 deleted (bug #4492).
1489
e14f0a78
AR
1490 * nsfont.m (Vns_reg_to_script): New lisp variable.
1491 (syms_of_nsfont): Declare it.
1492 (ns_registry_to_script): New function.
1493 (ns_get_req_script): Call it.
1494 (ns_findfonts): Don't give up on non-unicode registry.
1495
1496 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1497
5b650faa
SM
14982009-09-20 Tom Tromey <tromey@redhat.com>
1499
1500 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1501 batch mode (bug#4228).
1502
a489517b 15032009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
1504
1505 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 1506 carefully. (Bug #4339)
0bae4e09 1507
fcfe06f3
CY
15082009-09-18 Chong Yidong <cyd@stupidchicken.com>
1509
d798ba87 1510 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 1511
31642728
AR
15122009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1513
1514 * emacs.c (inhibit_x_resources): Update doc string for NS.
1515 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 1516 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
1517
1518 * nsterm.h (ns_no_defaults): Remove.
1519
1520 * nsterm.m (ns_no_defaults): Remove.
1521 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1522 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
1523 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1524 don't update the NSWindow itself.
1525 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 1526 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
1527
1528 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1529 ns_use_qd_smoothing.
1530
1531 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1532 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 1533 (x-close-connection): Drop PSFlush() under OS X.
a489517b 1534 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 1535
8686ac71
JB
15362009-09-17 Juanma Barranquero <lekktu@gmail.com>
1537
1538 * emacs.c (inhibit_x_resources): New variable.
1539 (main) [HAVE_NS]: Don't process --quick command line option.
1540 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1541
1542 * lisp.h (inhibit_x_resources): Declare it extern.
1543
1544 * w32reg.c (x_get_string_resource):
1545 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1546
e227ba05
EZ
15472009-09-17 Eli Zaretskii <eliz@gnu.org>
1548
362654a6
JB
1549 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1550 Add lisp/term/internal.elc.
e227ba05 1551
742d40e8
SM
15522009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1553
1554 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1555 (bug#4461).
1556
005bd5a2
DN
15572009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1558
1559 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1560
1561 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1562 (OBJECTS_MACHINE): Remove, unused.
1563
f9af9719
SM
15642009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1565
1566 * frame.c (x_get_resource_string): Remove unused.
1567
0307c7d2
JD
15682009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1569
1570 * xterm.c (x_new_font): Call change_frame_size before calling
1571 x_set_window_size, in case frame size won't change.
1572
1573 * frame.c (x_set_font): Remove dead code.
1574
428b13d6
SM
15752009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1576
1577 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1578
5766c380
SM
15792009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1580
1581 * lread.c (Fload): Don't output a message after loading an obsolete
1582 package any more (done in Lisp now).
1583
2fd0161b
CY
15842009-09-12 Chong Yidong <cyd@stupidchicken.com>
1585
1586 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1587
bc5e75b6
SM
15882009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1589
1590 * keymap.c (Fwhere_is_internal): Use nconc2.
1591
c31c985e
AM
15922009-09-11 Alan Mackenzie <acm@muc.de>
1593
1594 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1595 batch mode.
1596
78012bd2
AS
15972009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1598
1599 * xdisp.c (display_mode_element): Detect cycles.
1600
9d889332
SM
16012009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1602
1603 * keymap.c (where_is_internal): Don't erroneously return nil right after
1604 filling the cache.
1605 (where_is_internal_1): Fix up typo.
1606
7ab5d780
GM
16072009-09-11 Glenn Morris <rgm@gnu.org>
1608
1609 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1610 share a common doc-string.
1611
5238a749
SM
16122009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1613
66d77eda
SM
1614 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1615 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1616
5238a749
SM
1617 * keymap.c (QCadvertised_binding): New constant.
1618 (syms_of_keymap): Initialize it.
1619 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1620 if applicable.
1621
19f48442
SM
16222009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1623
50d4ba39
SM
1624 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1625 (parse_menu_item): Streamline since bindings are recomputed all the
1626 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1627 more and don't support lmenu's menu-alias any more either.
1628
a88a5372
SM
1629 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1630 (where_is_internal): Strip it down to only traverse the keymaps.
1631 Move the cache handling from Fwhere_is_internal to here.
1632 (Fwhere_is_internal): Move the handling of remapping and the choice of
1633 the best binding from where_is_internal to here.
1634 Unify the cached/noncached paths, so remapping is also handled
1635 correctly when the cache is used, and so the cache can be used to
1636 speed up remap-handling when applicable.
1637 Give preference to non-remapped bindings.
1638 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1639 non-remapped bindings.
1640 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1641 command remapping.
1642
19f48442
SM
1643 * xdisp.c (display_mode_element): Move list length limit from 50 to
1644 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1645
599498c3 16462009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1647
1648 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1649
f9b7b5ac
SM
16502009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1651
a53af587
JB
1652 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1653 (Bug#4334)
1654
f9b7b5ac
SM
1655 * keymap.c (where_is_internal): Filter out shadowed remappings.
1656 Assume that where_is_internal returns unshadowed bindings to simplify
1657 the code and get rid of the gotos. Use ASIZE.
1658
04f4b72d
JD
16592009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1660
4da146f2
JD
1661 * xterm.c (x_focus_changed): If we get a focusout and pointer
1662 is invisible, make it visible.
1663
04f4b72d
JD
1664 * xterm.h: Remove condition for declaration of
1665 x_*_window_to_frame.
1666
7cef7ce3
SM
16672009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1668
1669 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1670 initial terminal as well.
1671
a54fa5b7
JD
16722009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1673
1674 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1675 x_menubar_window_to_frame.
a54fa5b7
JD
1676
1677 * xterm.c: Remove declarations also in xterm.h
1678 (XTmouse_position): Do not return valid positions
1679 for clicks in the menubar and the toolbar for Gtk+.
1680
1681 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1682 if the widget for the event has the same top level as a frame,
1683 return the frame.
1684 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1685 internal windows, bug #4122.
1686 (x_non_menubar_window_to_frame): Remove.
1687
5a021dd0
GM
16882009-09-02 Glenn Morris <rgm@gnu.org>
1689
1690 * buffer.c (default-major-mode): Move most of the doc from here...
1691 (major-mode): ... to here.
1692
548fe2f3
NR
16932009-08-30 Nick Roberts <nickrob@snap.net.nz>
1694
1695 * process.c (wait_reading_process_output): Keep the descriptor
1696 when pty is used by a non-child process, e.g., in I/O buffer of
1697 GDB this allows inferior to be restarted.
1698
e0840eef
EZ
16992009-08-29 Eli Zaretskii <eliz@gnu.org>
1700
1701 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1702 both branches into one.
1703
82e98df4
SM
17042009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1705
1706 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1707 (main): Use enable-multibyte-characters rather than
1708 default-enable-multibyte-characters. Output a warning message when
1709 running a unibyte session.
1710
890617cb
YM
17112009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1712
1713 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1714 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1715 (copy_data_segment): Also copy __program_vars section.
1716 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1717 (dump_it) [LC_DYLD_INFO]: Use it.
1718
1719 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1720
e7adeadc
EZ
17212009-08-28 Eli Zaretskii <eliz@gnu.org>
1722
1723 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1724 $(SRC)/buildobj.h.
1725 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1726 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1727 $(SRC)/buildobj.h.
1728 (clean): Add buildobj.h.
1729
3ed8bbdc
TZ
17302009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1731
1732 * print.c (print_object): Set escapeflag to 1 when printing
1733 hashtable keys and values.
1734
155a6764
SM
17352009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1736
1737 * lread.c (read_integer): Use doubles (and potentially return a float
1738 number) as we do in string-to-number.
1739 (read1): Use strtol to read integers, signal errors on strtol's
1740 overflow and use floats if strtol's output is too large for
1741 Elisp integers.
1742
877610de
EZ
17432009-08-27 Eli Zaretskii <eliz@gnu.org>
1744
1745 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1746 (make-buildobj-SH): Fix last change.
1747 (SRC): Move to before where it's first used.
1748
ef73e7be
KH
17492009-08-27 Kenichi Handa <handa@m17n.org>
1750
550c8289
KH
1751 * process.c (send_process): Use encode_coding_object instead of
1752 encode_coding_string to perform eol-conversion even if the string
1753 is unibyte.
1754
60afa08d
KH
1755 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1756 character.
1757
ef73e7be 1758 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1759 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1760
7b3a82d7
DN
17612009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1762
5654bf63
DN
1763 * callproc.c (Fcall_process): Remove always true #if.
1764
7b3a82d7
DN
1765 * lisp.h: Replace #if 0 code for checking with text pointing to
1766 the --enable-checking configure flag.
1767
1768 * emacs.c (main): Mention the --enable-profiling configure flag
1769 instead of using CFLAGS.
1770
878bde49
KR
17712009-08-26 Ken Raeburn <raeburn@raeburn.org>
1772
1773 * Makefile.in (buildobj.h): New target.
1774 (doc.o): Depend on it.
1775 (temacs${EXEEXT}): Don't generate buildobj.lst.
1776 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1777 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1778 ($(BLD)/doc.$(O)): Depend on it.
1779 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1780 provided by Eli Zaretskii.)
1781 ($(TEMACS)): Don't generate buildobj.lst.
1782 * doc.c: Include buildobj.h.
1783 (buildobj): New static variable.
1784 (Fsnarf_documentation): Use it, instead of opening and reading
1785 buildobj.lst.
1786
1574224c
MA
17872009-08-25 Michael Albinus <michael.albinus@gmx.de>
1788
1789 * dbusbind.c (Fdbus_call_method)
1790 (Fdbus_call_method_asynchronously): Use English numeric format for
1791 timeout values in doc string.
1792
d9da2f45
KH
17932009-08-25 Kenichi Handa <handa@m17n.org>
1794
ef73e7be
KH
1795 * alloc.c (mark_char_table): New function.
1796 (mark_object): Use mark_char_table for a char-table.
1797
d9da2f45
KH
1798 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1799 (CHAR_TABLE_REF): Use it.
1800
c8edcc01
KR
18012009-08-23 Ken Raeburn <raeburn@raeburn.org>
1802
1803 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1804 before invoking the newly build emacs to check for load-path
1805 shadowing.
1806
7763401b
GM
18072009-08-22 Glenn Morris <rgm@gnu.org>
1808
1809 * Makefile.in (bootstrap_exe): New variable.
1810 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1811 Use ${bootstrap_exe}.
1812
729eadda
EZ
18132009-08-22 Eli Zaretskii <eliz@gnu.org>
1814
1815 * coding.h (encode_coding_string): Don't encode unibyte strings.
1816 (Bug#4047)
1817
eb4c6ace
MA
18182009-08-22 Michael Albinus <michael.albinus@gmx.de>
1819
1820 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1821
1822 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1823 intended as hotfix only.
1824 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1825
36e34d1b
AR
18262009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1827
1828 * nsterm.m (ns_get_color): Update documentation properly for last
1829 change, and clean up loose ends in the code left by it. Fix
1830 longstanding bug with 16-bit hex parsing, and add support for
1831 yet another X11 format (rgb:r/g/b) for compatibility.
1832 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1833 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1834
f983eb8a
SM
18352009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1836
1837 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1838
3f56d3c6
MA
18392009-08-20 Michael Albinus <michael.albinus@gmx.de>
1840
1841 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1842 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1843 (xd_initialize, xd_pending_messages): Check, whether
1844 $DBUS_SESSION_BUS_ADDRESS is set.
1845
fb641d68
YM
18462009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1847
1848 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1849
1850 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1851
cf59a374
GM
18522009-08-20 Glenn Morris <rgm@gnu.org>
1853
1854 * emacs.c (system-type): Doc fix.
1855
1373f3be
SM
18562009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1857
1858 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1859 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1860
058ed861
MA
18612009-08-18 Michael Albinus <michael.albinus@gmx.de>
1862
1373f3be
SM
1863 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1864 New functions.
058ed861
MA
1865 (xd_initialize): Revert change from 2009-08-16.
1866
563a866e 18672009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1868
1869 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1870 font-group vector, return nil.
5fc05db0 1871
e42bdf01
CY
18722009-08-17 Chong Yidong <cyd@stupidchicken.com>
1873
1874 * process.c (status_notify): Don't perform redisplay.
1875 (Fdelete_process, list_processes_1, process_send_signal):
1876 Expliticly perform redisplay.
1877 (wait_reading_process_output): Always check process status, but
1878 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1879
4230ab74
KR
18802009-08-17 Ken Raeburn <raeburn@raeburn.org>
1881
1373f3be 1882 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1883 (XFLOAT_INIT): New macro for storing a float value.
1884 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1885 * fns.c (sxhash): Copy out the value of a float in order to
1886 examine its bytes.
1887 * dbusbind.c (xd_append_arg): Likewise.
1888
4230ab74
KR
1889 * emacs.c (main): Don't call syms_of_data twice.
1890
a0645cdd
MA
18912009-08-16 Michael Albinus <michael.albinus@gmx.de>
1892
1893 * dbusbind.c (xd_initialize): Add connection file descriptor to
1894 input_wait_mask, in order to let select() detect, whether a new
1895 message has been arrived.
ca4f31ea 1896 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1897
485db0ba
MA
18982009-08-15 Michael Albinus <michael.albinus@gmx.de>
1899
1373f3be
SM
1900 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1901 New functions.
485db0ba
MA
1902
1903 * lisp.h (xd_pending_messages): Declare.
1904
1905 * keyboard.c (readable_events): Call xd_pending_messages.
1906
b5b98ff4
CY
19072009-08-15 Chong Yidong <cyd@stupidchicken.com>
1908
1373f3be 1909 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 1910
f8354c6e
CY
1911 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1912
b5b98ff4
CY
1913 * buffer.c (set_buffer_internal_1)
1914 (swap_out_buffer_local_variables): Check for unbound local
1915 variables (Bug#4138).
1916
8b9fc636
EZ
19172009-08-14 Eli Zaretskii <eliz@gnu.org>
1918
1919 * process.c (create_pty): Fix last change.
1920
ce959360
CY
19212009-08-13 Chong Yidong <cyd@stupidchicken.com>
1922
1923 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1924 (xbm_load_image): Caller changed.
64b807c9 1925 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 1926
c7baf7e9
NR
19272009-08-13 Nick Roberts <nickrob@snap.net.nz>
1928
1929 * process.c (create_pty): New function.
1930 (Fstart_process): Use it to allow Emacs to just associate a pty
1931 with the buffer. See associated change in gdb-mi.el.
1932 (list_processes_1): Deal with no program name.
1933 (start_process_unwind): Use pid == -2 to mean no process.
1934
1ac9108a
SM
19352009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1936
1937 * cmds.c (nonundocount): New global variable.
1938 (keys_of_cmds): Initialize it.
1939 (Fself_insert_command): Use it to combine upto 20 sequential chars
1940 into a single undo entry, just like the Qself_insert_command code in
1941 keyboard.c does.
1942 Call frame_make_pointer_invisible, also like the Qself_insert_command
1943 code in keyboard.c does.
1944 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1945 than its own local replacement for it.
1946
e267324c
KR
19472009-08-10 Ken Raeburn <raeburn@raeburn.org>
1948
1ac9108a 1949 * fns.c (concat): Don't re-set string length to its current value.
77437343 1950
1ac9108a
SM
1951 * coding.h (decode_coding_string, encode_coding_string):
1952 Use SBYTES macro.
f0bed503 1953
1ac9108a 1954 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
1955 (doprnt): Merge with doprnt1, discarding lispstrings code.
1956 * lisp.h (doprnt_lisp): Don't declare.
1957
416e006d
JL
19582009-08-07 Juri Linkov <juri@jurta.org>
1959
1960 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1961
6f7d5780
DN
19622009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1963
1964 * print.c (syms_of_print): Undo previous change.
1965
f19a0f5b
TZ
19662009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1967
1968 * lread.c (read1, syms_of_lread): Read hashtables back from the
1969 readable format.
1970
1971 * print.c (print_preprocess, print_object): Print hashtables fully
1972 and readably.
1973 (syms_of_print): Provide 'hashtable-print-readable.
1974
b9173dc2
AR
19752009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1976
1977 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1978 no family set.
1979 (nsfont_open): Handle case when entity has no family.
1980
1586503c
AR
19812009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1982
1983 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1984 element, not a list, for match case.
1985
087048cd
KH
19862009-07-28 Kenichi Handa <handa@m17n.org>
1987
1988 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1989 rigidly.
1990
1991 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1992 font_parse_xlfd. Check font properties more rigidly.
1993
780c2506
DN
19942009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1995
31fd7c5c
JB
1996 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1997 bsd-common.h.
780c2506 1998
a8c0cc18
KH
19992009-07-27 Kenichi Handa <handa@m17n.org>
2000
2001 * xfaces.c (face_with_height): Call font_clear_prop.
2002
4fbe2306
CY
20032009-07-26 Chong Yidong <cyd@stupidchicken.com>
2004
111d9af3
CY
2005 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
2006
2007 * xterm.c (x_term_init): Use Qx.
2008
4fbe2306
CY
2009 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
2010
1ac9108a 2011 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
2012 (ns_get_color): Revert 2009-07-16 change.
2013
beb0b7f9
EZ
20142009-07-25 Eli Zaretskii <eliz@gnu.org>
2015
2016 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 2017 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 2018
2baf5e76
KR
20192009-07-25 Ken Raeburn <raeburn@raeburn.org>
2020
1ac9108a
SM
2021 * coding.h (decode_coding_string, encode_coding_string):
2022 Use SCHARS macro.
8890e5f5 2023
2baf5e76 2024 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 2025 (load_depth): Delete.
2baf5e76
KR
2026 (Qload_in_progress): New variable.
2027 (load_unwind): Don't reference load_depth or load_in_progress.
2028 (Fload): Likewise; specbind Qload_in_progress instead.
2029 (init_lread): Don't initialize load_depth.
2030 (syms_of_lread): Initialize and protect Qload_in_progress.
2031
1395c6f5
AR
20322009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2033
2034 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
2035
4e2f36cf
AR
20362009-07-23 Yavor Doganov <yavor@gnu.org>
2037
2038 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
2039
5dd9a6f7
AR
20402009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2041
2042 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
2043 Bugs 3792, 3720, 2402.
2044 (ns_lookup_indexed_color): Check for bad index.
2045 (ns_index_color): Init unused slot to 0.
2046 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
2047 Bug 3714, possibly 3082.
5dd9a6f7 2048
c902b920
JR
20492009-07-22 Jason Rumney <jasonr@gnu.org>
2050
1ac9108a
SM
2051 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
2052 Position IME window at cursor (Bug#2570).
c902b920
JR
2053 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
2054 (globals_of_w32fns): Dynamically load functions required above.
2055
2056 * w32term.c (w32_draw_window_cursor): Send message to reposition
2057 any IME window.
2058
090101cf
CY
20592009-07-21 Chong Yidong <cyd@stupidchicken.com>
2060
2061 * fileio.c: Revert 2009-07-16 changes.
2062 (Vauto_save_include_big_deletions): New variable.
2063 (Fdo_auto_save): Disable auto-save only if
2064 auto-save-include-big-deletions is nil.
2065
e6583e3d
CY
20662009-07-21 Chong Yidong <cyd@stupidchicken.com>
2067
2068 * xdisp.c (move_it_to): For continued lines ending in a tab, take
2069 the overflowed pixels into account (Bug#3879).
2070
ece435a5
KR
20712009-07-21 Ken Raeburn <raeburn@raeburn.org>
2072
2073 * lread.c (load_depth): New variable.
2074 (Fload, load_unwind, init_lread): Set it to the load recursion
2075 depth; set load_in_progress as a simple boolean based on the
2076 current load_depth. (Bug#3892)
2077
40b2d973
AR
20782009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2079
2080 * nsfont.m (ns_has_attribute): Remove.
2081 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
2082
10be7e0d
JL
20832009-07-18 Juri Linkov <juri@jurta.org>
2084
2085 * process.c (Fset_process_query_on_exit_flag): Mention killing
2086 a buffer in docstring.
2087
fa055055
KH
20882009-07-17 Kenichi Handa <handa@m17n.org>
2089
2090 * casetab.c (shuffle): Fix the logic of setting up the cycle.
2091
042f7b69
YM
20922009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2093
2094 * nsfns.m (Fns_set_alpha): Remove function.
2095 (syms_of_nsfns): Don't defsubr it.
2096
2097 * nsterm.m (ns_get_color): Remove incompatible color formats.
2098 (ns_color_to_lisp): Generate #rrggbb color format string.
2099
4be941e3
RS
21002009-07-16 Richard Stallman <rms@gnu.org>
2101
2102 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
2103 (Fset_buffer_auto_saved): Handle save_length = -2.
2104
4e6b227d
CY
21052009-07-16 Chong Yidong <cyd@stupidchicken.com>
2106
2107 * xterm.c (Qx_gtk_map_stock): New var.
2108
2109 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
2110 of calling intern each time.
2111
a1856973
YM
21122009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2113
2114 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
2115 does tiling.
2116
2117 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
2118
497e54d8
KH
21192009-07-14 Kenichi Handa <handa@m17n.org>
2120
72d36834
KH
2121 * font.c (font_vconcat_entity_vectors): New function.
2122 (struct font_sort_data): New member font_driver_preference.
2123 (font_compare): Check font_driver_preference.
2124 (font_sort_entities): The format of the first argument changed.
2125 (font_delete_unmatched): Likewise.
2126 (font_list_entities): The return type changed.
2127 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
2128 (font_find_for_lface): Adjuste for the above changes.
2129 Don't suppress the checking of C even if the repertory supports it.
2130 (Flist_fonts): Adjust for the above changes.
72d36834 2131
1ac9108a
SM
2132 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
2133 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
2134 Reject a font who has adstyle property that is different from a
2135 langname derived from registry property.
1ac9108a 2136 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 2137
b6046155
EZ
21382009-07-13 Eli Zaretskii <eliz@gnu.org>
2139
2140 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
2141 local copy of dirfilename.
2142
fb6b6049
KH
21432009-07-13 Kenichi Handa <handa@m17n.org>
2144
e2402a5e
KH
2145 * chartab.c (sub_char_table_ref_and_range): Fix the range check
2146 against max_char.
2147
fb6b6049
KH
2148 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
2149 calling XSYMBOL (sym).
2150
65156807
EZ
21512009-07-11 Eli Zaretskii <eliz@gnu.org>
2152
1ac9108a
SM
2153 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
2154 New function.
2155 (directory_files_internal) [WINDOWSNT]:
2156 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
2157 the filesystem of the directory is fast or slow.
2158
2159 * w32.c (logon_network_drive): Don't assume PATH is an absolute
2160 file name.
2161 (is_slow_fs): New function.
2162 (stat): Use it to determine whether to issue more system calls to
2163 get accurate file attributes, when w32-get-true-file-attributes is
2164 `local'.
2165
e0ab5fcf
JD
21662009-07-10 Jan Djärv <jan.h.d@swipnet.se>
2167
2168 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 2169 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
2170 parameter font-parameter as default to the font dialog.
2171
784ceded
KH
21722009-07-10 Kenichi Handa <handa@m17n.org>
2173
2174 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
2175
fb8edc0b
EZ
21762009-07-09 Eli Zaretskii <eliz@gnu.org>
2177
1ac9108a 2178 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 2179
fb8edc0b
EZ
2180 * w32.c (stat): Treat UNC file names as residing on remote
2181 drives. (Bug#3542)
2182
635c75b1
KH
21832009-07-09 Kenichi Handa <handa@m17n.org>
2184
2185 * fontset.c (fontset_find_font): Fix previous change.
2186
c1d5ce94
MA
21872009-07-08 Michael Albinus <michael.albinus@gmx.de>
2188
2189 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
2190 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
2191 error flag.
2192
edb61b39
KH
21932009-07-08 Kenichi Handa <handa@m17n.org>
2194
374bf7e4
KH
2195 * fontset.c (fontset_find_font): Fix the logic of handling
2196 charset_matched.
2197 (font_for_char): Delete unused var.
2198 (generate_ascii_font_name): Delete it.
2199
edb61b39
KH
2200 * coding.h (JIS_TO_SJIS2): Fix the code range check.
2201
2202 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
2203 (encode_coding_sjis): Fix the code range check.
2204
0f3f018c
CY
22052009-07-07 Chong Yidong <cyd@stupidchicken.com>
2206
2207 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
2208 (Fexpand_file_name): Copy string data properly (Bug#3772).
2209
fcaf6f3a
JD
22102009-07-07 Jan Djärv <jan.h.d@swipnet.se>
2211
2212 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
2213 first MapNotify.
2214
6809ca75
KH
22152009-07-07 Kenichi Handa <handa@m17n.org>
2216
2217 * character.h (unibyte_has_multibyte_table): Delete extern.
2218 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
2219
2220 * charset.c (Fset_charset_priority): Update charset_unibyte.
2221 (syms_of_charset): Initialize charset_unibyte.
2222
2223 * character.c (unibyte_has_multibyte_table): Delete it.
2224 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
2225 charset_unibyte.
2226 (multibyte_char_to_unibyte_safe): Likewise.
2227 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
2228
1ac9108a 2229 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
2230 (x_produce_glyphs): Likewise.
2231
2232 * .gdbinit (xcharset): Fix the treating $arg0.
2233
ad9e2d54
EZ
22342009-07-04 Eli Zaretskii <eliz@gnu.org>
2235
2236 Emulation of `getloadavg' on MS-Windows.
2237 * w32.c: Include float.h
2238 (g_b_init_get_native_system_info, g_b_init_get_system_times)
2239 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
2240 (get_native_system_info, get_system_times): New functions.
2241 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
2242 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
2243 (globals_of_w32): Initialize g_b_init_get_native_system_info,
2244 g_b_init_get_system_times, and num_of_processors.
2245
0a3472c7
JR
22462009-07-03 Jason Rumney <jasonr@gnu.org>
2247
2248 * w32term.c (w32_initialize): Use standard types.
2249
80904120
EZ
22502009-07-03 Eli Zaretskii <eliz@gnu.org>
2251
2252 * dired.c (Ffile_attributes): Decode user and group names by the
2253 locale's encoding. (Bug#3443)
2254
6978862d
DN
22552009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
2256
f8d23104
DN
2257 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
2258 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
2259
2260 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
2261
2262 * term.c (init_tty): Remove spurious #ifdef.
2263
6978862d
DN
2264 * m/mips.h: Mention this file is also used for netbsd.
2265 * m/pmax.h: Remove file.
2266
e044e4fc
JD
22672009-07-03 Jan Djärv <jan.h.d@swipnet.se>
2268
2269 * xterm.h (struct x_display_info): Add invisible_cursor.
2270 (struct x_output): Add current_cursor.
2271
2272 * xterm.c (XTtoggle_invisible_pointer): New function.
2273 (x_define_frame_cursor): Don't define cursor if invisible or the
2274 same as before. Set current_cursor.
2275 (x_create_terminal): Set toggle_invisible_pointer_hook.
2276
2277 * xfns.c (make_invisible_cursor): New function.
2278 (x_set_mouse_color): Call make_invisible_cursor.
2279 Set current_cursor.
2280 (x_window): Set current_cursor.
2281
2282 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
2283
2284 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
2285 inserting a character.
2286 (read_avail_input): Call frame_make_pointer_visible.
2287
2288 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
2289 (frame_make_pointer_invisible, frame_make_pointer_visible):
2290 New functions.
e044e4fc
JD
2291 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
2292
2293 * frame.h: Declare frame_make_pointer_invisible and
2294 frame_make_pointer_visible.
2295 (struct frame): Add pointer_invisible.
2296
574c8efa
JD
22972009-07-02 Jan Djärv <jan.h.d@swipnet.se>
2298
7b507248
JD
2299 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
2300 frame isn't visible.
2301 (xg_frame_resized): If width/height is -1, get size of window
2302 from X server.
2303
2304 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
2305 for MapNotify.
2306
835bdaa7 2307 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 2308 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 2309 (flush_and_sync): Reintroduce.
574c8efa 2310
3f1c6666 23112009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 2312
31fd7c5c 2313 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
2314
2315 * xterm.c (x_handle_net_wm_state): Also look for sticky.
2316 (x_term_init): Initialize Xatom_net_wm_state_sticky.
2317
2318 * frame.h: Declare Qsticky.
2319
cad9ef74
JD
2320 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
2321
2322 * nsfns.m (ns_frame_parm_handlers): Ditto.
2323
2324 * frame.c: Declare Qsticky.
2325 (frame_parms): Add sticky.
2326
2327 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
2328
2329 * xterm.h: Declare x_set_sticky.
2330
2331 * xterm.c (x_set_sticky): New function.
2332
69b16610
JD
2333 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
2334 (xg_tool_bar_menu_proxy): Attach enter/leave events to
2335 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
2336
2337 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
2338
2339 * frame.c: Qmaximized is new.
2340 (x_set_frame_parameters): Do not handle fullscreen specially.
2341 Only set width and height if explicitly set.
2342 (x_set_fullscreen): Handle Qmaximized.
2343 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
2344 (syms_of_frame): Initialize Qmaximized.
2345
1ac9108a
SM
2346 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
2347 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
2348
2349 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
2350 for Expose event. Add call to x_check_fullscreen for MapNotify event.
2351 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
2352 set gravity to NorthWestGravity when USE_GTK.
2353 (set_wm_state): New function.
31fd7c5c 2354 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
2355 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
2356 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 2357 or the case when no window manager is running. That means remove calls
3f1c6666
JD
2358 to x_real_positions and x_fullscreen_adjust.
2359
2360 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
2361 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
2362 flush_and_sync.
2363 (xg_height_changed): New function.
2364 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
2365 and gtk_window_set_policy. Set frame gravity after parsing the
2366 geometry string.
3f1c6666
JD
2367 (xg_update_frame_menubar, free_frame_menubar)
2368 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
2369 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
2370 Remove calls to xg_frame_set_char_size.
2371
fd503d99
KH
23722009-07-01 Kenichi Handa <handa@m17n.org>
2373
2374 * keyboard.c (decode_keyboard_code): New function.
2375 (tty_read_avail_input): Decode the input bytes if necessary.
2376
1ac9108a
SM
2377 * coding.c (setup_coding_system):
2378 Initialize coding->carryover_bytes to 0.
fd503d99
KH
2379 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
2380 use Qno_conversion.
2381
24ed93fb
YM
23822009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2383
2384 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
2385
99061dfc
CY
23862009-06-30 Chong Yidong <cyd@stupidchicken.com>
2387
1ac9108a 2388 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 2389
ff90fbde
JR
23902009-06-30 Jason Rumney <jasonr@gnu.org>
2391
2392 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2393 is already loaded.
2394 Set user model ID if supported (bug#1849).
2395
5f445726
JM
23962009-06-29 Jim Meyering <meyering@redhat.com>
2397
2398 Remove useless if-before-xfree test.
2399 * nsfont.m (nsfont_close): Remove useless test.
2400 * term.c (delete_tty): Likewise.
2401 * w32.c (system_process_attributes): Likewise.
2402 * w32font.c (w32font_close): Likewise.
2403 * xfaces.c (x_free_gc): Likewise.
2404 * xselect.c (buffer): Likewise.
2405
b9607587
AS
24062009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2407
2408 * process.c (send_process): Keep decoded string in a local
2409 variable and protect it from GC. (Bug#3521)
2410
89ba96f4
EZ
24112009-06-28 Eli Zaretskii <eliz@gnu.org>
2412
2413 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2414 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2415
098a1589
CY
24162009-06-28 Chong Yidong <cyd@stupidchicken.com>
2417
485422be
CY
2418 * xdisp.c (start_display, handle_face_prop)
2419 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
2420 (redisplay_window, try_window_id, produce_image_glyph):
2421 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 2422
098a1589
CY
2423 * xterm.c (x_update_window_begin, x_new_focus_frame)
2424 (x_scroll_bar_handle_click, handle_one_xevent)
2425 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2426 (x_make_frame_visible, x_make_frame_invisible)
2427 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2428 code chunks that are now obsolete.
2429
78c38319
MA
24302009-06-28 Michael Albinus <michael.albinus@gmx.de>
2431
2432 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2433 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2434 for hours, when optimzation is enabled.
2435 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2436 (xd_read_message): Make them static.
2437
4189ed40
CY
24382009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2439
2440 * term.c (turn_on_face): Allow simultaneously bold and dim
2441 terminal faces (Bug#3530).
2442
cd9b5e16
CY
24432009-06-27 Chong Yidong <cyd@stupidchicken.com>
2444
4e23bedb
CY
2445 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2446
cd9b5e16
CY
2447 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2448 truncation glyphs (Bug#3686).
2449
07cc3c35
GM
24502009-06-27 Glenn Morris <rgm@gnu.org>
2451
2452 * m/pmax.h: Restore file, with only netbsd portions.
2453
31fd7c5c 24542009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 2455
cd9b5e16 2456 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 2457
42d4a64f
KH
24582009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2459
2460 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2461 the arg FORCE_SYMBOL.
2462
930fe55b 24632009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
2464
2465 * fontset.c (fontset_find_font): When a usable rfont_def is found
2466 in a fallback font-group, make it the first element of the group.
2467
57ebc3fd
CY
24682009-06-24 Chong Yidong <cyd@stupidchicken.com>
2469
2470 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2471
f084f942
KH
24722009-06-24 Kenichi Handa <handa@m17n.org>
2473
2474 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2475 set for C.
2476 (fontset_font): Record the availability of a font for C both in
2477 the realized fontsets of the current one and the default one.
2478
2f686c87
DN
24792009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2480
2481 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2482 conditional, it is always defined on AIX.
2483
666e158e
MB
24842009-06-23 Miles Bader <miles@gnu.org>
2485
2486 * window.c (Vrecenter_redisplay): New variable.
2487 (syms_of_window): Initialize it.
2488 (Qtty): New extern declaration.
2489 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2490
c6da7cd2
JM
24912009-06-23 Jim Meyering <meyering@redhat.com>
2492
1ac9108a
SM
2493 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2494 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 2495 pointer dereferences are guaranteed to be valid.
c6da7cd2 2496
678dca3d
KH
24972009-06-23 Kenichi Handa <handa@m17n.org>
2498
74d75424
KH
2499 * emacs.c (main): Call init_font ().
2500
2501 * font.h (Vfont_log): Extern it.
2502 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2503
2504 * font.c (font_sort_entities, font_list_entities)
2505 (font_matching_entity, font_open_entity)
2506 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2507 (Vfont_log): Delete static.
2508 (font_log_env_checked): Delete this variable.
2509 (font_add_log): Don't check font_log_env_checked.
2510 (font_deferred_log): Check Vfont_log.
2511 (init_font): New function.
2512
678dca3d
KH
2513 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2514
2515 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2516
2517 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2518
2519 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2520
2521 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2522 (face_for_char): Don't call font_deferred_log here.
2523 (font_for_char): Likewise.
2524
8a668709
CY
25252009-06-22 Chong Yidong <cyd@stupidchicken.com>
2526
9a01ee33
CY
2527 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2528 rather than its background_width for drawing the overline and
2529 underline (Bug#489).
2530
2531 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2532 rather than its background_width for drawing the overline and
2533 underline (Bug#489).
ec7c9926
CY
2534 (xg_default_icon_file): New variable.
2535 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2536 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 2537
8a668709
CY
2538 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2539 (load_overlay_strings): Remove externs.
2540 (fast_find_position): Function deleted.
2541 (mouse_face_from_buffer_pos): New function, based on
2542 fast_find_position. Correctly handle before-strings,
2543 display-strings, and after-strings (Bug#1220).
2544 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2545
4d4c02d8
CY
25462009-06-21 Chong Yidong <cyd@stupidchicken.com>
2547
1ac9108a 2548 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
2549 (move_it_in_display_line_to, move_it_in_display_line_to)
2550 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2551
70243478
CY
25522009-06-21 Chong Yidong <cyd@stupidchicken.com>
2553
2554 * Branch for 23.1.
2555
13087e59
JR
25562009-06-21 Jason Rumney <jasonr@gnu.org>
2557
2558 * w32term.c (keyboard_codepage): New static variable.
2559 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2560 (w32_read_socket) [WM_CHAR]: Use it to decode character
2561 input (bug#3237).
2562 (w32_initialize): Initialize it.
2563 (codepage_for_locale): New function.
2564
4735b74e
KR
25652009-06-20 Ken Raeburn <raeburn@raeburn.org>
2566
2567 * process.c (status_message): Pass Faset index argument as a lisp
2568 object, so as to work with USE_LISP_UNION_TYPE.
2569
0e727afa
YM
25702009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2571
2572 * coding.c (Ffind_coding_systems_region_internal):
2573 Cache checked characters.
2574
cf299835
KH
25752009-06-18 Kenichi Handa <handa@m17n.org>
2576
1ac9108a 2577 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2578
90f20d94
AS
25792009-06-18 Andreas Schwab <aschwab@redhat.com>
2580
2581 * xdisp.c (redisplay_internal): Check that the frame is still
2582 live after redisplay of its windows.
2583 (redisplay_windows): Check that the window is still live.
2584
7f1faf1c
KH
25852009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2586
2587 * coding.c (detect_coding_utf_16): Fix previous change.
2588
cc13543e
KH
25892009-06-16 Kenichi Handa <handa@m17n.org>
2590
2591 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2592 UTF-16 by checking the dispersion of Eth and Oth bytes.
2593
977b85f4
AS
25942009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2595
2596 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2597
66bd43d1
KH
25982009-06-15 Kenichi Handa <handa@m17n.org>
2599
2600 * process.c (status_message): Fix previous change. Be sure to
2601 decode a localized string.
2602
cb5ca9c5
YM
26032009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2604
2605 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2606 add comment explaining why.
2607
ec7709ba 26082009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2609
ec7709ba 2610 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2611
4b7f335c
AR
26122009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2613
2614 * nsfont.m (ns_attribute_value): Remove.
2615 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2616 (ns_has_attribute): Shrink the normal range.
2617 (ns_findfonts): Don't worry about requested spec in determining
2618 need for synthItal.
e41820ee 2619 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2620
73b26103
SZ
26212009-06-14 Seiji Zenitani <zenitani@mac.com>
2622
2623 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2624
5753e4da
KH
26252009-06-11 Kenichi Handa <handa@m17n.org>
2626
2627 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2628 overhang for the static composition case.
2629
3561b671
KH
26302009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2631
5753e4da
KH
2632 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2633 overhang for the automatic composition case.
2634
3561b671
KH
2635 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2636 composition case.
2637
852bbd41
CY
26382009-06-10 Chong Yidong <cyd@stupidchicken.com>
2639
2640 * xdisp.c (get_next_display_element): When handling wrap-prefix
2641 and line-prefix, treat \n as a control character (bug#3502).
2642
9903d1e6
KH
26432009-06-10 Kenichi Handa <handa@m17n.org>
2644
2645 * font.c (font_parse_family_registry): Fix for one-char foundry.
2646 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2647
0bcbaaaa
CY
26482009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2649
2650 * process.c (status_message): Fix handling of multibyte signal
2651 string (Bug#3499).
2652
40aa3f13
JM
26532009-06-09 Jim Meyering <meyering@redhat.com>
2654
1f80c7e2
CY
2655 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2656 color name is missing.
40aa3f13 2657
72d51285
KH
26582009-06-09 Kenichi Handa <handa@m17n.org>
2659
2660 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2661 FROM-CODE and TO-CODE are codepoints of CHARSET.
2662
c1d04d84
AR
26632009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2664
2665 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2666
26672009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2668
2669 Changes to support :script/:lang/:otf in NS font driver.
2670 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2671 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2672 indicate not part of font driver interface, and change callers.
2673 (ns_get_family): Remove pointless null check.
2674 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2675 ns_spec_to_descriptor, ns_descriptor_to_entity.
2676 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2677 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2678 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2679 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2680 (ns_get_req_script, ns_accumulate_script_ranges)
2681 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2682 New functions.
2683 (nsfont_list, nsfont_match): Use ns_findfonts.
2684 (nsfont_open): Use font descriptor instead of traits.
2685 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2686 (dump_glyphstring): Rename to ns_dump_glyphstring.
2687
c7eb9816
AR
2688 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2689
c1d04d84
AR
2690 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2691
2692 * fontset.c (fontset_from_font): Remove NS-specific code.
2693
ec7709ba 26942009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2695
2696 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2697 nonactive windows.
2698
31fd7c5c 26992009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2700
1ac9108a 2701 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2702
68852c13 27032009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2704
2705 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2706
6756cd1d
CY
27072009-06-07 Chong Yidong <cyd@stupidchicken.com>
2708
2709 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2710 account for the overflowing of newlines into the last glyph on the
2711 display line (Bug#3482).
2712
28bf482a
DR
27132009-06-05 David Reitter <david.reitter@gmail.com>
2714
ec7709ba
JB
2715 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2716 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2717 Fns_selection_exists_p, Fns_selection_owner_p.
2718
fdb55376
JR
27192009-06-03 Jason Rumney <jasonr@gnu.org>
2720
2721 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2722 available. (Bug#3379)
2723
05129fbe
KH
27242009-05-29 Kenichi Handa <handa@m17n.org>
2725
1ac9108a
SM
2726 * coding.c (get_translation_table):
2727 Check Venable_character_translation.
05129fbe 2728
ec7709ba 27292009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2730
ec7709ba
JB
2731 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2732 (x_make_frame_visible): Move frame to front rather than calling
15891144 2733 ns_raise_frame().
ec7709ba 2734 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2735 isn't key window.
ec7709ba 2736 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2737 drawRect may be called by NSView even if the frame is hidden.
2738
ec7709ba
JB
2739 * nsfns.m (Fx_create_frame): Follow other ports in
2740 determining visibility; default to t. Ensure async_visible is set.
15891144 2741
21f73755
EZ
27422009-05-23 Eli Zaretskii <eliz@gnu.org>
2743
2744 * dired.c (Ffile_attributes): Doc fix.
2745
34001e41
CY
27462009-05-22 Chong Yidong <cyd@stupidchicken.com>
2747
2748 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2749
46306a17
SM
27502009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2751
2752 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2753 and xfont_scratch_props.
2754 (syms_of_xfont): Do it here instead.
2755 (xfont_find_ccl_program): Delete, unused.
2756 (xfont_open): Delete unused var `i'.
2757
ef6e0694
KH
27582009-05-21 Kenichi Handa <handa@m17n.org>
2759
2760 * fontset.c (Qlatin): Don't make it static.
2761
46306a17
SM
2762 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2763 New functions.
ef6e0694
KH
2764 (xfont_scripts_cache, xfont_scratch_props): New variables.
2765 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2766 (xfont_list_pattern): Argument changed. Callers changed.
2767 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2768 (xfont_list): Don't reject a font spec with :script property.
2769 (xfont_has_char): Fix setting of encoding.
2770 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2771 xfont_scratch_props.
2772
27732009-05-19 Kenichi Handa <handa@m17n.org>
2774
46306a17 2775 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2776 Callers changed.
2777
27782009-05-18 Kenichi Handa <handa@m17n.org>
2779
2780 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2781
ac71ced7
SM
27822009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2783
2784 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2785 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2786
1c6d1051
YM
27872009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2788
2789 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2790 (x_delete_terminal): Dissociate resource database from display and
2791 then call XrmDestroyDatabase before closing display.
2792
9b9b779c
AR
27932009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2794
2795 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2796 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2797 whether selected frame is viable before raising it (based on patch
2798 by David Reitter), and improve commentary.
2799 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2800
cccd42d5
KH
28012009-05-15 Kenichi Handa <handa@m17n.org>
2802
2803 * font.c (Ffont_spec): Check arguments.
2804
337fbd17
CY
28052009-05-14 Chong Yidong <cyd@stupidchicken.com>
2806
2807 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2808 weight when testing attributes (Bug#3282).
2809
47a6002f
JD
28102009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2811
2812 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2813 what we expect to get in the next ConfigureNotify event.
2814
9cb363db
YM
2815 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2816 before Xft one (Bug#1696).
2817
b9126609
CY
28182009-05-07 David Reitter <david.reitter@gmail.com>
2819
2820 * nsfns.m (Fx_display_planes): Compute bitplanes using
2821 NSBitsPerPixelFromDepth (Bug#3207).
2822
27a69fd9
CY
28232009-05-10 Chong Yidong <cyd@stupidchicken.com>
2824
2825 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2826
00f37552
TTN
28272009-05-10 Ulrich Mueller <ulm@gentoo.org>
2828
2829 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2830
2d82a920
DR
28312009-05-07 David Reitter <david.reitter@gmail.com>
2832
ec7709ba
JB
2833 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2834 Respect mouse face background.
2d82a920 2835
46b0d52d
DR
28362009-05-07 David Reitter <david.reitter@gmail.com>
2837
ec7709ba
JB
2838 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2839 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2840 in ns_update_begin and ns_update_end.
2841
ce1b23bb
SM
28422009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2843
5996e1b7
SM
2844 * nsfns.m (ns_get_screen): Rewrite.
2845 Don't presume selected-frame is of type `ns'.
2846
ba98e3a0
SM
2847 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2848 all drivers.
2849
ce1b23bb
SM
2850 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2851
bcda200f
YM
28522009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2853
2854 * keyboard.h (add_user_signal): Fix typo in extern.
2855
2856 * lisp.h (add_user_signal): Remove extern.
2857
2858 * unexelf.c (unexec): Consider a section to precede the .bss section
2859 if its addresses overlap that of .bss.
2860 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2861 instead of dumping process.
2862
864660a2
SM
28632009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2864
2865 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2866
50da4e56
SM
28672009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2868
2869 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2870
51520a1a
DN
28712009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2872
2873 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2874 any statements.
2875
409ea3a1
AS
28762009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2877
59c4c60f
AS
2878 * process.c (read_process_output): Make sure the current buffer is
2879 always restored.
2880
409ea3a1
AS
2881 * coding.c (record_conversion_result): Don't modify
2882 Vlast_code_conversion_error for successful result.
2883 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2884
56f00ed2
KH
28852009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2886
2887 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2888 (load_charset_map): Remove unnecessary code.
56f00ed2 2889
4491c9d2
DR
28902009-04-30 David Reitter <david.reitter@gmail.com>
2891
35f5b128 2892 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2893 through f24.
2894
6970f632
CY
28952009-04-30 Chong Yidong <cyd@stupidchicken.com>
2896
2897 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2898
2899 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2900 face_at_buffer_position.
2901 (face_before_or_after_it_pos, get_next_display_element)
2902 (note_mouse_highlight): Update face_at_buffer_position call.
2903
2904 * term.c (term_mouse_highlight):
2905 * msdos.c (IT_note_mouse_highlight):
2906 * fontset.c (Finternal_char_font):
35f5b128 2907 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
2908
2909 * dispextern.h (face_at_buffer_position): Update prototype.
2910
0c616f63
KH
29112009-04-30 Kenichi Handa <handa@m17n.org>
2912
35f5b128 2913 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 2914
ad3aaf33
AS
29152009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2916
2917 * callproc.c (Fcall_process): Fix GC protection. Make sure
2918 current buffer is always restored.
2919
c3c963a0
YM
29202009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2921
2922 * atimer.c (init_atimer): Also clear stopped_atimers.
2923
2924 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2925
7e3386cb
YM
2926 * process.c (create_process): Clean up merger residues of
2927 2008-07-17 change.
2928
91f68422
CY
29292009-04-29 Ulrich Mueller <ulm@gentoo.org>
2930
2931 * lread.c (Vread_circle): New variable.
2932 (read1): Disable recursive read if Vread_circle is nil.
2933
24b34550
KH
29342009-04-29 Kenichi Handa <handa@m17n.org>
2935
2936 * fontset.h (set_default_ascii_font): Delete extern.
2937
2938 * fontset.c (set_default_ascii_font): Delete this unused function.
2939
2940 * frame.c (x_set_font): When ARG is a font-object, check if the
2941 font-object matches with the ASCII font-spec of the frame's
9c358bda 2942 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 2943
77bf07e1
AS
29442009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2945
2946 * fns.c (Flocale_info): Protect vector from GC during decoding.
2947
2948 * process.c (Fstart_process): Protect argv strings from GC during
2949 encoding.
2950
2c55aacf
AS
29512009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2952
2953 * sysdep.c: Include <ctype.h>.
2954
b892d3c9
DR
29552009-04-27 David Reitter <david.reitter@gmail.com>
2956
35f5b128 2957 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
2958 Remove commented-out code.
2959
9d0644c4
JB
29602009-04-26 Johan Bockgård <bojohan@gnu.org>
2961
2962 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2963
b7053016
JR
29642009-04-25 Jason Rumney <jasonr@gnu.org>
2965
2966 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2967
4e8231f3
YM
29682009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2969
2970 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2971 Swap bytes in short integer if fringe bitmap width > 8.
2972
493dcf2c
KH
29732009-04-23 Kenichi Handa <handa@m17n.org>
2974
2975 * xfaces.c (Fx_list_fonts): If a font size is specified in
2976 PATTERN, set it in returned scalable fonts.
2977
401e9e57
CY
29782009-04-22 Chong Yidong <cyd@stupidchicken.com>
2979
708e05dc
CY
2980 * keyboard.c (Fset_input_meta_mode): Doc fix.
2981
2982 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2983
1ac9108a 2984 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
2985
2986 * coding.c (Fterminal_coding_system): Doc fix.
2987
2988 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2989 (Fx_display_pixel_height, Fx_display_planes)
2990 (Fx_display_color_cells, Fx_server_max_request_size)
2991 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2992 (Fx_display_mm_height, Fx_display_mm_width)
2993 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
2994 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2995 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
2996 (check_x_display_info): Handle terminal objects instead of
2997 terminal ids.
2998
401e9e57
CY
2999 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
3000 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
3001 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
3002 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 3003
df80c7f0
KH
30042009-04-21 Kenichi Handa <handa@m17n.org>
3005
5a8f12af 3006 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 3007 (font_score): Check AVGWIDTH too.
908567ef 3008
df80c7f0
KH
3009 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
3010 worst case.
1ac9108a
SM
3011 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
3012 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 3013
705af33f
JR
30142009-04-19 Jason Rumney <jasonr@gnu.org>
3015
3016 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 3017 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
3018
3019 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
3020 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
3021 get_phys_cursor_geometry.
3022
b71ac3dd 3023 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
3024 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
3025 using get_phys_cursor_geometry.
3026
3027 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
3028 correctly calculated.
3029
dc2933eb
JD
30302009-04-19 Jan Djärv <jan.h.d@swipnet.se>
3031
1ac9108a
SM
3032 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
3033 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
3034 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
3035 is deprecated.
3036
973e7849
AS
30372009-04-18 Andreas Schwab <schwab@linux-m68k.org>
3038
3039 * font.c (font_put_frame_data): Use xfree instead of free.
3040
314d66f4
JB
30412009-04-17 Juanma Barranquero <lekktu@gmail.com>
3042
3043 * w32font.c (Qja, Qko): Remove declarations.
3044 (syms_of_w32font): Don't DEFSYM them.
3045
cf702558
CY
30462009-04-17 Chong Yidong <cyd@stupidchicken.com>
3047
3048 * font.c (Qja, Qko): Move definitions here from ftfont.c.
3049
3050 * font.h (Qja, Qko): Extern them.
3051
3052 * ftfont.c (Qja, Qko): Remove declarations.
3053
3054 * xfont.c (Qja, Qko): Remove declarations.
3055
b50504f5
KH
30562009-04-17 Kenichi Handa <handa@m17n.org>
3057
bde25748
KH
3058 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
3059 string from a vector to handle Latin-1 characters correctly.
3060
b50504f5
KH
3061 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
3062 entity even if the cache hits.
3063
f4646fff
AS
30642009-04-16 Andreas Schwab <schwab@linux-m68k.org>
3065
3066 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 3067 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 3068
e7deaab0
AS
3069 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
3070 * lisp.h: Adjust prototypes.
3071
0a0e7d49
CY
30722009-04-16 Chong Yidong <cyd@stupidchicken.com>
3073
3074 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
3075 change (Bug#3003).
3076
3c908a57
KH
30772009-04-16 Kenichi Handa <handa@m17n.org>
3078
1ac9108a 3079 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
3080
3081 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
3082 adstyle.
3083
3084 * ftfont.c (Qja, Qko): Don't make them static.
3085 (enum ftfont_cache_for): New enum.
3086 (fc_charset_table): Undo the previous change.
3087 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
3088 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
3089 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
3090 non-scarable font, try to get AVERAGE_WIDTH.
3091 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
3092 Change ft_face_cache from a list of a hash-table. Don't check
3093 `ja' and `ko' adstyle here.
3094 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
3095 FTFONT_CACHE_FOR_CHARET.
3096 (ftfont_get_charset): Undo the previous change.
1ac9108a 3097 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
3098 (ftfont_close): Likewise.
3099 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
3100
3101 * font.c (font_sort_entites): Change the meaning of the arg
3102 BEST-ONLY. Don't optimize for VEC of lenght 1.
3103 (font_select_entity): Just return the value of font_sort_entites.
3104
3105 * xfaces.c (merge_face_vectors): Reflect font properties in
3106 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
3107 font_clear_prop if a face attribute doesn't change.
3108
3c908a57
KH
3109 * charset.h (charset_ksc5601): Extern it.
3110
3111 * charset.c (charset_ksc5601): New variable.
3112 (Fdefine_charset_internal): Set charset_ksc5601.
3113 (init_charset_once): Initialize charset_ksc5601 to -1.
3114
d65859c3
DN
31152009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
3116
3117 * fileio.c (history_delete_duplicates): Remove unused declaration.
3118
3119 * callint.c (history_delete_duplicates): New declaration.
3120 (Fcall_interactively): Remove command history duplicates when
3121 history_delete_duplicates is true.
3122
3ba010e5
EZ
31232009-04-14 Eli Zaretskii <eliz@gnu.org>
3124
3125 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
3126
06f19b91
KH
31272009-04-14 Kenichi Handa <handa@m17n.org>
3128
3129 * font.c (Ffont_info): Fix docstring. Fix the second element of
3130 the returned value (bug#2949).
3131
2cce8bfc
CY
31322009-04-14 Chong Yidong <cyd@stupidchicken.com>
3133
3134 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
3135
d156542d
KH
31362009-04-14 Kenichi Handa <handa@m17n.org>
3137
3138 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
3139 encoding charset is ascii_compatible.
3140
3141 * charset.c (Fdefine_charset_internal): Make charset
3142 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
3143 code_offset is 0, and covers all ASCII characters.
3144
86fa089e
SM
31452009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
3146
3147 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
3148 (ns_string_to_pasteboard_internal):
3149 * nsmenu.m (process_dialog):
3150 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
3151 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
3152 * lisp.h (Fx_load_color_file): Declare.
3153
a8a3728b
KH
31542009-04-13 Kenichi Handa <handa@m17n.org>
3155
1ac9108a 3156 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
3157 (font_select_entity): Suppress the code to optimize for the same
3158 kind of fonts.
3159 (font_load_for_lface): Get a font that supports at least ASCII
3160 characters.
3161
3162 * ftfont.c (Qja, Qko): New variables.
3163 (fc_charset_table): Delete uniquifier data for iso8859-1.
3164 (ftfont_get_latin1_charset): New function.
3165 (get_adstyle_property): New function.
3166 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
3167 bitmap fonts.
3168 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
3169 Delete iso-8859-1 range from the charset of fonts whose adstyle is
3170 `ko' or `ja'.
3171 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 3172 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
3173 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
3174 property.
3175 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
3176 (syms_of_ftfont): DEFSYM Qja and Qko.
3177
483670b5
KH
31782009-04-09 Kenichi Handa <handa@m17n.org>
3179
12b55765
KH
3180 * charset.c (map_charset_chars): For a charset of `superset'
3181 method, fix calculation of code range.
3182
483670b5
KH
3183 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
3184 from the list of extra properties.
3185 (font_clear_prop): Be sure to delete `:name' font property.
3186
57d3b93b
KH
31872009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3188
b4b2c2ca
YM
3189 * dispnew.c (redraw_overlapping_rows): Fix detection of
3190 overlapping for topmost and bottommost rows.
3191
1ac9108a 3192 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 3193
472c3609
JR
31942009-04-06 Jason Rumney <jasonr@gnu.org>
3195
3196 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
3197
ab193662
KH
31982009-04-06 Kenichi Handa <handa@m17n.org>
3199
3200 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
3201
3202 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
3203
0c26f026
KH
32042009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3205
3206 * ftfont.c (ftfont_open): Fix checking of the return value of
3207 FT_Load_Char. Fix setting font->underline_thickness.
3208
e173bbce
CY
32092009-04-04 Chong Yidong <cyd@stupidchicken.com>
3210
3211 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
3212 (Fterminal_parameters, Fterminal_parameter)
3213 (Fset_terminal_parameter): In doc string, refer to terminal
3214 objects rather than terminal ids.
3215
693a2698
EZ
32162009-04-04 Eli Zaretskii <eliz@gnu.org>
3217
3218 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
3219 ret_lim_data. (Bug#2867)
3220
d5221487
CY
32212009-04-03 Chong Yidong <cyd@stupidchicken.com>
3222
3223 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
3224 so they don't get wider than the window, matching 2006-01-23
3225 change to the partner function in xdisp.c (Bug#2800).
3226
223509a3
KH
32272009-04-03 Kenichi Handa <handa@m17n.org>
3228
3229 * print.c (print_object): Make each lowest sub_char_table start a
3230 new line (Bug#2866).
3231
74fcd0b1
KH
32322009-04-02 Kenichi Handa <handa@m17n.org>
3233
3234 * fontset.c (fontset_font): Record no-font when a fontset
3235 explicitly tells not to try another font-specs.
3236
c542407d
SM
32372009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
3238
3239 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
3240
e3869731
KH
32412009-03-30 Kenichi Handa <handa@m17n.org>
3242
d8d2f142
KH
3243 * fontset.c (fontset_from_font): Specify only registry in a
3244 font-spec for all characters supported by that registry.
3245
e3869731
KH
3246 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
3247 even if HAVE_M17N_FLT is not defined.
3248
5da5f805
CY
32492009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
3250
3251 * ftfont.c: Conditionalize prototyping and use of
3252 ftfont_variation_glyphs.
3253
ab226c50
SM
32542009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3255
9628fed7
SM
3256 * frame.c (delete_frame): Work around compiler bug.
3257
3258 * editfns.c (general_insert_function): Adjust to insdel.c changes.
3259 * insdel.c (prepare_to_modify_buffer, signal_before_change):
3260 Some more EMACS_INT.
3261 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
3262
3263 * xdisp.c (dump_glyph): Fix typo.
3264
ae19ba7c
SM
3265 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
3266 (adjust_markers_gap_motion, adjust_markers_for_delete)
3267 (adjust_markers_for_insert, adjust_point)
3268 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
3269 (make_gap, copy_text, count_size_as_multibyte, insert)
3270 (insert_and_inherit, insert_before_markers)
3271 (insert_before_markers_and_inherit, insert_1)
3272 (count_combining_before, count_combining_after, insert_1_both)
3273 (insert_from_string, insert_from_string_before_markers)
3274 (insert_from_string_1, insert_from_gap, insert_from_buffer)
3275 (insert_from_buffer_1, adjust_after_replace)
3276 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
3277 (replace_range_2, del_range, del_range_1, del_range_byte)
3278 (del_range_both, del_range_2, modify_region)
3279 (prepare_to_modify_buffer, signal_before_change)
3280 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
3281 for buffer positions and sizes.
3282 * lisp.h: Adjust prototypes accordingly.
3283
3284 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
3285 (non_regular_inserted, non_regular_nbytes, read_non_regular)
3286 (Finsert_file_contents): Use EMACS_INT for buffer positions.
3287
ab226c50
SM
3288 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
3289
46dfb8fb
JD
32902009-03-27 Jan Djärv <jan.h.d@swipnet.se>
3291
3292 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
3293 lines and columns so we keep the same pixel height and width.
3294
3295 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
3296 the property _NET_WM_STATE has changed.
46dfb8fb
JD
3297 (x_handle_net_wm_state): New function to update frame parameter
3298 fullscreen.
3299 (x_term_init): Initialize atoms for _NET_WM_STATE.
3300
3301 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
3302
d347e494
SM
33032009-03-27 Kevin Ryde <user42@zip.com.au>
3304
3305 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
3306 Gpm_GetEvent as an error that justifies closing the filedescriptor.
3307 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
3308 (Fgpm_mouse_stop): Pass that new parameter.
3309 * termhooks.h (close_gpm): Adjust prototype.
3310
84db11d6
SM
33112009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
3312
c95a5008
SM
3313 * lisp.h (Fx_focus_frame): Declare.
3314
84db11d6
SM
3315 * callint.c (Fcall_interactively): For '^' just delegate the work to
3316 handle-shift-selection.
3317 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
3318
0a1958d6
CY
33192009-03-24 Chong Yidong <cyd@stupidchicken.com>
3320
0bfdff23
CY
3321 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
3322
0a1958d6
CY
3323 * data.c (Qinteractive_form): New variable.
3324 (Finteractive_form): Use it.
3325
3326 * eval.c (Fcommandp): Use Qinteractive_form.
3327
58aec0d6
JR
33282009-03-24 Jason Rumney <jasonr@gnu.org>
3329
3330 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
3331 Calculate total size precisely. Decode environment variables
3332 before substituting. (Bug#38)
3333
553dd618
KH
33342009-03-24 Kenichi Handa <handa@m17n.org>
3335
3336 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 3337 encoding (Bug#2722).
553dd618 3338
c39ea606
JD
33392009-03-23 Jan Djärv <jan.h.d@swipnet.se>
3340
3341 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
3342 that gdpy is set.
3343
bc9b2b5e
AM
33442009-03-22 Alan Mackenzie <acm@muc.de>
3345
3346 * callint.c (Finteractive): Clarify the doc string - even
3347 promptless elements need \n separators.
3348
9f995a76
JR
33492009-03-22 Jason Rumney <jasonr@gnu.org>
3350
3351 * w32term.c (syms_of_w32term): Doc fix for
3352 x-use-underline-position-properties.
3353
22749e9a
EZ
33542009-03-21 Eli Zaretskii <eliz@gnu.org>
3355
3356 * w32.c (getpwuid): Change argument type to unsigned.
3357 (struct w32_id): Change type of `rid' member to unsigned.
3358 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
3359 argument ID to unsigned. All callers changed.
3360 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
3361
e00553bf
EZ
33622009-03-20 Eli Zaretskii <eliz@gnu.org>
3363
3364 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
3365 negative, produce a float value.
3366
3367 * dired.c (make_uid, make_gid): New functions.
3368 (Ffile_attributes): Use them to avoid negative UID and GID.
3369
f761d6b6
JB
33702009-03-20 Juanma Barranquero <lekktu@gmail.com>
3371
3372 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
3373 (syms_of_keyboard) <command-hook-internal, input-method-function>:
3374 Fix typos in docstrings.
3375
d507f8d7
KH
33762009-03-19 Kenichi Handa <handa@m17n.org>
3377
3378 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
3379 changed, use font_load_for_lface to get a new font object.
3380 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
3381
3382 * frame.c (x_set_font): Handle the case that ARG is a cons.
3383
c68845e0
GM
33842009-03-19 Glenn Morris <rgm@gnu.org>
3385
3386 * fileio.c (Fsubstitute_in_file_name): Doc fix.
3387
bfa49dd1
CY
33882009-03-19 Chong Yidong <cyd@stupidchicken.com>
3389
3390 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
3391
8458d4c1
KH
33922009-03-19 Kenichi Handa <handa@m17n.org>
3393
3394 * charset.c (load_charset_map_from_file): When a mapfile can't be
3395 loaded, signal an error.
3396
78e7d1fe
EZ
33972009-03-18 Eli Zaretskii <eliz@gnu.org>
3398
3399 * dired.c (Ffile_attributes): Make sure UID and GID are always
3400 positive, even if the value is too large for a positive EMACS_INT.
3401 Doc fix.
3402
3403 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3404
5da9fdfa
YM
34052009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3406
3407 * xmenu.c (xdialog_show): Move Fredisplay call ...
3408 (Fx_popup_dialog): ... here.
3409
7519c40d
SM
34102009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3411
3412 * dired.c (file_name_completion): Disable the first optimization just
3413 installed, since it is not implemented correctly.
3414
2cd298e2
SM
34152009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3416
3417 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 3418 only if the entry can affect bestmatch.
2cd298e2
SM
3419 Stop the search early, as Ftry_completion already does.
3420
48d37adf
CY
34212009-03-17 Chong Yidong <cyd@stupidchicken.com>
3422
e10c9c93 3423 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 3424
9286b16a
CY
34252009-03-15 Chong Yidong <cyd@stupidchicken.com>
3426
3427 * keyboard.c (parse_menu_item): Don't display remappings as menu
3428 equivalent bindings (Bug#788).
3429
f7b146dc
JR
34302009-03-15 Jason Rumney <jasonr@gnu.org>
3431
3432 * w32term.h (WM_EMACS_PAINT): New message.
3433 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3434 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3435 before passing to lisp thread. (Bug#950)
3436
f761d6b6 34372009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 3438
d93f9575
CY
3439 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3440 variable as it was never reset.
3441 (ns_term_init): Remove initialization of Lisp-settable defaults
3442 and ns_expand_space.
3443 (-setPanelFromDefaultValues): Remove ns_expand_space.
3444 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3445 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
3446 i.e. no additional spacing, similar to Carbon port.
3447
d93f9575
CY
3448 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3449 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 3450
305018ec
JD
34512009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3452
3453 * sound.c (alsa_configure): Remove call to deprecated
3454 snd_pcm_sw_params_set_xfer_align.
3455
f761d6b6 34562009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
3457
3458 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3459 after clicking in a detached tool bar.
3460 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3461
46e722a9
SM
34622009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3463
348db3dd
SM
3464 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3465 int/Lisp_Object mixup).
46e722a9 3466
a3d16f39
KH
34672009-03-13 Kenichi Handa <handa@m17n.org>
3468
3469 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 3470 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
3471 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3472 (set_fontset_font): Change ARG to a vector. Handle range_list in
3473 ARG correctly.
3474 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 3475 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
3476 the above change.
3477 (fontset_from_font): Fix previous change.
fe24f56a 3478 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
3479 entry. If FONTSET is the default fontset, don't set the extra
3480 slot of the returning char-table.
3481
b066e6b6
JB
34822009-03-12 Juanma Barranquero <lekktu@gmail.com>
3483
3484 * nsfns.m (Fx_close_connection): Doc fix.
3485 (Fns_do_applescript): Reflow docstring.
3486 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3487 (Fx_display_pixel_width, Fx_display_pixel_height)
3488 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3489 Fix typos in docstrings.
3490 (Fns_set_alpha): Fix typos in error messages.
3491
d472514e 34922009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 3493
d472514e 3494 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
3495 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3496 were used for such events.
3497
d472514e
JB
3498 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3499 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 3500
d472514e 3501 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
3502 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3503
fb930676
KH
35042009-03-11 Kenichi Handa <handa@m17n.org>
3505
ff85581a
KH
3506 * font.h (font_open_by_spec): Extern it.
3507
c50b7e98
KH
3508 * font.c (font_open_by_spec): New function.
3509 (font_open_by_name): Use font_open_by_spec.
3510
fb930676
KH
3511 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3512 fontset of the frame.
3513
3514 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3515 modify the default font of frames that use this fontset.
3516 (num_auto_fontsets): New variable.
3517 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3518 name. Be sure to set FONTSET_ASCII to the correct font name.
3519 (update_auto_fontset_alist): New function.
3520
df4e8455
JB
35212009-03-11 Juanma Barranquero <lekktu@gmail.com>
3522
3523 * makefile.w32-in: Update dependencies.
3524
0a375797
AR
35252009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3526
3527 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3528
61313fa3
SM
35292009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3530
3531 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3532
b55103fb
CY
35332009-03-10 Chong Yidong <cyd@stupidchicken.com>
3534
3535 * lread.c (Feval_buffer): Doc fix.
3536
dde2559c
KH
35372009-03-09 Kenichi Handa <handa@m17n.org>
3538
3539 * charset.c (Qfile_name_handler_alist): Extern it.
3540 (load_charset_map_from_file): Temporarily bind
3541 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3542
df4e8455 35432009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 3544
47f588bb
GM
3545 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3546 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 3547
4ddf94bd
AR
35482009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3549
4c9bdfc2
AR
3550 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3551 (x_set_window_size): Change back to calculated method of setting
3552 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
3553 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3554 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3555
fe41ae9e
AR
3556 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3557
4c9bdfc2
AR
3558 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3559 accelerator in parens under GNUstep.
3560
825d0875
KH
35612009-03-06 Kenichi Handa <handa@m17n.org>
3562
3563 These changes are to detect incorrect composition sequence without
f3b3be74 3564 looking ahead the source. (Bug#2370)
825d0875
KH
3565
3566 * coding.h: Include "composite.h".
3567 (enum compisition_state): New enum.
3568 (struct compisition_status): New struct.
3569 (struct iso_2022_spec): New member cmp_status.
3570 (struct emacs_mule_spec): New struct.
3571 (struct coding_system): New members ctext_extended_segment_len and
3572 embedded_utf_8. Change the union member
3573 spec.emacs_mule_full_support to spec.emacs_mule.
3574
3575 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3576 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3577 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3578 (ADD_COMPOSITION_DATA): New arg nbytes.
3579 (emacs_mule_char): New arg cmp_status.
3580 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3581 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3582 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3583 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3584 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3585 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3586 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3587 (EMACS_MULE_COMPOSITION_END): New macro.
3588 (emacs_mule_finish_composition): New function.
3589 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3590 (decode_coding_emacs_mule): Avoid long looking ahead while
3591 handling composition.
3592 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3593 (ENCODE_COMPOSITION_RULE): New macro.
3594 (finish_composition): New function.
3595 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3596 (DECODE_COMPOSITION_START): New implementation.
3597 (DECODE_COMPOSITION_END): Likewise.
3598 (STORE_COMPOSITION_RULE): New macro.
3599 (decode_coding_iso_2022): Avoid long looking ahead while handling
3600 composition, CTEXT extended segment, and embedded UTF-8.
3601 (setup_coding_system): For a coding of type iso-2022, reset
3602 CODING_ISO_EXTSEGMENT_LEN (coding) and
3603 CODING_ISO_EMBEDDED_UTF_8 (coding).
3604 (get_translation): Delete arguments last_block, from_nchars,
3605 to_nchars. Callers changed.
3606 (produce_chars): Don't modify charbuf. Adjusted for the change of
3607 get_translation.
98a326f7 3608 (produce_composition): Adjust for the new annotation sequence.
825d0875 3609 (handle_composition_annotation): Likewise.
98a326f7 3610 (consume_chars): Adjust for the change of get_translation.
825d0875 3611
ccbc4452
AR
36122009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3613
4ddf94bd 3614 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3615
988a7ddb
KH
36162009-03-05 Kenichi Handa <handa@m17n.org>
3617
3618 * font.c (font_select_entity): New function.
3619 (font_find_for_lface): Use font_select_entity to select a font.
3620
3621 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3622 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3623 font with C restriction.
3624
98a326f7 36252009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3626
be1bce46 3627 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3628
10ea2b82
JR
36292009-03-04 Jason Rumney <jasonr@gnu.org>
3630
2c93b248 3631 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3632 characters that have already been read. (Bug#2569)
2c93b248 3633
10ea2b82
JR
3634 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3635 Log an error message if check_image_size failed.
3636 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3637 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3638
71a0c011
EZ
36392009-03-02 Eli Zaretskii <eliz@gnu.org>
3640
3641 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3642 when decoding process output.
3643
2f63bba8
RS
36442009-03-01 Richard M Stallman <rms@gnu.org>
3645
3646 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3647
3648 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3649
0a9564cb
EZ
36502009-02-28 Eli Zaretskii <eliz@gnu.org>
3651
3652 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3653 (decode_coding_emacs_mule, decode_coding_iso_2022)
3654 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3655 (decode_coding_raw_text, decode_coding_charset)
3656 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3657 Honor inhibit-eol-conversion. (Bug #2186)
3658
449148b3
JR
36592009-02-28 Jason Rumney <jasonr@gnu.org>
3660
3661 * coding.c (detect_coding_charset): If not checking latin extra,
3662 fail on characters between 0x80 and 0xA0. (Bug#2354)
3663
a4aee864
EZ
36642009-02-28 Eli Zaretskii <eliz@gnu.org>
3665
3666 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3667 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3668
d88bee5a
GM
36692009-02-27 Glenn Morris <rgm@gnu.org>
3670
3671 * callint.c (Finteractive): Doc fix.
3672
a808f22d
KH
36732009-02-27 Kenichi Handa <handa@m17n.org>
3674
3675 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3676
caf8d60c
CY
36772009-02-27 Chong Yidong <cyd@stupidchicken.com>
3678
3679 * font.c (font_style_to_value): Set value for unknown symbols to
3680 100 instead of 255.
b61137ea
CY
3681 (weight_table, slant_table, width_table): Treat "unspecified" as
3682 the default value.
caf8d60c 3683
1a0de25c
JB
36842009-02-26 Juanma Barranquero <lekktu@gmail.com>
3685
3686 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3687
8fc45744
JB
36882009-02-25 Juanma Barranquero <lekktu@gmail.com>
3689
107bd7d1
JB
3690 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3691 error as soon as a recursive load is detected.
8fc45744 3692
f097e223
AR
36932009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3694
3695 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3696 before caching.
3697
8810a12f
KH
36982009-02-24 Kenichi Handa <handa@m17n.org>
3699
3700 * fontset.c (fontset_find_font): Fix the condition for checking
3701 unavailable font.
3702
2c7d1565
GM
37032009-02-24 Glenn Morris <rgm@gnu.org>
3704
3705 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3706 whitespace that confuses documentation.
3707
a20878b6
MB
37082009-02-23 Miles Bader <miles@gnu.org>
3709
3710 * process.c (Flist_system_processes, Fprocess_attributes)
3711 (syms_of_process): Rename `system-process-attributes' to
3712 `process-attributes'.
3713
b3b58c01
AS
37142009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3715
1b3b981b
AS
3716 * coding.h (struct coding_system): Make safe_charsets a pointer to
3717 unsigned char.
3718 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3719 being 255.
3720 (SAFE_CHARSET_P): Likewise.
3721 (setup_iso_safe_charsets): Properly setup safe_charsets.
3722 (Fdefine_coding_system_internal): Likewise.
3723 (setup_coding_system): Likewise. Remove unneeded casts.
3724 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3725 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3726 unneeded casts.
3727
b3b58c01
AS
3728 * insdel.c (del_range_2): Don't modify gap contents when called
3729 from decode_coding_object. (Bug#1809)
3730
0b6f228c
CY
37312009-02-21 Chong Yidong <cyd@stupidchicken.com>
3732
3733 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3734 Qfont_object.
3735 (Ftype_of): Recognize font objects.
3736
3737 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3738
3739 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3740 moved to data.c.
3741
52f8870b
AR
37422009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3743
3744 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3745 async_iconified. Based on a patch by Christian Lynbech
3746 <christian.lynbech@tieto.com>.
3747 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3748
7087d5e9
GM
37492009-02-20 Glenn Morris <rgm@gnu.org>
3750
3751 * syntax.c (Fskip_chars_forward): Fix doc typo.
3752
41d2ceef
CY
37532009-02-20 Chong Yidong <cyd@stupidchicken.com>
3754
3755 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3756
1a3b7ca6
CY
37572009-02-19 Chong Yidong <cyd@stupidchicken.com>
3758
3759 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3760
73cce38d
KH
37612009-02-19 Kenichi Handa <handa@m17n.org>
3762
3763 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3764 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3765
a51092ee
DN
37662009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3767
3768 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3769
c423ecca
KH
37702009-02-18 Kenichi Handa <handa@m17n.org>
3771
3772 * font.c (font_check_otf_features): Fix handling of `nil' element.
3773 (Ffont_spec): Describe :lang and :otf in the docstring.
3774
4c1958f4
AS
37752009-02-16 Andreas Schwab <schwab@suse.de>
3776
3777 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3778 string.
3779
5704f39a
KH
37802009-02-16 Kenichi Handa <handa@m17n.org>
3781
3782 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3783 (Bug#1723)
5704f39a 3784
8f0085aa
CY
37852009-02-14 Chong Yidong <cyd@stupidchicken.com>
3786
a057d86a 3787 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3788
3789 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3790 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3791
aff01dd9
EZ
37922009-02-14 Eli Zaretskii <eliz@gnu.org>
3793
3794 * msdos.c (MAX_SCREEN_BUF): New macro.
3795 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3796 Encode the entire run of glyphs sharing the same face, instead of
3797 doing that one glyph at a time (fixes a bug with displaying
3798 double-size characters).
3799
ba301db3
AR
38002009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3801
3802 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3803
3804 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3805 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3806 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3807
3808 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3809 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3810
51d861de
SM
38112009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3812
3813 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3814 invisible areas.
3815
7fed8996
JR
38162009-02-12 Jason Rumney <jasonr@gnu.org>
3817
631ea4fb
JR
3818 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3819 (add_font_entity_to_list): Call check_face_name even when family
3820 is unspecified.
3821
cb4a3e42
JR
3822 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3823 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3824 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3825
7fed8996 3826 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3827 raster fonts. (Bug#2219)
7fed8996 3828
895416e3
KH
38292009-02-12 Kenichi Handa <handa@m17n.org>
3830
3831 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3832 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3833 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3834 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3835 (find_automatic_composition): While looking forward and backward,
3836 check static composition. Fix where to stop looking forward.
3837 (composition_adjust_point): Fix checking of static composition.
3838 (Fcomposition_get_gstring): Pay attention to
1dacf998 3839 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3840
3841 * lisp.h (fast_looking_at): Extern it.
3842
3843 * search.c (fast_looking_at): New function.
3844
51d861de 3845 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3846 <struct glyph>.u.cmp.to.
3847 (append_composite_glyph): Likewise.
3848
51d861de 3849 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3850 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3851 composition.
51d861de 3852 (append_composite_glyph): Adjust for the change of
895416e3
KH
3853 <strcut glyph>.u.cmp.to.
3854
8510724d
JB
38552009-02-11 Juanma Barranquero <lekktu@gmail.com>
3856
3857 * casetab.c (init_casetab_once):
3858 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3859 * font.c (font_update_lface):
3860 * fontset.c (Fnew_fontset):
3861 * ftfont.c (ftfont_drive_otf):
3862 * xfont.c (xfont_open):
3863 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3864
294fa707
SM
38652009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3866
3867 * fileio.c (Fwrite_region): !NILP -> CONSP.
3868
b5bfebec
AS
38692009-02-10 Andreas Schwab <schwab@suse.de>
3870
3871 * process.c (send_process): Properly relocate pointer into data
adab88bd 3872 when using encoded data. (Bug#2272)
b5bfebec 3873
cb84a2be
KH
38742009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3875
3876 * coding.c (detect_coding_charset): Fix previous change.
3877
89e09428
JR
38782009-02-08 Jason Rumney <jasonr@gnu.org>
3879
3880 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3881 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3882
4470a277
AS
38832009-02-07 Andreas Schwab <schwab@suse.de>
3884
3885 * unexelf.c (unexec): Fix error message.
3886
3175b12a
AR
38872009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3888
3889 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3890 when modal window is active. (Bug #2152)
3175b12a
AR
3891 (applicationShouldTerminate:): Remove now-unneeded while loop
3892 around NSRunAlertPanel.
3893
3894 * nsmenu.m (popupSession): New file-global variable.
3895 (pop_down_menu): End the popupSession before closing dialog.
3896 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3897 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3898 don't query NSApp for events (just sleep instead).
3899
8434d0b8
EZ
39002009-02-07 Eli Zaretskii <eliz@gnu.org>
3901
51d861de
SM
3902 * coding.c (syms_of_coding) <translation-table-for-input>:
3903 Modify doc string to discourage use for character code unification.
8434d0b8 3904
aa82edfd
CY
39052009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3906
3907 * atimer.c (run_timers): Update pending_atimers.
3908
2d283c7c
CY
39092009-02-06 Chong Yidong <cyd@stupidchicken.com>
3910
eb306cab
CY
3911 * image.c (svg_load_image): Fix last change.
3912
2d283c7c
CY
3913 * xfns.c (Fx_create_frame): Signal an error if no font is
3914 found (Bug#2147).
3915
4d8e170e
JB
39162009-02-05 Juanma Barranquero <lekktu@gmail.com>
3917
3918 * character.c (syms_of_character) <script-representative-chars>:
3919 Fix typo in docstring.
3920
c96169a0
AR
39212009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3922
3923 * nsmenu.m (pop_down_menu): New function.
3924 (ns_popup_dialog): Call it on unwind.
3925 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3926 call timer_check() (Bug#2154).
3927 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3928 handling_signal is set.
3929 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3930
31fd7c5c 3931 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
3932
3933 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3934
3935 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3936
51d861de
SM
3937 * keyboard.c (poll_for_input_1, handle_async_input):
3938 Set handling_signal under HAVE_NS.
c96169a0 3939
aacd8ba1
GM
39402009-02-04 Glenn Morris <rgm@gnu.org>
3941
3942 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3943
4cb75c4b
KH
39442009-02-04 Kenichi Handa <handa@m17n.org>
3945
3946 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3947
3948 * charset.c (Fchar_charset): New optional arg restriction.
3949
3950 * coding.h (coding_system_charset_list): Extern it.
3951
3952 * coding.c (coding_system_charset_list): New function.
3953
3954 * composite.c: Include coding.h and termhooks.h.
3955 (composition_gstring_p): Fix for the terminal case.
3956 (composition_gstring_width): Likewise.
3957 (fill_gstring_body): Likewise.
3958 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3959 the frame.
3960 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3961 is within a composition.
867d4bb3 3962 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
3963
3964 * term.c (encode_terminal_code): Fix handling of composition.
3965 (produce_composite_glyph): For static composition, get pixel_width
3966 from struct composition.
3967
826ba17e
AS
39682009-02-02 Andreas Schwab <schwab@suse.de>
3969
3970 * unexelf.c (unexec): Handle unaligned bss offset.
3971
8ad093db
AR
39722009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3973
3974 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3975 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 3976
8ad093db
AR
3977 * keyboard.c (handle_interrupt): Don't call
3978 quit_throw_to_read_char() under NS.
d0a76a6e 3979
8ad093db
AR
3980 * blockinput.h: Remove NS-specific code.
3981
4d18a7a2
DN
39822009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3983
db878925
DN
3984 * dispnew.c (window_change_signal): Don't try to get the size of a
3985 suspended tty frame.
3986 * term.c (Fresume_tty): Resize if the size has changed while the
3987 tty was suspended.
3988
4d18a7a2
DN
3989 * alloc.c (mark_stack): Properly conditionalize previous change.
3990
8984df7c
JB
39912009-01-30 Juanma Barranquero <lekktu@gmail.com>
3992
3993 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3994 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3995 Remove; this code is not used on Windows.
3996
75f4f1ac
EZ
39972009-01-30 Eli Zaretskii <eliz@gnu.org>
3998
3999 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
4000 EOLs that also has stray ^M characters.
4001
07a1e794
JB
40022009-01-30 Juanma Barranquero <lekktu@gmail.com>
4003
4004 * atimer.c (run_timers, alarm_signal_handler):
4005 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
4006 * w32inevt.c (w32_console_read_socket):
4007 * w32term.c (w32_read_socket):
4008 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
4009
a8b11cc9
CY
40102009-01-30 Chong Yidong <cyd@stupidchicken.com>
4011
4012 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
4013 Initialize it as a relative filename pattern.
4014 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
4015 (Fcall_process_region): Simplify temp file creation using
4016 temporary-file-directory.
4017
c279587b
EZ
40182009-01-29 Eli Zaretskii <eliz@gnu.org>
4019
4020 * msdos.c: Rename pending_signals to msdos_pending_signals.
4021 (sig_suspender, sigprocmask): Adjust.
4022
a8fe3242
CY
40232009-01-29 Chong Yidong <cyd@stupidchicken.com>
4024
4025 * keyboard.c (pending_signals): New var.
4026 (poll_for_input, input_available_signal, init_keyboard): Set it.
4027 (process_pending_signals): New function.
4028
4029 * lisp.h (QUIT): Check pending_signals instead of
4030 interrupt_input_pending. Use process_pending_signals.
4031
51d861de 4032 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 4033
51d861de 4034 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
4035
4036 * sysdep.c (emacs_write): Use process_pending_signals.
4037
4038 * xterm.c (XTread_socket): Update pending_signals.
4039
4040 * w32term.c (w32_read_socket): Update pending_signals.
4041
4042 * w32inevt.c (w32_console_read_socket): Update pending_signals.
4043
6570a1c4
KH
40442009-01-29 Kenichi Handa <handa@m17n.org>
4045
4046 * xftfont.c (xftfont_has_char): New function.
4047 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
4048
d72a4afa
AR
40492009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4050
4051 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
4052 under GNUstep.
4053 (ns_query_color): New declaration.
4054
4055 * nsterm.m (ns_confirm_quit): New variable.
4056 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
4057 (EmacsApp-applicationShouldTerminate:): Use it.
4058 (EmacsPrefsController): Let user set it.
4059 (ns_query_color): New function.
4060 (ns_defined_color): Use it.
4061 (ns_initialize): Drop.
4062 (ns_term_init): Add two lines from ns_initialize(), and set
4063 input_interrupt_mode to nil.
4064
4065 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 4066 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 4067
9fe78804
KH
40682009-01-28 Kenichi Handa <handa@m17n.org>
4069
4070 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
4071 (fontset_get_font_group): Remember that no font-group is specified
4072 for C.
9fe78804 4073
fa57de36
CY
40742009-01-27 Chong Yidong <cyd@stupidchicken.com>
4075
930600e9
CY
4076 * fns.c (concat): Check for string overflow (bug#1787).
4077
fa57de36
CY
4078 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
4079 Quadruple undo limits (bug#1501).
4080
7179ce7b
KH
40812009-01-27 Kenichi Handa <handa@m17n.org>
4082
4083 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
4084 directly use GT_Get_Char_index.
4085
4086 * xftfont.c (struct xftfont_info): New member `index'.
4087
4088 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 4089 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 4090
5be8fcc0
CY
40912009-01-26 Kenichi Handa <handa@m17n.org>
4092
4093 * fontset.c (fontset_find_font): Fix handling of non-cons return
4094 value of fontset_get_font_group.
4095 (fontset_font): Revert last change.
4096
19ae3e61
JR
40972009-01-26 Jason Rumney <jasonr@gnu.org>
4098
4099 * w32font.c (w32font_list_internal): Return quickly if registry is
4100 unknown. Simplify final return.
4101 (add_font_entity_to_list): Break complex logic down into more
4102 manageable chunks. Move unknown registry check to
4103 w32font_list_internal.
4104
8612b71a
AR
41052009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
4106
4107 Changes to remove Feval calls from GUI under NS.
4108
d8038940
JB
4109 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
4110 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
4111 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
4112
4113 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
4114 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
4115 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
4116 instead of NON_ASCII_KEYSTROKE_EVENT.
4117 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
4118 (EmacsApp-applicationShouldTerminate:): Query user.
4119 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
4120 instead of Feval.
4121
4122 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
4123
4124 * keyboard.c (kbd_buffer_get_event): Check for it.
4125 (keys_of_keyboard): Define lispy keys for
4126 ns-put/unput-working-text.
4127
4128 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
4129 versions.
4130 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
4131
6288ae55
CY
41322009-01-25 Chong Yidong <cyd@stupidchicken.com>
4133
4134 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 4135 setting current_buffer directly. (Bug#2044)
6288ae55 4136
289e7f8f
CY
41372009-01-24 Chong Yidong <cyd@stupidchicken.com>
4138
5ce87308 4139 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 4140 any work. (Bug#1952, bug#1990).
5ce87308 4141
64cc3cf6 4142 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 4143
b3243e6f
AR
41442009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4145
4146 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
4147 (ns_no_defaults): New declaration.
4148 (main): Use it.
e0d2e69a 4149
d900b2af 4150 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 4151
d900b2af 4152 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 4153
d900b2af
AR
4154 * nsterm.m (ns_no_defaults): New variable.
4155 (ns_initialize): Don't read defaults when ns_no_defaults.
4156 (EmacsView-readSelectionFromPasteboard:)
4157 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 4158 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
4159 (ns_dumpglyphs_stretch): New function.
4160 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 4161 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 4162
e0d2e69a
AR
4163 * nsimage.m (setPixmapData:): Set to ignore image DPI.
4164
3ac71f5d
CY
41652009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
4166
4167 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
4168 call for Sparc64.
4169
3fe53a83
AR
41702009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4171
4172 * nsfns.m:
4173 * nsgui.h:
4174 * nsmenu.m:
4175 * nsselect.m:
4176 * nsterm.h:
4177 * nsterm.m: Remove '23' comments that indicated code added during
4178 update from emacs-20 -> emacs-23.
4179
10f87c6f 41802009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
4181
4182 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 4183 ns_alternate_modifier. (Bug#1217)
a3b53a85 4184
c7cef62d
AR
4185 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
4186 Display all shortcuts, including those w/o super modifier.
4187
575fb8bd
AR
4188 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
4189
918b848b
CY
41902009-01-22 Chong Yidong <cyd@stupidchicken.com>
4191
4192 * fileio.c (Vwrite_region_post_annotation_function)
4193 (Vwrite_region_annotation_buffers): New vars.
4194 (build_annotations_unwind): Just reset
4195 Vwrite_region_annotation_buffers.
4196 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
4197 Call write-region-post-annotation-function.
4198 (build_annotations): Add to Vwrite_region_annotation_buffers if
4199 buffer changes.
4200
a39e2539
AR
42012009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4202
4203 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
4204 Tiger.
51d861de
SM
4205 * nsfns.m (ns_do_applescript):
4206 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 4207
35ed44db
AR
42082009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4209
4210 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
4211
cbe0b5bf
AR
42122009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4213
4214 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 4215
6049d3a0
AR
4216 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
4217
4218 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
4219 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
4220 handle Ctrl-tab. (Bug#1841)
4221 (ns_get_color): Use unsigned long long for scanned hex string value.
4222 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 4223 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 4224 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 4225 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 4226 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 4227 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 4228 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 4229
d3810c21 4230 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 4231 DPI. (Bug#1316)
d3810c21
AR
4232 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
4233 values in onTiger section.
4c7077c3 4234
e301e634
CY
42352009-01-19 Chong Yidong <cyd@stupidchicken.com>
4236
7f82490b
CY
4237 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
4238 Check return value of font_spec_from_name.
64cc3cf6 4239 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
4240
4241 * font.c (font_spec_from_name): Return Qnil if font name could not
4242 be parsed.
4243 (font_parse_name): Treat a `?' character as part of an XLFD.
4244
e301e634
CY
4245 * fns.c (Fsubstring): Doc fix.
4246
1c0db158
KH
42472009-01-19 Kenichi Handa <handa@m17n.org>
4248
51d861de 4249 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
4250 (ftfont_list): Likewise.
4251
acf20901
JB
42522009-01-18 Juanma Barranquero <lekktu@gmail.com>
4253
fff4e459
JB
4254 * dbusbind.c (Fdbus_register_signal):
4255 * process.c (conv_sockaddr_to_lisp):
4256 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
4257
acf20901
JB
4258 * callproc.c (Fgetenv_internal): Doc fix.
4259
e7abcdfb
CY
42602009-01-16 Chong Yidong <cyd@stupidchicken.com>
4261
4262 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
4263 it is not even used.
4264
b60861e6
GM
42652009-01-16 Glenn Morris <rgm@gnu.org>
4266
4267 * font.c (Ffont_variation_glyphs): Silence compiler.
4268
8db52afe
JB
42692009-01-15 Juanma Barranquero <lekktu@gmail.com>
4270
4271 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
4272 Reported by David Robinow <drobinow@gmail.com>.
4273
4cddb209
KH
42742009-01-15 Kenichi Handa <handa@m17n.org>
4275
51d861de 4276 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 4277
f247f67b
JR
42782009-01-14 Jason Rumney <jasonr@gnu.org>
4279
4280 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 4281 never a fontset. (Bug#1562)
f247f67b 4282
f56a4450
KH
42832009-01-14 Kenichi Handa <handa@m17n.org>
4284
4285 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 4286 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 4287
4e99855e
CY
42882009-01-13 Chong Yidong <cyd@stupidchicken.com>
4289
4290 * font.c (font_clear_prop): If clearing the family, clear the font
4291 width index too.
4292
fff4e459 4293 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 4294
24f01470
JB
42952009-01-12 Juanma Barranquero <lekktu@gmail.com>
4296
4297 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
4298 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
4299 functions, use sizeof.
4300
a41240a3
MR
43012009-01-12 Martin Rudalics <rudalics@gmx.at>
4302
4303 * keyboard.c (read_char): Fix case where last_nonmenu_event
4304 returned a bad value with submenus. (Bug#447)
4305
944636b8
CY
43062009-01-12 Chong Yidong <cyd@stupidchicken.com>
4307
4308 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
4309 family, clear the font width index too.
4310
0dad7c6f
JR
43112009-01-11 Jason Rumney <jasonr@gnu.org>
4312
4313 * keyboard.c (cmd_error_internal): Exit when errors occur before
4314 frame creation and not in daemon mode. (Bug#1836)
4315
7c2363af
CY
43162009-01-10 Chong Yidong <cyd@stupidchicken.com>
4317
4318 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
4319 of a display vector, backtrack.
4320 (try_window_reusing_current_matrix): Check glyph type before
4321 referencing charpos member.
4322
97b1b294
EZ
43232009-01-10 Eli Zaretskii <eliz@gnu.org>
4324
4325 Fix Bug #876:
4326
4327 * coding.c (inhibit_null_byte_detection): New variable.
4328 (detect_coding, detect_coding_system): Don't pay attention to null
4329 bytes if inhibit_null_byte_detection is non-zero.
51d861de 4330 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
4331 <inhibit-iso-escape-detection>: Doc fix.
4332
4624b6e3
JR
43332009-01-09 Jason Rumney <jasonr@gnu.org>
4334
4335 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 4336 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
4337 Only report Unicode Plane 2 fonts as unicode-sip.
4338
323b840c
CY
43392009-01-09 Chong Yidong <cyd@stupidchicken.com>
4340
51d861de
SM
4341 * xfaces.c (Fx_font_family_list): Delete function.
4342 Move compatibility version to faces.el.
323b840c 4343
51d861de 4344 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 4345
eba7400d
MR
43462009-01-09 Martin Rudalics <rudalics@gmx.at>
4347
4348 * frame.c (x_set_frame_parameters): Remember requested value for
4349 fullscreen before it's reset by the parameter handler.
4350
4b09796d
GM
43512009-01-09 Glenn Morris <rgm@gnu.org>
4352
4353 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 4354 (last_command_event): ... and update all users.
4b09796d
GM
4355 (last_input_char): For clarity, rename to...
4356 (last_input_event): ... and update all users.
4357 (last-command-char, last-input-char): Move to subr.el as aliases.
4358 * cmds.c, commands.h: Update for last_command_char rename.
4359
14ccea62
CY
43602009-01-08 Chong Yidong <cyd@stupidchicken.com>
4361
51d861de 4362 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 4363
5f004711
JR
43642009-01-08 Jason Rumney <jasonr@gnu.org>
4365
4366 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
4367 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
4368 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
4369 Don't declare.
fff4e459 4370 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
4371 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
4372
b71f6f73
KH
43732009-01-07 Kenichi Handa <handa@m17n.org>
4374
50b06221 4375 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 4376 remember the coding system used for decoding in
50b06221
KH
4377 coding_system (Bug#1039).
4378
b71f6f73 4379 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 4380 breaking the loop. (Bug#870)
b71f6f73
KH
4381 (decode_coding_utf_16, decode_coding_emacs_mule)
4382 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4383 (decode_coding_charset): Likewise.
4384
56f668f7
MR
43852009-01-05 Martin Rudalics <rudalics@gmx.at>
4386
4387 * frame.c (x_set_frame_parameters): Make sure height (width) get
4388 applied when fullwidth (fullheight) is set. (Bug#1522)
4389
5da9424d
JB
43902009-01-04 Juanma Barranquero <lekktu@gmail.com>
4391
4392 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4393 (utc_base): Declare as ULONGLONG, not long double.
4394 (convert_time_raw): Delete.
4395 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4396 (initialize_utc_base): New function.
4397 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4398 (convert_from_time_t): Use initialize_utc_base; compute result with
4399 64-bit arithmetic.
4400 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4401
c4605e09
EZ
44022009-01-03 Eli Zaretskii <eliz@gnu.org>
4403
9acef61c 4404 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
4405 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4406 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4407 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4408 [!subprocesses]: Define.
4409 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4410 (Flist_system_processes, Fsystem_process_attributes)
4411 [!subprocesses]: Call list_system_processes and
4412 system_process_attributes instead of returning Qnil.
4413
9acef61c
JB
4414 * dosfns.c (system_process_attributes, list_system_processes):
4415 New functions.
c4605e09
EZ
4416
4417 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4418
4419 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4420 Don't use the default (no-op) implementation.
4421
8b7d0a16
JR
44222009-01-03 Jason Rumney <jasonr@gnu.org>
4423
a6d46bc1
JR
4424 * keyboard.c (parse_modifiers_uncached): Wheel events are
4425 clicks (bug#687).
4426
8b7d0a16
JR
4427 * w32term.c (x_query_colors, x_query_color): New functions.
4428
4429 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4430 (svg_load_image): Cast returned pointers from dynamically loaded
4431 functions. Eliminate W32 specific code.
4432
bfe11752
DN
44332009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4434
89e2438a
DN
4435 * nsfns.m (x_set_foreground_color, x_set_background_color)
4436 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4437 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4438 x_ prefix instead of ns_. Update references.
4439 (syms_of_nsfns): Add a FIXME comment.
4440
4441 * nsterm.m (x_set_cursor_type): New prototype.
4442 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4443
bfe11752
DN
4444 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4445 for Solaris instead of incorrectly providing Qutime and Qcutime.
4446
031da700
EZ
44472009-01-02 Eli Zaretskii <eliz@gnu.org>
4448
4449 * w32.c (process_times): Compute sum of utime and stime.
4450 (system_process_attributes): Add Qtime to the alist.
4451
4452 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4453 and add them to the alist.
4454
4455 * process.c (top level) <Qtime, Qctime>: New variables.
4456 (syms_of_process): staticpro them.
4457 (Fsystem_process_attributes): Add their documentation to the doc
4458 string.
4459
4460 * process.h: Declare Qtime and Qctime.
4461
df23bf08
JR
44622009-01-02 Jason Rumney <jasonr@gnu.org>
4463
9acef61c 4464 * image.c (Qgobject): New symbol.
df23bf08
JR
4465 (syms_of_image): Initialize it.
4466 (init_svg_functions): Load some functions from gobject library.
4467
5bbdf7aa
DN
44682009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4469
4470 * frame.c (make_terminal_frame): Remove redundant code and useless
4471 block.
4472
63136da6
AS
44732009-01-01 Andreas Schwab <schwab@suse.de>
4474
4475 * process.c (conv_sockaddr_to_lisp): Add workaround for
4476 getsockname bug on BSD.
4477
9ef69046
CY
44782009-01-01 Chong Yidong <cyd@stupidchicken.com>
4479
d6fafbe0
CY
4480 * xfns.c (x_create_tip_frame): Set border width of the X window.
4481
51d861de 4482 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 4483
f9c34147
JR
44842009-01-01 Jason Rumney <jasonr@gnu.org>
4485
9acef61c 4486 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
4487 Don't block input, as per earlier xterm.c changes.
4488
f5497e45
AR
44892008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4490
4491 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4492 (ns_appkit_version_int): New function.
4493 (x-server-version): Use ns_appkit_version_int and follow 21+
4494 convention of returning 3 integers.
4495
c19cab20
KH
44962008-12-30 Kenichi Handa <handa@m17n.org>
4497
4498 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4499 (CHAR_SURROGATE_PAIR_P): New macro.
4500
4501 * font.h (struct font_driver): New member get_variation_glyphs.
4502
9acef61c 4503 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
4504 (Ffont_variation_glyphs): New function.
4505 (syms_of_font): Defsubr it.
4506
4507 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4508 ftfont_variation_glyphs.
4509 (setup_otf_gstring): New function.
4510 (ftfont_drive_otf): Use it.
4511 (ftfont_shape_by_flt): Handle variation selector.
4512 (ftfont_variation_glyphs): New function.
4513
28cd591f
MR
45142008-12-30 Martin Rudalics <rudalics@gmx.at>
4515
4516 * frame.c (Vemacs_iconified): Remove.
4517
7f714baf
JR
45182008-12-30 Jason Rumney <jasonr@gnu.org>
4519
4520 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 4521 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 4522
9d2d22ab
CY
45232008-12-30 Chong Yidong <cyd@stupidchicken.com>
4524
4525 * indent.c (Fvertical_motion): Don't advance iterator if we have
4526 reseated to the desired position.
4527
4528 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4529 checking for pos match.
4530
545312c2
KH
45312008-12-30 Kenichi Handa <handa@m17n.org>
4532
1ede3eb6
KH
4533 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4534 just get the low 8-bit of the code.
4535
545312c2
KH
4536 * font.c (font_intern_prop): Validate str as multibyte.
4537
bd7bbf29
DN
45382008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4539
31e0750e
DN
4540 * dispextern.h (struct face): Move lface and hash from the middle
4541 of bitfields.
4542
bd7bbf29
DN
4543 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4544
b5672e7c
DN
45452008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4546
4547 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4548 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4549 instead of intervals.h.
4550
d704470f
AS
45512008-12-26 Andreas Schwab <schwab@suse.de>
4552
4553 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4554 cons.
4555
54b33868
MR
45562008-12-26 Martin Rudalics <rudalics@gmx.at>
4557
4558 * textprop.c (Qminibuffer_prompt): New variable.
4559 (syms_of_textprop): Initialize it.
4560 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4561 in minibuffer-prompt face. (Bug#1662)
4562
40b615d6
JR
45632008-12-25 Jason Rumney <jasonr@gnu.org>
4564
4565 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4566
baae5c2d
JR
45672008-12-24 Jason Rumney <jasonr@gnu.org>
4568
4569 * ralloc.c (r_alloc_reset_variable): New function.
4570
4571 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4572 record of what points where. (Bug#716)
baae5c2d 4573
a9051c88
DN
45742008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4575
4576 * minibuf.c (read_minibuf): Follow the non-interactive case when
4577 running as a daemon, before detaching.
4578
8b146312
AS
45792008-12-22 Andreas Schwab <schwab@suse.de>
4580
4581 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4582 * gtkutil.c (free_widget_value): Use xfree instead of free.
4583
56f2de10
MR
45842008-12-22 Martin Rudalics <rudalics@gmx.at>
4585
4586 * frame.c (delete_frame): New function derived from
4587 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4588 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4589 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4590 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4591 * frame.h: Extern delete_frame.
4592 * window.c (window_loop):
4593 * terminal.c (delete_terminal):
4594 * xterm.c (x_connection_closed):
4595 * xfns.c (Fx_hide_tip):
9acef61c 4596 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4597
1fc200d6
JR
45982008-12-21 Jason Rumney <jasonr@gnu.org>
4599
4600 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4601 when character maps to .notdef character.
4602
5e252df2
SM
46032008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4604
4605 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4606
99b72cc4
JR
46072008-12-20 Jason Rumney <jasonr@gnu.org>
4608
4609 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4610 a graphical frame on Windows. (Bug#1325)
99b72cc4 4611
acc49a52
JD
46122008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4613
4614 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4615
6ea15123
CY
46162008-12-20 Chong Yidong <cyd@stupidchicken.com>
4617
4618 * minibuf.c (Fread_buffer): Doc fix.
4619
b2dab6c8
JR
46202008-12-20 Jason Rumney <jasonr@gnu.org>
4621
54ea0c87 4622 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4623 server name in UNC paths. (Bug#719)
54ea0c87 4624
b2dab6c8 4625 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4626 charbuf. (Bug#1035)
b2dab6c8 4627
6d1921be
DN
46282008-12-19 Daniel Engeler <engeler@gmail.com>
4629
4630 * sysdep.c (serial_configure): Fix typo.
4631
53934c98
DN
46322008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4633
4634 * sysdep.c: Include alloca.h.
f4f634e8
DN
4635 (system_process_attributes): Add implementation for Solaris.
4636
4637 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4638
06e111a6
DN
46392008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4640
4641 Reorganize implementation of Flist_system_processes and
4642 Fsystem_process_attributes. No functional changes.
4643 * process.c: Don't #include pwd.h, grp.h and limits.h.
4644 (Flist_system_processes): Just call list_system_processes.
4645 (Fsystem_process_attributes): Just call system_process_attributes.
4646 (procfs_list_system_processes, time_from_jiffies)
4647 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4648 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4649
4650 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4651 (list_system_processes): Rename from
4652 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4653 Provide a do nothing implementation.
4654 (system_process_attributes): Rename from
4655 procfs_list_system_processes.
4656 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4657 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4658
4659 * w32.c (list_system_processes): Rename from
4660 w32_list_system_processes.
4661 (system_process_attributes): Rename from
4662 w32_system_process_attributes.
4663
4664 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4665
4666 * process.h (w32_list_system_processes)
4667 (w32_system_process_attributes): Remove.
362654a6
JB
4668 (list_system_processes, system_process_attributes):
4669 New prototypes.
06e111a6 4670
6a705b23
KH
46712008-12-19 Kenichi Handa <handa@m17n.org>
4672
4673 * xfont.c (xfont_decode_coding_xlfd): New function.
4674 (xfont_encode_coding_xlfd): New function.
4675 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4676 (xfont_list): Decode and encode XLFD by iso-8859-1.
4677 (xfont_match): Likewise.
4678 (xfont_list_family): Likewise.
4679 (xfont_open): Likewise.
4680
d66c0241 4681 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4682 names are utf-8.
4683
d66c0241 4684 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4685 names are utf-8.
4686
5a130941
JD
46872008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4688
4689 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4690 changed.
bfd20325
JD
4691 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4692 clicked on a detached tool bar button.
5a130941 4693
fd95644b
DN
46942008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4695
4696 * emacs.c (main): Print and error and exit when no data is read
4697 from the pipe.
4698
e6eee6ae
JR
46992008-12-17 Jason Rumney <jasonr@gnu.org>
4700
4701 * w32font.c (w32font_has_char): Always return -1.
4702
a35dd56b
KH
47032008-12-16 Kenichi Handa <handa@m17n.org>
4704
4705 * font.c (font_open_entity): Fix previous change.
4706
0e3635c2
DN
47072008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4708
4709 * process.c: Include <limits.h>.
4710
d4835507 47112008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4712
4713 * font.c (font_update_drivers): Fix mistake in reconstructing the
4714 driver list.
4715
47162008-12-16 Chong Yidong <cyd@stupidchicken.com>
4717
4718 * font.c (font_clear_cache): Fix format of font cache data.
4719
e2cbc401
CY
47202008-12-15 Chong Yidong <cyd@stupidchicken.com>
4721
4722 * xftfont.c (xftfont_open): Free Xft font pattern if
4723 XftFontOpenPattern fails.
4724
4725 * xterm.c (x_free_frame_resources): Remove extraneous call to
4726 free_frame_faces.
4727
b131d535
CY
47282008-12-13 Chong Yidong <cyd@stupidchicken.com>
4729
4730 * xterm.c (x_delete_display): Move xim_close_dpy call to
4731 x_delete_terminal.
4732 (x_delete_terminal): Call xim_close_dpy.
4733
e6df5336
JR
47342008-12-13 Jason Rumney <jasonr@gnu.org>
4735
4736 * w32font.c (intern_font_name): New function.
4737 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4738 (w32font_open_internal, Fx_select_font): Decode font name.
4739 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4740
4741 * w32font.h (intern_font_name): Declare new function.
4742
4743 * w32uniscribe.c (add_opentype_font_name_to_list):
4744 Use intern_font_name.
4745
20d68145
CY
47462008-12-13 Chong Yidong <cyd@stupidchicken.com>
4747
9f2554de
CY
4748 * frame.c (Fdelete_frame): Call free_font_driver_list.
4749
3d9bec9a
CY
4750 * font.c (free_font_driver_list): Implement missing function.
4751
20d68145
CY
4752 * w32term.c (w32_term_init): Don't initialize the image cache
4753 here; it will be done in init_frame_faces.
4754
4755 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4756 (struct x_display_info): Remove unused member null_pixel. New
4757 member xim_callback_data.
4758
4759 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4760 (xim_initialize): Save pointer to callback function data.
4761 (xim_close_dpy): Free callback function data. Call XCloseIM,
4762 reverting 2008-11-04 change by David Smith.
4763 (x_term_init): Don't initialize the image cache here; it will be
4764 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4765 (x_delete_display): Free x_dnd_atoms member.
4766
96f9306b
KH
47672008-12-13 Kenichi Handa <handa@m17n.org>
4768
6dec9044
JB
4769 * font.c (font_rescale_ratio): Moved from xfaces.c.
4770 Argument type changed. Handle a font-spec too.
96f9306b 4771 (font_score): Check Vface_font_rescale_alist.
6dec9044 4772 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4773
4774 * xfaces.c (font_rescale_ratio): Moved to font.c.
4775
8d5b4964
CY
47762008-12-13 Chong Yidong <cyd@stupidchicken.com>
4777
4778 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4779
e6df5336
JR
47802008-12-12 Jason Rumney <jasonr@gnu.org>
4781
4782 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4783 Vwindow_system_version to the real w32 major version.
4784
97c6058a
DN
47852008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4786
4787 * term.c (init_tty): Move setting the terminal name before the
4788 potential user: maybe_fatal.
4789
ec4e88d7
CY
47902008-12-11 Chong Yidong <cyd@stupidchicken.com>
4791
d4835507
JB
4792 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4793 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4794
b4233ec9
JR
47952008-12-11 Jason Rumney <jasonr@gnu.org>
4796
8ec71e23 4797 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4798 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4799
b4233ec9 4800 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4801 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4802
011a0143
JB
48032008-12-11 Juanma Barranquero <lekktu@gmail.com>
4804
4805 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4806
3c309f34
JB
48072008-12-11 Juanma Barranquero <lekktu@gmail.com>
4808
4809 * process.c (Fsystem_process_attributes, syms_of_process):
4810 Fix typo in name of Ssystem_process_attributes.
4811 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4812
fedc6ab5
JB
48132008-12-11 Juanma Barranquero <lekktu@gmail.com>
4814
4815 * syntax.c (Fmodify_syntax_entry): Doc fix.
4816
ba3de0e8
JB
48172008-12-10 Juanma Barranquero <lekktu@gmail.com>
4818
4819 * font.c (Ffont_spec): Move usage to end of docstring.
4820
174f1c74
JR
48212008-12-10 Jason Rumney <jasonr@gnu.org>
4822
4823 * w32font.c (Qcham): New symbol.
4824 (font_supported_scripts): Add cham, and comments for other new
4825 scripts in bitfield from OpenType spec.
9d32f818
JR
4826 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4827 contain characters beyond the bmp.
174f1c74 4828
7b649478
KH
48292008-12-10 Kenichi Handa <handa@m17n.org>
4830
4831 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4832 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4833 Qunicode_sip.
4834
2133e2d1
JB
48352008-12-10 Juanma Barranquero <lekktu@gmail.com>
4836
4837 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4838 (Fcoding_system_put): Use QCdefault_char.
4839 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4840
9af886ee
CY
48412008-12-09 Chong Yidong <cyd@stupidchicken.com>
4842
74d819eb
CY
4843 * xftfont.c (syms_of_xftfont): Fix typo.
4844
4ccfa1c0 4845 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4846
7c19d3ae
DN
48472008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4848
4849 * emacs.c (main): Close daemon_pipe on exec.
4850
567826bb
CY
48512008-12-08 Chong Yidong <cyd@stupidchicken.com>
4852
4853 * termchar.h (struct tty): New members termcap_term_buffer and
4854 termcap_strings_buffer.
4855
4856 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4857 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4858 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4859 All callers changed.
4860 (init_tty): Store termcap data and string buffers in new struct
4861 tty members termcap_term_buffer and termcap_strings_buffer.
4862 (delete_tty): Free them.
4ccfa1c0 4863 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4864
aa96c42b
SZ
48652008-12-07 Seiji Zenitani <zenitani@mac.com>
4866
4867 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4868 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4869
b7e1d896
CY
48702008-12-06 Chong Yidong <cyd@stupidchicken.com>
4871
4872 * coding.c (make_conversion_work_buffer): Disable buffer
4873 modification hooks in the work buffer.
4874
b5ec91a5
EZ
48752008-12-05 Eli Zaretskii <eliz@gnu.org>
4876
4877 * process.c (procfs_system_process_attributes): If `nread' has a
4878 negative value, assign zero to it.
4879
a5d2a52b
CY
48802008-12-05 Chong Yidong <cyd@stupidchicken.com>
4881
68c5540b 4882 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4883
7bf1bb21
KH
48842008-12-05 Kenichi Handa <handa@m17n.org>
4885
4886 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4887 second character is a combining character.
4888
2fdc7d00
EZ
48892008-12-05 Eli Zaretskii <eliz@gnu.org>
4890
4891 * process.c (procfs_system_process_attributes): Don't use cmd,
4892 cmdsize, and q without initializing them first.
4893
bf6bfba8
JR
48942008-12-04 Jason Rumney <jasonr@gnu.org>
4895
4896 * w32font.c (w32font_draw): Initialize orig_clip before getting
4897 it, and delete it when finished.
4898
a3b1a468
DN
48992008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4900
4901 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4902 case when running as a daemon before detaching.
4903
8b8be8eb
JB
49042008-12-03 Juanma Barranquero <lekktu@gmail.com>
4905
805f2638 4906 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 4907
b1bde622
KH
49082008-12-03 Kenichi Handa <handa@m17n.org>
4909
e500c47d
KH
4910 * font.c (font_at): Set `multibyte' at first.
4911
ca516334
KH
4912 * coding.c (decode_coding_charset): Check type of an element of
4913 vector VALIDS.
7bf1bb21 4914 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 4915
4ccfa1c0 4916 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
4917 (font_for_char): Likewise.
4918
1e5ecd37
CY
49192008-12-03 Chong Yidong <cyd@stupidchicken.com>
4920
d5b01609 4921 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
4922 (font_update_lface): Handle fonts with corrupted size specs,
4923 i.e. non-int and non-float.
d5b01609 4924
11e3a6e4 4925 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 4926 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 4927 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 4928
ab06788b
CY
4929 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4930
1e5ecd37 4931 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 4932 underline_minimum_offset for underline position.
1e5ecd37 4933
63c125ab
DN
49342008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4935
4936 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4937
4938 * character.c (c_string_width): Specify the type for LEN.
4939
3a8406e1
KH
49402008-12-03 Kenichi Handa <handa@m17n.org>
4941
4ccfa1c0 4942 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 4943 (decode_coding_utf_8): Likewise.
4ccfa1c0 4944 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 4945 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 4946
651df7d9
CY
49472008-12-02 Chong Yidong <cyd@stupidchicken.com>
4948
4949 * keyboard.c (make_lispy_position): Only use PT if the selected
4950 window is current.
4951
1f625c6c
AS
49522008-12-02 Andreas Schwab <schwab@suse.de>
4953
f7741ce9
AS
4954 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4955
1f625c6c
AS
4956 * doprnt.c (doprnt1): Fix size of charbuf.
4957
92bc2678
CY
49582008-12-02 Chong Yidong <cyd@stupidchicken.com>
4959
4960 * keyboard.c (timer_check): Revert last change.
4961
93b9e8cc
JB
49622008-12-02 Juanma Barranquero <lekktu@gmail.com>
4963
4964 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4965
fd7a37d5
JB
49662008-12-01 Juanma Barranquero <lekktu@gmail.com>
4967
4968 * makefile.w32-in: Update dependencies.
4969 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4970
c115043b
AS
49712008-12-01 Andreas Schwab <schwab@suse.de>
4972
4973 * font.c (register_font_driver): Use xmalloc.
4974 (font_put_frame_data): Likewise.
4975
f5668d2a
CY
49762008-12-01 Chong Yidong <cyd@stupidchicken.com>
4977
860d96be
CY
4978 * xfaces.c (realize_x_face): Make abort condition clearer.
4979
f5668d2a
CY
4980 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4981
379c17e7
CY
49822008-11-30 Chong Yidong <cyd@stupidchicken.com>
4983
4984 * keyboard.c (timer_check): After a timer runs, ensure that the
4985 selected window's buffer is current.
4986
35f36d65
JB
49872008-11-30 Juanma Barranquero <lekktu@gmail.com>
4988
f952c61c
JB
4989 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4990 It was accidentally restored by the Unicode merge.
4991
35f36d65
JB
4992 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4993
b23077df
JB
49942008-11-29 Juanma Barranquero <lekktu@gmail.com>
4995
4996 * w32proc.c: Include "coding.h".
4997 (Fw32_short_file_name): Encode filename passed to Windows API.
4998 (Fw32_long_file_name): Encode filename passed to Windows API and
4999 decode back the result. (Bug#1433)
5000
b8ebe9dd
KH
50012008-11-29 Kenichi Handa <handa@m17n.org>
5002
8cc53f96
KH
5003 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
5004 not before accessing it.
5005
b8ebe9dd
KH
5006 * charset.c (Fdefine_charset_internal): After calculating
5007 min_char, max_char, and fastmap, copy the charset structure again.
5008 (encode_char): Fix the previous change.
5009
59bc82c0
SZ
50102008-11-28 Seiji Zenitani <zenitani@mac.com>
5011
5012 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
5013
5014 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
5015
5016 * nsterm.m (x_set_frame_alpha): New function.
5017
32247e3d
EZ
50182008-11-27 Eli Zaretskii <eliz@gnu.org>
5019
5020 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
5021
b003e5ff
JB
50222008-11-27 Juanma Barranquero <lekktu@gmail.com>
5023
5024 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
5025 pointer to check_face_name.
5026
708550f5
KH
50272008-11-27 Kenichi Handa <handa@m17n.org>
5028
5029 * category.h (SET_CATEGORY_SET): Call set_category_set.
5030 (set_category_set): Extern it.
5031
5032 * category.c (hash_get_category_set): New function.
5033 (Fmodify_category_entry): Adjusted for the change of
5034 char_table_ref_and_range. Call hash_get_category_set to get a
5035 category set to store in the table.
5036
5037 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
5038 Funify_charset.
5039
2ae37cf0 5040 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
5041 (DECODE_CHAR): Check if the decoder vector is ready.
5042 (ENCODE_CHAR): Check if the encoder char-table is ready.
5043 (maybe_unify_char): Extern it.
5044
5045 * charset.c (Vchar_unified_charset_table): Delete it.
5046 (inhibit_load_charset_map): New variable.
5047 (temp_charset_work): New variable.
5048 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
5049 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
5050 New macros.
5051 (load_charset_map): Meaning of control_flag changed. If
5052 inhibit_load_charset_map is nonzero, setup a table in
5053 temp_charset_work.
5054 (load_charset): New argument control_flag.
5055 (map_charset_for_dump): New function.
5056 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
5057 map_charset_for_dump.
5058 (Fdefine_charset_internal): If the charset method is MAP, load
5059 mapping tables by calling load_charset.
5060 (Funify_charset): Don't load a mapping table but directly set
5061 Vchar_unify_table.
5062 (maybe_unify_char): New function.
5063 (decode_char): Don't handle the deleted method MAP_DEFERRED.
5064 Handle the case of inhibit_load_charset_map being nonzero.
5065 (encode_char): Don't handle the deleted method MAP_DEFERRED.
5066 Handle the case of inhibit_load_charset_map being nonzero.
5067 (Fclear_charset_maps): Just free temp_charset_work.
5068 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
5069 variable.
5070
5071 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
5072 change of char_table_ref_and_range.
5073 (char_table_ref_and_range): Change the meaning of argument FROM
5074 and TO. Now the caller must provide initial values for *FROM
5075 and *TO.
5076
5077 * fontset.c (fontset_add): Adjusted for the change of
5078 char_table_ref_and_range.
5079 (fontset_get_font_group): Likewise.
5080 (Ffontset_info): Likewise.
5081
5082 * keymap.c (describe_vector): Adjusted for the change of
5083 char_table_ref_and_range. For char-table, put boundary between
5084 non-ASCII and 8-bit characters.
5085
5086 * print.c (print_object): For bool-vector, delete unnecessary
5087 check of ASCII_BYTE_P.
5088
9196133b
JR
50892008-11-26 Jason Rumney <jasonr@gnu.org>
5090
5091 * w32font.c (w32font_open_internal): Don't include external
9acef61c 5092 leading in font height. (Bug#879)
9196133b 5093
9f688acf
GM
50942008-11-26 Glenn Morris <rgm@gnu.org>
5095
5096 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
5097 redefinition with ifdef. (Bug#1383)
5098
90d19aff
AR
50992008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5100
5101 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
5102
4ccfa1c0 51032008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
5104
5105 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
5106 New EmacsView methods.
5107 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
5108 Fixes bug #1048,1357,1414.
5109
51102008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5111
5112 Fix bug #1362.
5113 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
5114 is not an indexed color.
5115 * nsterm.m (free_indexed_color): Add argument checking.
5116 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
5117
e7d5ecb3
CY
51182008-11-24 Chong Yidong <cyd@stupidchicken.com>
5119
5120 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
5121 Document confirm-after-completion value for
5122 minibuffer-completion-confirm.
5123
c285743c
JR
51242008-11-24 Jason Rumney <jasonr@gnu.org>
5125
5126 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
5127 warning.
5128
b0857706
JR
51292008-11-23 Jason Rumney <jasonr@gnu.org>
5130
5131 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
5132 restored before returning.
5133
5134 * w32font.c (check_face_name): New function.
5135 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 5136 fonts. (Bug#642)
b0857706 5137
ee50ff07
MR
51382008-11-22 Martin Rudalics <rudalics@gmx.at>
5139
5140 * buffer.c (Fswitch_to_buffer): Reword and mention new option
5141 confirm-nonexistent-file-or-buffer in doc-string.
5142
b8ff72fa
SM
51432008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
5144
5145 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
5146 Fix copy/paste typo. Add checks.
5147
cee53ed4
KH
51482008-11-21 Kenichi Handa <handa@m17n.org>
5149
5150 * coding.c (detect_coding_iso_2022): Reject invalid composition
5151 sequence.
5152 (DECODE_COMPOSITION_START): If the current source is the last
5153 block, and the current composition doesn't end, regard this
5154 sequence as invalid.
5155 (decode_coding_iso_2022): Handle invalid composition sequence.
5156
f6ef1e65
MR
51572008-11-20 Martin Rudalics <rudalics@gmx.at>
5158
5159 * window.c (coordinates_in_window): Don't return
5160 ON_VERTICAL_BORDER for the rightmost position of a mode/header
5161 line when the window is not the rightmost one. (Bug#1372)
5162
e08b1705
MR
51632008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
5164
5165 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
5166
ad98e89f
EZ
51672008-11-15 Eli Zaretskii <eliz@gnu.org>
5168
5169 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
5170 and bright_bg if noninteractive is non-zero.
5171
fb098a4b
CY
51722008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5173
5174 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
5175 x_draw_glyph_string_background.
5176
5177 * w32term.c (x_draw_glyph_string): Likewise.
5178
ce952b6e
CY
51792008-11-15 Chong Yidong <cyd@stupidchicken.com>
5180
5181 * xterm.c (x_draw_glyph_string): Stop drawing the background of
5182 the next glyph string once past the overhang width.
5183
5184 * nsterm.m (ns_draw_glyph_string): Likewise.
5185
5186 * w32term.c (x_draw_glyph_string): Likewise.
5187
26ea7079
CY
51882008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
5189
5190 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
5191 double file close.
5192
1c33c906
MR
51932008-11-14 Martin Rudalics <rudalics@gmx.at>
5194
5195 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
5196 dedicated status of window before attempting to display another
5197 buffer in it.
5198
8fc29035
JB
51992008-11-14 Juanma Barranquero <lekktu@gmail.com>
5200
5201 * msdos.c (Fmsdos_long_file_names):
5202 (syms_of_msdos) <dos-unsupported-char-glyph>:
5203 * dosfns.c (Fint86): Fix typos in docstrings.
5204
55fb4286
EZ
52052008-11-14 Eli Zaretskii <eliz@gnu.org>
5206
5207 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
5208
3fda0315
KY
52092008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
5210
5211 * puresize.h (BASE_PURESIZE): Increase to 1260000.
5212
7e849c17
CY
52132008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
5214
5215 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
5216
5217 * frame.h: Negative alpha means "don't touch".
5218
5219 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
5220
5221 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
5222
b9fd67bd
DN
52232008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
5224
5225 * hftctl.c:
5226 * chpdef.h:
5227 * acldef.h: Remove files used only for systems no longer supported.
5228
5229 * Makefile.in: Fix .o alphabetical ordering.
5230 (hftctl.o): Remove dependency, file removed.
5231 (keymap.o, print.o): Depend on charset.h.
5232
d5998e03
KH
52332008-11-10 Kenichi Handa <handa@m17n.org>
5234
2ae37cf0 5235 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 5236
be70e183
CY
52372008-11-08 Chong Yidong <cyd@stupidchicken.com>
5238
5239 * dired.c (file_name_completion): If completion_ignore_case is
5240 enabled, ignore case when checking completion-regexp-list.
5241
7cf94eac
EZ
52422008-11-08 Eli Zaretskii <eliz@gnu.org>
5243
5244 * vm-limit.c (get_lim_data): Fix last change.
5245
ee107a89
KH
52462008-11-08 Kenichi Handa <handa@m17n.org>
5247
5248 * character.c (Fget_byte): New function.
5249 (syms_of_character): Defsubr Fget_byte.
5250
5fd15622
CY
52512008-11-07 Chong Yidong <cyd@stupidchicken.com>
5252
5253 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
5254 cursor position is valid after scrolling.
5255
13d62fad
JB
52562008-11-06 Juanma Barranquero <lekktu@gmail.com>
5257
5258 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
5259
a1dd2936
GM
52602008-11-06 Glenn Morris <rgm@gnu.org>
5261
5262 * xterm.c (handle_one_xevent): Don't let popup menus cause
5263 mouse-autoselect-window related window switching. (Bug#1261)
5264
860cd236
CY
52652008-11-04 David Smith <davidsmith@acm.org> (tiny change)
5266
5267 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
5268
653a3150
AS
52692008-11-04 Andreas Schwab <schwab@suse.de>
5270
5271 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
5272
870f5cac
CY
52732008-11-03 Chong Yidong <cyd@stupidchicken.com>
5274
5275 * xfns.c (Fx_wm_set_size_hint): New function.
5276
1e02f3cb
MR
52772008-11-03 Martin Rudalics <rudalics@gmx.at>
5278
5279 * textprop.c (Fprevious_single_char_property_change): Return 0
5280 when there's no change in a string. (Bug#1301)
5281
e630dfc6
MR
52822008-11-02 Martin Rudalics <rudalics@gmx.at>
5283
5284 * frame.c (do_switch_frame): New argument NORECORD passed to
5285 Fselect_window.
5286 (Fselect_frame): New argument NORECORD passed to
5287 do_switch_frame.
5288 (Fset_frame_selected_window): New argument NORECORD passed to
5289 Fselect_frame.
5290 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
5291 in call of do_switch_frame.
5292 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
5293 Handle NORECORD argument in call of Fselect_frame.
5294 * lisp.h (do_switch_frame, Fselect_frame)
5295 (Fset_frame_selected_window): Adjust declarations.
5296 * window.c (select_frame_norecord): New function.
5297 (run_window_configuration_change_hook): Use it and call
5298 Fselect_frame with NORECORD set.
5299 (Fselect_window): Pass NORECORD to Fselect_frame.
5300 (Fset_window_configuration): Handle NORECORD argument in call of
5301 do_switch_frame.
5302 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
5303 Fset_frame_selected_window.
5304 * keyboard.c (command_loop_1): Handle NORECORD in call of
5305 Fselect_frame (currently ifdefd).
5306
9020b223
GM
53072008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
5308
5309 * emacs.c (USAGE2): Untabify.
5310
793ffee8
SM
53112008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
5312
5313 * composite.c (fill_gstring_header): Fix copy/paste typo.
5314
ab6d1131
MR
53152008-10-31 Martin Rudalics <rudalics@gmx.at>
5316
5317 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
5318 (Fother_window): Rename argument and rewrite doc-string.
5319 (select_window_norecord): Fix return value. (Bug#1276)
5320
601a9cf1
JB
53212008-10-30 Juanma Barranquero <lekktu@gmail.com>
5322
5323 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
5324 new frames overriding foreground for tooltips. Based on similar patch
5325 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
5326
813b0652
CY
53272008-10-29 Chong Yidong <cyd@stupidchicken.com>
5328
5329 * emacs.c (Fdaemon_initialized): Initialize nfd.
5330
4414f58f
MR
53312008-10-29 Martin Rudalics <rudalics@gmx.at>
5332
5333 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
5334 (Fwindow_text_height): Clarify doc-strings.
5335 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
5336 doc-string of window-scroll-functions.
5337
ecdcaa09
RS
53382008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
5339
5340 * category.c (syms_of_category): Fix typo in docstring.
5341
23fe745a
JB
53422008-10-28 Juanma Barranquero <lekktu@gmail.com>
5343
5344 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
5345 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
5346 Fix typos in docstrings.
5347
ff808935
DN
53482008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
5349
5350 * emacs.c (daemon_pipe): Make non-static.
5351 (IS_DAEMON): Move definition ...
5352 * lisp.h (IS_DAEMON): ... here.
5353 (daemon_pipe): Declare.
5354 (is_daemon): Remove.
5355 * dispnew.c (init_display): Use IS_DAEMON.
5356
fc012771
SM
53572008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5358
5359 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
5360 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
5361
5362 * emacs.c (is_daemon): Remove.
5363 (main): Don't set is_daemon.
5364 (IS_DAEMON): New macro.
5365 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 5366 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
5367 parent exits.
5368 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
5369
d8bdbe6f
CY
53702008-10-27 Chong Yidong <cyd@stupidchicken.com>
5371
d1a072bf
CY
5372 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
5373 over-sized glyph, draw it with the default glyph width.
5374
e2e325aa
CY
5375 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5376 glyph, draw it with the default glyph width.
5377
5378 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5379 glyph, draw it with the default glyph width.
5380
d8bdbe6f
CY
5381 * xdisp.c (try_scrolling): When computing the distance from the
5382 scroll margin to PT, try moving some distance past the window
5383 bottom before giving up.
5384
7bfac547
MR
53852008-10-27 Martin Rudalics <rudalics@gmx.at>
5386
5387 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
5388 (Fset_window_buffer): Explain in doc-string that a window can be
5389 "strongly" dedicated to its buffer.
5390
4ff029f6
DN
53912008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
5392
5393 * emacs.c (daemon_name): New variable.
5394 (main): Deal with --daemon=SERVER_NAME.
5395 (Fdaemonp): Return a name if one was passed to --daemon.
5396
5790ef40
DN
53972008-10-26 Romain Francoise <romain@orebokech.com>
5398
f9bd0df9 5399 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
5400 (main): Create a pipe before forking, make the parent exit only after
5401 the child has closed its end of the pipe. Move closing the
5402 descriptors ...
5403 (Fdaemon_initialized): ... here. New function.
5404
f5385255
SM
54052008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5406
4d632321
SM
5407 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5408 the previous unoptimized table.
5409
f5385255
SM
5410 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5411 the distinction between non-nil and non-t value of `dedicated'.
5412
6c56a0f3
CY
54132008-10-25 Chong Yidong <cyd@stupidchicken.com>
5414
5415 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 5416 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 5417
fec89261
MR
54182008-10-25 Martin Rudalics <rudalics@gmx.at>
5419
5420 * window.c (Fget_buffer_window, Fdelete_windows_on)
5421 (Freplace_buffer_in_windows): Make buffer argument optional and
5422 rename to buffer_or_name.
5423
34fcddd0
CY
54242008-10-24 Chong Yidong <cyd@stupidchicken.com>
5425
f5385255
SM
5426 * xdisp.c (handle_single_display_spec, handle_display_prop):
5427 Undo 2005-05-16 change.
34fcddd0
CY
5428 (handle_stop): Pop iterator if it's loaded with an empty string.
5429 (get_overlay_strings_1): Don't save iterator if it's loaded with
5430 an empty string (bug#1201).
5431
064766f2
KH
54322008-10-24 Kenichi Handa <handa@m17n.org>
5433
5434 * ftfont.c (ftfont_otf_features): Fix previous change.
5435 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5436 calling ftfont_otf_features.
5437
f9bd0df9 54382008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
5439
5440 * font.c (font_match_p): Fix for the case that a vector of
5441 characters is in script-representative-chars.
5442
1dae9197
MA
54432008-10-24 Michael Albinus <michael.albinus@gmx.de>
5444
5445 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 5446 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
5447 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5448 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 5449 macro. (Bug#1186)
1dae9197 5450
f9bd0df9 54512008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
5452
5453 * s/sol2-10.h: New file.
5454
878a4584
JB
54552008-10-23 Juanma Barranquero <lekktu@gmail.com>
5456
5457 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5458 poor beast has survived 9+ years and the jump from xterm.c!).
5459
cd265ca6
MR
54602008-10-23 Martin Rudalics <rudalics@gmx.at>
5461
5462 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5463 Reword doc-string.
f5385255 5464 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 5465
472a4dc9
JB
54662008-10-23 Juanma Barranquero <lekktu@gmail.com>
5467
5468 * character.c (syms_of_character) <script-representative-chars>:
5469 <unicode-category-table>: Doc fixes.
5470
159bd5a2
NF
54712008-10-23 Noah Friedman <friedman@splode.com>
5472
5473 * coding.c (make_conversion_work_buffer): Check that
5474 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5475 Fget_buffer_create.
5476
49f9c344
KH
54772008-10-23 Kenichi Handa <handa@m17n.org>
5478
5479 * font.c (font_add_log): Check the values of extra properties.
5480
12bb3111
MR
54812008-10-22 Martin Rudalics <rudalics@gmx.at>
5482
5483 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5484 Reword doc-string.
5485 (Fset_window_parameter): Use NILP.
5486 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 5487 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 5488
bbeb4e99
JB
54892008-10-22 Juanma Barranquero <lekktu@gmail.com>
5490
5491 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5492
54932008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
5494
5495 * nsfns.m (ns_appkit_version): New function.
5496 (x-server-version): Use it.
5497 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5498 (x-server-vendor): Don't check_ns().
5499
5500 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5501
a9b555d3
JB
55022008-10-22 Juanma Barranquero <lekktu@gmail.com>
5503
5504 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5505 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5506
4626499f
KH
55072008-10-22 Kenichi Handa <handa@m17n.org>
5508
e3681952
KH
5509 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5510 scripts.
5511
4626499f
KH
5512 * category.c (word_boundary_p): Check scripts instead of charset.
5513 Handle nil value in word-separating-categories and
5514 word-combining-categories.
5515 (syms_of_category): Fix docstrings of word-separating-categories
5516 and word-combining-categories.
5517
1560f91a
EZ
55182008-10-21 Eli Zaretskii <eliz@gnu.org>
5519
5520 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5521 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5522
f4668441
MR
55232008-10-21 Martin Rudalics <rudalics@gmx.at>
5524
5525 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5526 Rename arg "buffer" to "buffer_or_name".
5527 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5528 it optional.
5529 (no_switch_window): Remove since the return value is not used.
a9b555d3 5530 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
5531 Consider window as dedicated when Fwindow_dedicated_p returns a
5532 non-nil value.
5533 * lisp.h: Remove prototype for no_switch_window.
5534
fd75ddb2
JD
55352008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5536
5537 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 5538 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 5539
07295713
KH
55402008-10-21 Kenichi Handa <handa@m17n.org>
5541
5542 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5543 check Vlatin_extra_code_table.
5544
712adc82
EZ
55452008-10-20 Eli Zaretskii <eliz@gnu.org>
5546
5547 * fileio.c (Fset_file_modes): Doc fix.
5548
f549eb0b
MA
55492008-10-19 Michael Albinus <michael.albinus@gmx.de>
5550
5551 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5552 in arrays.
5553
aac0c6e3
MR
55542008-10-19 Martin Rudalics <rudalics@gmx.at>
5555
5556 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5557 Mention kill-buffer in doc-string.
5558 (Fset_window_buffer): Reinsert tem check removed in last commit.
5559 (Fenlarge_window, Fshrink_window): Have argument names and
5560 doc-string follow Elisp manual more closely.
5561
55622008-10-18 Eli Zaretskii <eliz@gnu.org>
5563
5564 * fileio.c (Fset_file_modes): Doc fix.
5565
55662008-10-18 Martin Rudalics <rudalics@gmx.at>
5567
5568 * window.c (Fwindow_width, Fset_window_start)
5569 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5570 (Fdelete_windows_on, Freplace_buffer_in_windows):
5571 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5572 (Fwindow_dedicated_p): Make window argument optional.
5573 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5574 (Fset_window_buffer): Respect any non-nil dedicated value for
5575 window. Rename "buffer" argument to "buffer_or_name".
5576
55772008-10-18 Ulrich Mueller <ulm@gentoo.org>
5578
5579 * m/sh3.h: New file, machine description for SuperH.
5580
55812008-10-17 Martin Rudalics <rudalics@gmx.at>
5582
5583 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5584
55852008-10-17 Kenichi Handa <handa@m17n.org>
5586
5587 * ftfont.c (ftfont_otf_features): Fix indexing
5588 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5589
55902008-10-16 Magnus Henoch <mange@freemail.hu>
5591
5592 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5593 (Fdbus_call_method_asynchronously): Ditto.
5594 This change makes C-h f display the argument list.
5595
55962008-10-16 Chong Yidong <cyd@stupidchicken.com>
5597
5598 * fileio.c (Fexpand_file_name): Doc fix.
5599
5600 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5601 of :foreground and :background equivalent to unspecified (20.x
5602 compatibility).
5603
56042008-10-15 Eli Zaretskii <eliz@gnu.org>
5605
5606 * buffer.c (syms_of_buffer): Doc fix.
5607
56082008-10-14 Kenichi Handa <handa@m17n.org>
5609
5610 * font.c (font_clear_prop): When clearing font width, clear the
5611 average width field too.
5612
56132008-10-12 Andreas Schwab <schwab@suse.de>
5614
5615 * ftfont.c (ftfont_shape_by_flt): Make static.
5616 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5617
5618 * font.c: Don't include <m17n-flt.h>.
5619
56202008-10-10 Eli Zaretskii <eliz@gnu.org>
5621
5622 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5623
56242008-10-09 Eli Zaretskii <eliz@gnu.org>
5625
5626 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5627 away code.
5628
56292008-10-09 Chong Yidong <cyd@stupidchicken.com>
5630
5631 * dispnew.c (update_text_area): Avoid looping due to large glyph
5632 overhangs (bug#1070).
5633
56342008-10-09 Kenichi Handa <handa@m17n.org>
5635
5636 * fontset.c (face_for_char): If face->fontset is negative, just
5637 return ascii_face.
5638
f5385255
SM
5639 * font.c (font_delete_unmatched): Fix previous change.
5640 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5641
56422008-10-09 Martin Rudalics <rudalics@gmx.at>
5643
5644 * frame.c (Fraise_frame): On text-only terminals select frame in
5645 order to make it visible. (Bug#1061)
5646
56472008-10-08 Chong Yidong <cyd@stupidchicken.com>
5648
5649 * fontset.c (fontset_find_font): Check frame validity.
5650
56512008-10-07 Chong Yidong <cyd@stupidchicken.com>
5652
a9b555d3 5653 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5654 (xg_display_close): Allow Emacs to close all displays (bug#985).
5655
56562008-10-06 Andreas Schwab <schwab@suse.de>
5657
f5385255 5658 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5659
56602008-10-06 Chong Yidong <cyd@stupidchicken.com>
5661
f5385255 5662 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5663
a9b555d3 5664 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5665
5666 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5667 during initialization.
5668
56692008-10-04 Eli Zaretskii <eliz@gnu.org>
5670
5671 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5672 whole thing on MSDOS frames as well as on a TTY.
5673
5674 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5675 well as for TTY.
5676 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5677 well as on a TTY.
5678
5679 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5680 as well as for TTY.
5681
5682 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5683
5684 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5685 MSDOS frames as well.
5686
56872008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5688
5689 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5690 correct arguments.
b71ac3dd 5691 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5692
56932008-10-03 Glenn Morris <rgm@gnu.org>
5694
5695 * emacs.c (USAGE1): Add --daemon.
5696
56972008-10-02 Eli Zaretskii <eliz@gnu.org>
5698
5699 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5700 100, so it's in percents as advertised.
5701
57022008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5703
5704 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5705 (ns_output.current_cursor, ns_output.desired_cursor)
5706 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5707 (FRAME_NEW_CURSOR_COLOR): Remove.
5708
5709 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5710 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5711 enumeration (HOLLOW_BOX_CURSOR, etc.).
5712
5713 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5714 (draw_window_cursor): Simplify code.
f5385255
SM
5715 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5716 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5717 updates manually.
a9b555d3
JB
5718 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5719 Use core Emacs cursor types.
aac0c6e3 5720
b8ff72fa 5721 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5722
57232008-10-02 Martin Rudalics <rudalics@gmx.at>
5724
5725 * process.c (Faccept_process_output): Fix doc-string.
5726
57272008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5728
5729 * gmalloc.c (__sbrk): Also define for uClibc.
5730
5731 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5732 for uClibc.
5733
57342008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5735
5736 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5737 styles.
5738 (nsfont_open): Reenable the cache.
5739
57402008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5741
5742 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5743 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5744
57452008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5746
5747 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5748 a suspended terminal.
5749
57502008-09-30 Michael Albinus <michael.albinus@gmx.de>
5751
5752 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5753
57542008-09-30 Eli Zaretskii <eliz@gnu.org>
5755
5756 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5757
57582008-09-30 Chong Yidong <cyd@stupidchicken.com>
5759
5760 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5761 in a continued line coincides with a line beginning.
5762
57632008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5764
5765 * nsfont.m (nsfont_trait_distance): Fix bug.
5766 (nsfont_list): Return a list rather than a vector (syncs with Handa
5767 changes of 2008-05-14).
5768 (nsfont_open): Improve logging.
5769
57702008-09-29 Andreas Schwab <schwab@suse.de>
5771
5772 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5773
57742008-09-28 Martin Rudalics <rudalics@gmx.at>
5775
5776 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5777 name as char-resolve-modifiers.
5778 Reported by: Markus Triska <markus.triska@gmx.at>
5779
57802008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5781
5782 * dispnew.c (init_display): Return earlier when running as a daemon.
5783
57842008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5785
5786 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5787
57882008-09-27 Eli Zaretskii <eliz@gnu.org>
5789
5790 * composite.c (Fcomposition_get_gstring)
5791 (Fcompose_region_internal, Fcompose_string_internal)
5792 (Ffind_composition_internal): Doc fix.
5793 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5794 (syms_of_composite) <auto-composition-function>: Doc fix.
5795 (syms_of_composite) <composition-function-table>: Doc fix.
5796
57972008-09-25 Chong Yidong <cyd@stupidchicken.com>
5798
5799 * search.c (wordify): New argument for lax word-ends.
5800 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5801
58022008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5803
5804 * lisp.h (is_daemon): Declare.
5805 * dispnew.c (init_display): Do not try to initialize the terminal
5806 when running as a daemon.
5807
58082008-09-22 Chong Yidong <cyd@stupidchicken.com>
5809
5810 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5811 x_display_pixel_height.
5812
58132008-09-22 Martin Rudalics <rudalics@gmx.at>
5814
5815 * undo.c (record_point): Don't call Fundo_boundary for first
5816 change. (Bug#731)
5817
58182008-09-22 Juanma Barranquero <lekktu@gmail.com>
5819
5820 * emacs.c (Fdaemonp): Doc fix.
5821
58222008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5823
5824 * emacs.c (main): Place #ifdef in the proper place.
5825
58262008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5827
5828 * emacs.c (standard_args): Add --daemon.
5829 (main): Disconnect from the terminal when --daemon is passed.
5830 (is_daemon): New variable.
5831 (Fdaemonp): New function.
5832 (syms_of_emacs): Defsubr it.
5833
58342008-09-20 Chong Yidong <cyd@stupidchicken.com>
5835
5836 * xdisp.c (get_next_display_element): Handle string display
5837 correctly when checking for the end of a box run.
5838
58392008-09-20 Glenn Morris <rgm@gnu.org>
5840
5841 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5842 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5843 (Frename_file): Avoid copying to trash if a rename involves
5844 a delete. (Bug#964).
5845
58462008-09-20 Eli Zaretskii <eliz@gnu.org>
5847
5848 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5849 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5850 frames as well as termcap frames.
5851 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5852 get_named_tty.
5853
58542008-09-19 Eli Zaretskii <eliz@gnu.org>
5855
5856 * process.c (procfs_system_process_attributes): Fix cmdline in
5857 case /proc/PID/cmdline is empty.
5858
5859 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5860 x_display_pixel_height.
5861
58622008-09-19 Juanma Barranquero <lekktu@gmail.com>
5863
5864 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5865
5866 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5867 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5868
58692008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5870
5871 * dispextern.h (struct it): Move line_wrap away from the middle of
5872 bitfields. Move voffset in struct iterator_stack_entry after the
5873 bitfields. Move tab_width near after another short.
5874
58752008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5876
5877 * frame.h (struct frame): Move alpha from the middle of bitfields.
5878
5879 * window.h (struct window): Move frozen_window_start_p after the
5880 rest of the bitfields to reduce padding.
5881
58822008-09-18 Chong Yidong <cyd@stupidchicken.com>
5883
5884 * xterm.h (x_display_info): Remove `height' and `width' members.
5885
5886 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5887
5888 * w32term.h (w32_display_info): Remove `height', `width',
5889 `height_in', and `width_in' members.
5890
b8ff72fa
SM
5891 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5892 New functions.
aac0c6e3
MR
5893 (x_calc_absolute_position): Use them.
5894 (x_term_init): Omit removed `height' and `width' members.
5895
b8ff72fa
SM
5896 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5897 New functions.
aac0c6e3
MR
5898 (w32_read_socket, x_calc_absolute_position): Use them.
5899 (w32_initialize_display_info, w32_term_init): Omit removed members
5900 of w32_display_info.
5901
b8ff72fa
SM
5902 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5903 New functions.
5904 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 5905
b8ff72fa
SM
5906 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5907 New functions.
aac0c6e3
MR
5908 (x_calc_absolute_position): Use them.
5909 (x_term_init): Omit removed `height' and `width' members.
5910
5911 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
5912 (compute_tip_xy):
5913 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
5914 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5915 x_display_pixel_width.
5916
59172008-09-18 Kenichi Handa <handa@m17n.org>
5918
5919 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5920 (composition_compute_stop_pos): Fix handling of static composition.
5921 (Fcomposition_get_gstring): Check FROM and TO at first.
5922
59232008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5924
46e722a9 5925 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
5926 mixup (YAILOM).
5927
59282008-09-17 Chong Yidong <cyd@stupidchicken.com>
5929
5930 * indent.c (Fvertical_motion): Use position reported by iterator
5931 instead of PT for determining screen motion (bug#943).
5932
59332008-09-17 Romain Francoise <romain@orebokech.com>
5934
5935 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5936
59372008-09-17 Kenichi Handa <handa@m17n.org>
5938
5939 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5940
5941 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5942 if necessary.
5943
59442008-09-16 Kenichi Handa <handa@m17n.org>
5945
5946 * coding.c (make_conversion_work_buffer): Avoid calling
5947 Fget_buffer_create if it is not necessary.
5948
59492008-09-15 Martin Rudalics <rudalics@gmx.at>
5950
5951 * window.c (Fselect_window): Don't update window_select_count and
5952 use_time when norecord is not nil.
5953
59542008-09-14 Kenichi Handa <handa@m17n.org>
5955
5956 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5957 specpdl_ptr.
5958
59592008-09-12 Kenichi Handa <handa@m17n.org>
5960
5961 * indent.c (scan_for_column): Don't handle automatic composition
5962 if the current buffer is not associated with a window.
5963
5964 * composite.c (composition_reseat_it): If the current buffer is
5965 not associated with a window, ignore the automatic composition.
5966 (find_automatic_composition): Likewise.
5967
59682008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5969
5970 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5971 (Fgpm_mouse_stop): Use it.
5972 * termhooks.h (close_gpm): Declare.
5973 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5974 connection if Gpm_GetEvent fails.
5975
5976 * window.c (set_window_buffer): Always preserve current-buffer.
5977
59782008-09-12 Glenn Morris <rgm@gnu.org>
5979
5980 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5981
59822008-09-11 Glenn Morris <rgm@gnu.org>
5983
5984 * charset.c (charset-map-path): Doc fix.
5985
59862008-09-10 Kenichi Handa <handa@m17n.org>
5987
5988 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5989
5990 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5991 compose a grapheme cluster with the preceding base glyph.
5992
5993 * composite.c (composition_compute_stop_pos): Fix previous change.
5994 Reset cmp_it->id to -1 at first.
5995
59962008-09-10 Glenn Morris <rgm@gnu.org>
5997
5998 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5999
60002008-09-09 Chong Yidong <cyd@stupidchicken.com>
6001
6002 * keyboard.c (read_key_sequence): Reapply translation maps when
6003 switching keyboards.
6004
60052008-09-09 Kenichi Handa <handa@m17n.org>
6006
6007 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
6008 characters.
6009
6010 * composite.c (FORWARD_CHAR): Fix calculation
6011 of (POSITION).pos_byte.
6012 (composition_compute_stop_pos): Limit the search of composition to
6013 at most 500 characters ahead. If we reach the limit or find a
6014 newline, set cmp_it->ch to -2 and return 0.
6015 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
6016
60172008-09-08 Kenichi Handa <handa@m17n.org>
6018
6019 * indent.c (Fvertical_motion): Be sure to set
6020 it_overshoot_expected if it.cmp_it.id is non-negative.
6021
60222008-09-07 Andreas Schwab <schwab@suse.de>
6023
6024 * callproc.c (Fcall_process): Don't hold references to string data
6025 across garbage collection. Move initialisation of new_argv down
6026 to avoid compiler bug.
6027
60282008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6029
6030 * process.c (Fsystem_process_attributes): Doc fix.
6031
60322008-09-07 Chong Yidong <cyd@stupidchicken.com>
6033
6034 * callproc.c (Fcall_process): Canonicalize current directory name.
6035
6036 * xdisp.c (move_it_to): When moving by vpos, ensure that the
6037 iterator advances to the next line if the current line ends in a
6038 continued tab.
6039
60402008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
6041
6042 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
6043 member to point to cmp_from.
6044
6045 * xdisp.c: Doc fix for references to gidx data member.
6046
60472008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6048
6049 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
6050
60512008-09-07 Kenichi Handa <handa@m17n.org>
6052
6053 * composite.c (FORWARD_CHAR): Check STOP after
6054 incrementing (POSITION).pos.
6055
60562008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6057
6058 * process.c (Fsystem_process_attributes): Doc fix.
6059
60602008-09-06 Chong Yidong <cyd@stupidchicken.com>
6061
6062 * keyboard.c (Ftop_level): Doc fix.
6063
60642008-09-06 Eli Zaretskii <eliz@gnu.org>
6065
6066 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
6067 minibuffer, don't let lower part of menu invade the echo area.
6068
6069 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
6070 "char *q" to access menu text and advance through it. Revert the
6071 change that displayed ">" instead of ASCII character 0x10.
6072
60732008-09-05 Eli Zaretskii <eliz@gnu.org>
6074
6075 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
6076 toggle boxes and radio buttons on MS-DOS as well.
6077
60782008-09-05 Kenichi Handa <handa@m17n.org>
6079
6080 * composite.c (autocmp_chars): Check lookback count.
6081 (composition_compute_stop_pos): Set cmp_it->lookback.
6082 (composition_reseat_it): Check lookback count.
6083 (struct position_record): New struct.
6084 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
6085 (find_automatic_composition): New function.
6086 (composition_adjust_point): Use find_automatic_composition.
6087
6088 * dispextern.h (struct composition_it): New member lookback.
6089
60902008-09-02 Chong Yidong <cyd@stupidchicken.com>
6091
6092 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
6093 if moving by a single line.
6094
60952008-09-02 Andreas Schwab <schwab@suse.de>
6096
6097 * xterm.c (x_delete_display): Fix merge error.
6098
6099 * fileio.c (Fexpand_file_name): Remove unused variables.
6100
61012008-09-02 Eli Zaretskii <eliz@gnu.org>
6102
6103 * fileio.c (Fexpand_file_name): Copy argument `name' into local
6104 storage on all platforms, not just on DOS_NT.
6105
61062008-09-02 Jason Rumney <jasonr@gnu.org>
6107
b8ff72fa
SM
6108 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
6109 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
6110
61112008-09-01 Chong Yidong <cyd@stupidchicken.com>
6112
6113 * xfaces.c (Finternal_set_alternative_font_family_alist)
6114 (Finternal_set_alternative_font_registry_alist): Properly copy
6115 entire alist structure.
6116
61172008-09-01 Kenichi Handa <handa@m17n.org>
6118
d66c0241 6119 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 6120 representative chars of the script is a vector.
d66c0241
JB
6121 (ftfont_list): Handle the case where the representative chars of
6122 the script is a vector.
aac0c6e3
MR
6123
6124 * character.c (syms_of_character): Docstring of
6125 script-representative-chars fixed.
6126
61272008-08-31 Eli Zaretskii <eliz@gnu.org>
6128
6129 * msdos.c (BUILD_CHAR_GLYPH): New macro.
6130 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
6131 the menu. Allocate larger buffer for `text', to account for
6132 possible ^C characters.
6133
61342008-08-31 Martin Rudalics <rudalics@gmx.at>
6135
6136 * xdisp.c (prepare_menu_bars): Don't call
6137 Vwindow_size_change_functions with arg Qt.
6138
61392008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
6140
6141 * font.h (font_range):
6142 * fileio.c (report_file_error):
46e722a9
SM
6143 * composite.c (composition_update_it): Yet another int/Lisp_Object
6144 mixup (YAILOM).
aac0c6e3
MR
6145
61462008-08-30 Glenn Morris <rgm@gnu.org>
6147
6148 * data.c (Fmake_variable_frame_local): Doc fix.
6149
6150 * frame.c (Fmodify_frame_parameters): Doc fix.
6151
61522008-08-30 Eli Zaretskii <eliz@gnu.org>
6153
6154 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
6155 needed by GetTokenInformation.
6156 (w32_system_process_attributes): Check return values of all system
6157 APIs.
6158
6159 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
6160 only when the state changes.
6161 (IT_update_begin, IT_update_end): Add termscript trace.
6162
6163 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
6164 clipboard is unavailable. Set dst to NULL if it doesn't point to
6165 malloc'ed data.
6166 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
6167 passing random values to xfree.
6168
6169 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 6170 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
6171
61722008-08-29 Jason Rumney <jasonr@gnu.org>
6173
6174 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
6175
61762008-08-29 Eli Zaretskii <eliz@gnu.org>
6177
6178 * composite.c (fill_gstring_body): Avoid compiler warnings.
6179
6180 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
6181 LGLYPH_SET_CODE to avoid compiler warnings.
6182
2ae37cf0 6183 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
6184
6185 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
6186
6187 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
6188 LGLYPH_SET_CODE.
6189
61902008-08-29 Kenichi Handa <handa@m17n.org>
6191
6192 * fileio.c (report_file_error): Don't downcase the first character
6193 of errstring if it is still unibyte.
6194
61952008-08-29 Kenichi Handa <handa@m17n.org>
6196
6197 These changes are to re-implement the automatic composition so
6198 that it doesn't use text properties.
6199
6200 * Makefile.in (ftfont.o): Depend on composite.h.
6201 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
6202
6203 * character.h (Vunicode_category_table): Extern it.
6204
6205 * character.c (Vunicode_category_table): New variable.
6206 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
6207
6208 * chartab.c (optimize_sub_char_table): Perform more greedy
6209 optimization.
6210
b8ff72fa
SM
6211 * composite.h (enum composition_method):
6212 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
6213 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
6214 (Vcomposition_function_table): Extern it.
6215 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
6216 (composition_gstring_put_cache, composition_gstring_from_id)
6217 (composition_gstring_p, composition_gstring_width)
6218 (composition_compute_stop_pos, composition_reseat_it)
6219 (composition_update_it, composition_adjust_point): Extern them.
6220 (Fcomposition_get_gstring): EXFUN it.
6221
d66c0241 6222 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
6223 (Vcomposition_function_table)
6224 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
6225 (gstring_hash_table, gstring_work, gstring_work_headers):
6226 New variables.
aac0c6e3
MR
6227 (gstring_lookup_cache, composition_gstring_put_cache)
6228 (composition_gstring_from_id, composition_gstring_p)
6229 (composition_gstring_width, fill_gstring_header)
6230 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
6231 (composition_reseat_it, composition_update_it)
b8ff72fa 6232 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
6233 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
6234 and gstring_work_headers. DEFVAR_LISP composition-function-table.
6235 Defsubr compostion_get_gstring.
6236
6237 * dispextern.h (struct glyph): New union u.cmp. Delete the member
6238 cmp_id.
6239 (struct glyph_string): Delete the member gidx. New members
6240 cmp_id, cmp_from, and cmp_to.
6241 (enum it_method): Delete GET_FROM_COMPOSITION.
6242 (struct composition_it): New struct.
6243 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
6244 Delete c, len, cmp_id, cmp_len in u.comp.
6245
6246 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 6247 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 6248 (enum lglyph_indices): Likewise.
b8ff72fa 6249 (font_range): Adjust extern.
aac0c6e3
MR
6250 (font_fill_lglyph_metrics): Extern it.
6251
6252 * font.c (QCf): New variable.
6253 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6254 (font_prepare_composition): Delete this function.
6255 (font_range): Type and arguments changed.
6256 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
6257 (font_fill_lglyph_metrics): New function.
b8ff72fa 6258 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 6259 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
6260 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
6261 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
6262
6263 * fontset.h (font_for_char): Extern it.
6264
6265 * fontset.c (font_for_char): New function.
6266
6267 * ftfont.c: Include composite.h.
6268 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 6269 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
6270
6271 * indent.c: Include composite.h and dispextern.h.
6272 (check_composition): Delete this function.
6273 (scan_for_column): Handle composition by
6274 composition_compute_stop_pos, composition_reseat_it, and
6275 composition_update_it.
6276 (compute_motion): Likewise.
6277 (Fvertical_motion): Fix checking of composition.
6278
6279 * keyboard.c (adjust_point_for_property): Check composition by
6280 composition_adjust_point.
6281
b8ff72fa 6282 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
6283 struct glyph_string.
6284
b8ff72fa
SM
6285 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
6286 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
6287 struct glyph.
6288 (produce_composite_glyph): Likewise.
6289
b8ff72fa
SM
6290 * w32term.c (x_draw_composite_glyph_string_foreground):
6291 Adjust for the change of struct glyph_string.
aac0c6e3
MR
6292 (x_draw_glyph_string): Likewise.
6293
6294 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
6295 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6296
6297 * xdisp.c: Include font.h.
6298 (it_props): Delete the entry for Qauto_composed.
6299 (init_iterator): Initialize it->cmp_it.id to -1.
6300 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 6301 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
6302 (handle_auto_composed_prop): Delete it.
6303 (handle_composition_prop): Handle only static composition.
6304 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
6305 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 6306 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
6307 (pop_it): Likewise.
6308 (get_next_element): Delete next_element_from_composition.
6309 (CHAR_COMPOSED_P): New macro.
6310 (get_next_display_element): For automatic composition, get a face
6311 from the font in the glyph-string.
6312 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 6313 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
6314 (next_element_from_string): Check if the character at the current
6315 position is composed by CHAR_COMPOSED_P.
6316 (next_element_from_buffer): Likewise.
d66c0241
JB
6317 (next_element_from_composition): Adjust for the change of struct it.
6318 Update it->cmp_it.
b8ff72fa
SM
6319 (dump_glyph): Adjust for the change of struct glyph.
6320 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
6321 it and struct glyph. Don't handle automatic composition here.
6322 (fill_gstring_glyph_string): New function.
6323 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 6324 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
6325 (BUILD_GSTRING_GLYPH_STRING): New macro.
6326 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
6327 automatic composition.
b8ff72fa 6328 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 6329 struct glyph.
b8ff72fa 6330 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 6331
b8ff72fa 6332 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
6333 the change of struct glyph_string.
6334 (x_draw_glyph_string): Likewise.
6335
63362008-08-29 Glenn Morris <rgm@gnu.org>
6337
6338 * buffer.c (word-wrap): Doc fix.
6339 * xdisp.c (truncate-partial-width-windows): Doc fix.
6340 Increase default to 50.
6341
63422008-08-29 Chong Yidong <cyd@stupidchicken.com>
6343
6344 * xdisp.c (update_tool_bar_unwind): New function.
6345 (update_tool_bar): Temporarily set selected frame before building
6346 tool-bar items.
6347
63482008-08-28 Michael Albinus <michael.albinus@gmx.de>
6349
6350 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
6351 snprintf, respectively.
6352 (xd_append_arg): Convert strings with Fstring_make_unibyte.
6353
63542008-08-28 Chong Yidong <cyd@stupidchicken.com>
6355
6356 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
6357 LDFLAGS to GNUstep CC invocation.
6358
63592008-08-27 Chong Yidong <cyd@stupidchicken.com>
6360
6361 * indent.c (Fvertical_motion): Revert last change. Handle the
6362 general case where we are moving forward, and PT spans multiple
6363 screen lines.
6364
6365 * eval.c (find_handler_clause): Temporarily increase
6366 max-lisp-eval-depth while printing the backtrace buffer, to
6367 guarantee that help-mode code can run.
6368
63692008-08-27 Eli Zaretskii <eliz@gnu.org>
6370
6371 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
6372 colors under -rv.
6373 (IT_set_frame_parameters): Don't swap foreground and background
6374 colors if `(reverse . t)' is present in the frame properties.
6375 (internal_terminal_init): Call init_frame_faces only for the
6376 initial frame.
6377
63782008-08-27 Andreas Schwab <schwab@suse.de>
6379
6380 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
6381
63822008-08-27 Andreas Schwab <schwab@suse.de>
6383
6384 * search.c (search_buffer): Set char_base to zero only at the end.
6385
63862008-08-27 Kenichi Handa <handa@m17n.org>
6387
b8ff72fa 6388 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
6389
63902008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
6391
6392 * xterm.c (x_term_init): Temporarily hide the partially
6393 initialized terminal while calling vendor-specific-keysyms.
6394
63952008-08-26 Eli Zaretskii <eliz@gnu.org>
6396
6397 * msdos.c (internal_terminal_init): Most initializations done only
6398 once, especially initial_screen_colors[] and termscript open.
6399
64002008-08-26 Chong Yidong <cyd@stupidchicken.com>
6401
6402 * eval.c (Fcondition_case): Doc fix.
6403
6404 * widgetprv.h (EmacsFramePart): Change font member to the new font
6405 struct.
6406
6407 * widget.c: Include character.h and font.h for XSETFONT.
6408 (setup_frame_gcs): Compute X font id from font struct, just once.
6409
64102008-08-26 Eli Zaretskii <eliz@gnu.org>
6411
6412 * term.c (get_named_tty): Fix last change.
6413
64142008-08-26 Chong Yidong <cyd@stupidchicken.com>
6415
6416 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 6417 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
6418
64192008-08-25 Eli Zaretskii <eliz@gnu.org>
6420
6421 * frame.c (do_switch_frame): Mark previously displayed frame as
6422 obscured for FRAME_MSDOS_P frames as well.
6423
64242008-08-24 Eli Zaretskii <eliz@gnu.org>
6425
6426 * frame.c (make_terminal_frame): Initialize f->terminal,
6427 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6428 Set the top frame to newly created frame.
6429 (Fmake_terminal_frame): Reuse the_only_display_info.
6430
6431 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6432 estimating available memory.
6433
b97439ce 64342008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
6435
6436 * nsterm.m (ns_draw_window_cursor): Don't call
6437 NSDisableScreenUpdates and NSEnableScreenUpdates on
6438 non-NS_IMPL_COCOA systems.
6439
64402008-08-23 Andreas Schwab <schwab@suse.de>
6441
6442 * process.c (procfs_system_process_attributes): Fix use of
6443 uninitialized variables.
6444
64452008-08-23 Eli Zaretskii <eliz@gnu.org>
6446
6447 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6448
6449 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6450 calling tty-set-up-initial-frame-faces.
6451
b8ff72fa
SM
6452 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6453 Allow MSDOS frames along with X frames.
aac0c6e3
MR
6454
6455 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6456 addition to output_termcap.
6457
6458 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6459
6460 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6461 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6462 highlight.
6463
6464 * process.c [!subprocesses]: Define QCname.
6465 (syms_of_process): Intern and staticpro it.
6466
6467 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
6468 Adjust for changes in encoding/decoding routines.
6469 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
6470 encode_coding and decode_coding.
6471
b8ff72fa 6472 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
6473
6474 * dosfns.c: Include frame.h before termhooks.h.
6475 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6476 variable termscript.
6477
6478 * s/msdos.h (USER_FULL_NAME): Define.
6479 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6480
6481 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6482 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6483 pw->pw_gecos.
6484
6485 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6486 SELECTED_FRAME as additional (1st) argument.
6487 (tty_read_avail_input): Handle output_msdos_raw in
6488 addition to output_termcap.
6489
6490 * msdos.c: Include frame.h before termhooks.h.
6491 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6492 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6493 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6494 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6495 (IT_set_terminal_modes, IT_reset_terminal_modes)
6496 (IT_set_frame_parameters): Use tty->termscript instead of a global
6497 variable termscript.
6498 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6499 global variable terminal_coding. Don't refer to
6500 Vnonascii_translation_table.
6501 (internal_terminal_init): Set Vwindow_system in current_kboard.
6502 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6503 Announce date and time of session start, if termscript is open.
6504 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
6505 term.c:init_tty). Open termscript only of not already open.
6506 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
6507 here instead of dos_ttraw. Don't initialize display if this is an
6508 initial tty. Don't set FRAME_FONT.
6509 (Vwindow_system_version): Bump to 23.
6510 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6511 is available, set up mouse_position_hook.
6512 (dos_ttraw, IT_set_terminal_modes): If called with initial
6513 terminal, do nothing.
6514 (IT_set_frame_parameters): Handle the Qtty_type frame
6515 parameter by calling internal_terminal_init.
6516 (dos_set_window_size, show_mouse_face)
6517 (clear_mouse_face, IT_note_mode_line_highlight)
6518 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6519 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6520 (initialize_msdos_display): New function.
6521 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6522 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6523 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6524 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 6525 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
6526 (request_sigio, unrequest_sigio): Don't define, now defined on
6527 sysdep.c.
6528 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6529
6530 * term.c [MSDOS]: Include msdos.h.
6531 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6532 conditional to DOS_NT. Allow only one call to this function in a
6533 session. Don't allocate a new struct tty_display_info; instead,
6534 reuse the_only_display_info. Call get_tty_size to get screen
6535 dimensions. Call init_baud_rate to set bad_rate.
6536 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6537 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 6538 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
6539 (get_tty_terminal, get_named_tty, Ftty_type)
6540 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6541 output_termcap.
b8ff72fa
SM
6542 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6543 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 6544 only when subprocesses are supported.
aac0c6e3
MR
6545
6546 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6547 f->output_data.x.
6548 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6549 terminal devices.
6550
5582fbc7 6551 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
6552 x_output.
6553 (FRAME_FONT): Use output_data.tty.
6554 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
6555 (struct x_display_info): Rename from display_info. Update all users in
6556 msdos.c.
aac0c6e3 6557 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 6558 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
6559 (dos_ttraw): Update prototype.
6560
6561 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6562 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6563
65642008-08-23 Jason Rumney <jasonr@gnu.org>
6565
6566 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6567 (fn_TIFFSetDirectory): New library function used.
6568 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6569 (tiff_load): Use :index to select among multiple images. Set count
6570 property when multiple images exist.
6571 (gif_format): Use :index, not :image.
6572
65732008-08-23 Chong Yidong <cyd@stupidchicken.com>
6574
6575 * xdisp.c (try_scrolling): Check INT_MAX instead of
6576 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6577 to obtain INT_MAX.
6578
65792008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6580
6581 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6582
65832008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6584
6585 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6586 GNUstep library location.
6587
65882008-08-21 Chong Yidong <cyd@stupidchicken.com>
6589
6590 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6591 before using it.
6592
6593 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6594
65952008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6596
6597 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6598 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6599 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6600 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6601 (EmacsApp-cursor_blink_handler): Remove declaration.
6602 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6603 match 01 Feb 2008 changes in xterm.c.
6604 (ns_read_socket): Add cast to avoid warning.
6605 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6606 GNUstep.
6607
66082008-08-20 Chong Yidong <cyd@stupidchicken.com>
6609
6610 * xselect.c (x_get_foreign_selection): Return nil if desired
6611 selection could not be obtained, instead of signalling an error.
6612
66132008-08-20 David Reitter <david.reitter@gmail.com>
6614
6615 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6616 * nsterm.m: Remove ns-specific code for cursor blinking.
6617 (ns_draw_window_cursor): Clear cursor properly rather than
6618 redrawing the area. Respect width of bar cursors.
6619 These changes enable the use of generic blink-cursor-mode and
6620 generic cursor types in NS and support smooth cursor movements (do
6621 not blink off after command).
6622 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6623 Nextstep, too.
6624
66252008-08-19 Kenichi Handa <handa@m17n.org>
6626
6627 * font.c (Vfont_log_deferred): New variable.
6628 (font_add_log): Check Vfont_log_deferred.
6629 (font_deferred_log): New function.
6630
6631 * font.h (font_deferred_log): Extern it.
6632
6633 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6634 for sorting.
6635 (face_for_char): Use deferred log.
6636
66372008-08-18 Kenichi Handa <handa@m17n.org>
6638
6639 * fontset.c (face_for_char): Add font log.
6640
6641 * font.c (font_add_log): Add the font properties :script, :lang,
6642 and :otf in the log.
6643
66442008-08-17 Chong Yidong <cyd@stupidchicken.com>
6645
6646 * xdisp.c: Remove dead code.
6647 (handle_invisible_prop, next_overlay_string): Defer call to
6648 setup_for_ellipsis.
6649 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6650
66512008-08-15 Chong Yidong <cyd@stupidchicken.com>
6652
6653 * xfaces.c (lookup_derived_face): Properly handle possible zero
6654 return value of get_lface_attributes.
6655 (merge_faces): Don't tell lookup_derived_face to signal an error
6656 if face is not found.
6657
6658 * dired.c (Fdirectory_files): Doc fix.
6659
6660 * process.c (make_process): Initialize kill_without_query struct
6661 member.
6662
66632008-08-15 Eli Zaretskii <eliz@gnu.org>
6664
6665 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6666 Alternative calculation of totphys for Visual Studio 6.
6667
6668 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6669
6670 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6671 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6672 All users changed.
6673 (stat): Only root directory passed to GetDriveType. Allow RAM
6674 disk as well as local fixed disk when w32-get-true-file-attributes
6675 is set to `local'.
6676 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6677 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6678 (w32_cached_id, w32_add_to_cache): New functions.
6679 (get_name_and_id): Look account names in the cache before calling
6680 lookup_account_sid.
6681 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6682 New initialization flags.
6683 (globals_of_w32): Initialize them to zero.
6684 (w32_system_process_attributes): Use w32_cached_id and
6685 w32_add_to_cache.
6686
66872008-08-14 Lawrence Mitchell <wence@gmx.li>
6688
6689 * lread.c (Fread_char, Fread_char_exclusive): If no character
6690 event is read before timeout is reached, return nil, rather than
6691 converting to a number.
6692
66932008-08-14 Chong Yidong <cyd@stupidchicken.com>
6694
6695 * fns.c (use_dialog_box): Doc fix.
6696
6697 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6698 on OS X.
6699
67002008-08-13 Chong Yidong <cyd@stupidchicken.com>
6701
6702 * frame.c (Qns_parse_geometry): New var.
6703 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6704
67052008-08-11 Chong Yidong <cyd@stupidchicken.com>
6706
6707 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6708 space character in calculating tabs.
6709
67102008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6711
6712 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6713
67142008-08-10 Glenn Morris <rgm@gnu.org>
6715
6716 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6717 silence gcc "limited range of data type" warnings in some
6718 make_fixnum_or_float calls.
6719
67202008-08-09 Eli Zaretskii <eliz@gnu.org>
6721
6722 * w32.c (w32_system_process_attributes): If the process does not
6723 exist, return nil.
6724
6725 * w32.c: Include thelp32.h, psapi.h and coding.h.
6726 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6727 declarations.
6728 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6729 (Process32Next_Proc): New typedefs.
6730 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6731 (g_b_init_process32_next, g_b_init_open_thread_token)
6732 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6733 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6734 (g_b_init_get_process_working_set_size)
6735 (g_b_init_global_memory_status_ex): New static variables.
6736 (globals_of_w32): Initialize them.
6737 (create_toolhelp32_snapshot, process32_first, process32_next)
6738 (open_thread_token, impersonate_self, revert_to_self)
6739 (get_process_memory_info, get_process_working_set_size)
6740 (global_memory_status, global_memory_status_ex): New wrapper
6741 functions.
6742 (w32_list_system_processes, w32_system_process_attributes)
6743 (enable_privilege, restore_privilege, ltime, process_times):
6744 New functions.
6745 (convert_time_raw): New function.
6746 (convert_time): Remove conversion of FILETIME into time in 100
6747 nsec units, call convert_time_raw instead.
6748
6749 * process.h (w32_list_system_processes, w32_system_process_attributes):
6750 Add prototypes.
6751 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6752 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6753 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6754 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6755
6756 * process.c (Fsystem_process_attributes): Doc fix.
6757
67582008-08-08 Chong Yidong <cyd@stupidchicken.com>
6759
6760 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6761 a continued multi-char glyph; if so, advance to the actual glyph.
6762
67632008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6764
6765 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6766
6767 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6768 (.m.o): Use it.
6769 * config.in: Regenerate.
6770
67712008-08-07 Chong Yidong <cyd@stupidchicken.com>
6772
6773 * xdisp.c (redisplay_window): Revert last change.
6774 (try_window): Check bottom scroll margin too.
6775
67762008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6777
6778 * config.in: Regenerate.
6779
6780 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6781 -list-load-path-shadows'.
6782 (nsgui.h): Reduce number of things depending on it.
6783
67842008-08-06 Chong Yidong <cyd@stupidchicken.com>
6785
6786 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6787 instead of window-end which does the wrong thing at eob.
6788 (try_cursor_movement): Minor optimization.
6789 (redisplay_window): If scroll margin is defined, don't assume
6790 window doesn't need scrolling.
6791
67922008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6793
6794 * config.in: Regenerate.
6795
6796 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6797 (mostlyclean): Don't delete *.d under NS.
6798
6799 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6800
68012008-08-06 Kenichi Handa <handa@m17n.org>
6802
6803 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6804
68052008-08-06 Andreas Schwab <schwab@suse.de>
6806
6807 * config.in: Regenerate.
6808
68092008-08-05 Chong Yidong <cyd@stupidchicken.com>
6810
6811 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6812 forcing a window start.
6813
6814 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6815 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6816
68172008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6818
6819 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6820 argument.
6821
68222008-08-05 Juanma Barranquero <lekktu@gmail.com>
6823
6824 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6825 <scroll-down-aggressively, before-change-functions>:
6826 <after-change-functions>: Reflow docstrings.
6827
68282008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6829 Ken Raeburn <raeburn@gnu.org>
6830
6831 Dock menu customization, based on a patch by Ken Raeburn, plus some
6832 other fixes.
6833 * nsmenu.m (dockMenu): New variable.
6834 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6835
6836 * nsterm.h (dockMenu): Declare.
6837
6838 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6839 (ns_term_init): Initialize dockMenu.
6840 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6841 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6842 left.
6843
6844 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6845
68462008-08-04 Chong Yidong <cyd@stupidchicken.com>
6847
6848 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6849
6850 * config.in: Regenerate.
6851
68522008-08-04 Seiji Zenitani <zenitani@mac.com>
6853
6854 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6855
68562008-08-04 Chong Yidong <cyd@stupidchicken.com>
6857
6858 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6859
68602008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6861
6862 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6863
6864 * keyboard.h: Comment an #endif.
6865
6866 * lisp.h (have_menus_p): Adjust comment.
6867
6868 * menu.c (find_and_return_menu_selection): Fix comparison with
6869 client_data.
6870
6871 * nsmenu.m (popup_activated_flag): New variable.
6872 (popup_activated): New function.
6873 (menu-or-popup-active-p): New exported lisp definition.
6874 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6875 when popup done.
6876 (ns_popup_dialog): Set popup_activated_flag.
6877
6878 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6879 version for GNUstep (handled by conditional typedef in nsterm.m).
6880 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6881 in rgb.txt).
6882
6883 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6884
6885 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6886
6887 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6888
6889 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6890 shortcircuit if popup_activated like GTK and X toolkit.
6891
6892 * m/inter386.h: Change DARWIN to DARWIN_OS.
6893
6894 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6895 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6896 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6897 comment on NO_SOCK_SIGIO.
6898
68992008-08-03 Chong Yidong <cyd@stupidchicken.com>
6900
6901 * nsterm.m (windowDidResize): Remove stopModal call.
6902
69032008-08-03 Andreas Schwab <schwab@suse.de>
6904
6905 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6906 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6907
69082008-08-02 Chong Yidong <cyd@stupidchicken.com>
6909
6910 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6911 Don't use uninitialized pointer variable when using getrlimit.
6912
69132008-08-02 Jason Rumney <jasonr@gnu.org>
6914
6915 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6916
69172008-08-02 Eli Zaretskii <eliz@gnu.org>
6918
6919 * alloc.c (NSTATICS): Bump to 0x640.
6920
6921 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6922
6923 * lisp.h: Add prototype for directory_files_internal.
6924
6925 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6926 New functions.
6927 (syms_of_process): Defsubr them. Add initializations for various
6928 Q* symbols used in procfs_system_process_attributes.
6929 (procfs_list_system_processes, procfs_system_process_attributes)
6930 [HAVE_PROCFS]: New functions.
6931 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6932 (procfs_get_total_memory): New functions.
6933
69342008-08-01 Juanma Barranquero <lekktu@gmail.com>
6935
6936 * xfaces.c (Fx_load_color_file): Fix previous change;
6937 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6938
69392008-08-01 Michael Albinus <michael.albinus@gmx.de>
6940
6941 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6942
69432008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6944
6945 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6946
69472008-08-01 Chong Yidong <cyd@stupidchicken.com>
6948
6949 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6950
6951 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6952 define NSApplicationDelegateReplySuccess.
6953 (EmacsView -converstationIdentifier): Use long instead of
6954 NSInteger for GNUstep, since it doesn't have NSInteger.
6955
6956 * xmenu.c: Revert last change.
6957
6958 * keyboard.h: Fix last change.
6959
69602008-08-01 Juanma Barranquero <lekktu@gmail.com>
6961
6962 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6963 on Windows.
6964
69652008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6966
6967 Warning clearing and clean-up in NS port.
6968 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6969 Add prototypes.
6970 * nsgui.h (FACE_DEFAULT): Remove, unused.
6971 (XGCValues): Change colors to unsigned long.
6972 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6973 nsterm.m.
6974 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6975 (ns_list_fonts): Remove, unused.
6976 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6977 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6978 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6979 (nsfont_draw): Compare face colors to 0, not nil.
6980 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6981 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6982 (-addSubmenuWithTitle:): Use NSMenuItem class.
6983 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6984 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6985 (ns_clip_to_row): Make gc arg a BOOL.
6986 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6987 ns_clip_to_row() call.
6988 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6989 used). Cast FRAME_FONT assignments.
6990 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6991 (ns_string_to_lispmod): Change arg to const char.
6992 (ns_term_init): Use NSMenuItem class.
6993 (EmacsApp -openFile:): Move to different section of file.
6994 (EmacsApp -application:openFiles:): Don't return a value, call
6995 -replyToOpenOrPrint:.
6996 (EmacsView -keyDown:): Fix up cast.
6997 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6998 (EmacsView -menuDown:): Cast tag in call to
6999 find_and_call_menu_selection().
7000 (ns_list_fonts): Remove, unused.
7001 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
7002 (ns_fontname_to_xlfd): Make static.
7003 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
7004 Remove prototypes (now in keyboard.h).
7005 (next_menubar_widget_id): Remove, unused.
7006 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
7007 Remove prototypes (now in keyboard.h).
7008 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
7009
70102008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
7011
7012 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
7013 (floatfns.o): Depend on syssignal.h.
7014 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
7015
7016 * systty.h: Fix previous change that removed BSD_TERMIOS.
7017 Add comments to #ifdefs.
7018
70192008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7020
7021 * w32fns.c (w32-load-color-file): Remove.
7022 (x-open-connection): Use renamed Fx_load_color_file.
7023 * xfaces.c (x-load-color-file): Add.
7024 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
7025 Emacs.clr.
7026 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
7027
70282008-07-31 Michael Albinus <michael.albinus@gmx.de>
7029
7030 * dbusbind.c (Fdbus_call_method_asynchronously)
7031 (Fdbus_method_error_internal): New defuns.
7032 (xd_read_message): Handle also reply messages.
7033 (Vdbus_registered_functions_table): Extend docstring.
7034
70352008-07-31 Juanma Barranquero <lekktu@gmail.com>
7036
7037 * keyboard.c (gobble_input): Fix previous change.
7038
70392008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7040
7041 * bitmaps/README:
7042 * xfns.c:
7043 * termcap.c:
7044 * term.c:
7045 * syswait.h:
7046 * systty.h:
7047 * systime.h:
7048 * syssignal.h:
7049 * sysdep.c:
7050 * process.h:
7051 * process.c:
7052 * print.c:
7053 * ndir.h:
7054 * lread.c:
7055 * keyboard.c:
7056 * getpagesize.h:
7057 * floatfns.c:
7058 * fileio.c:
7059 * emacs.c:
7060 * doc.c:
7061 * dispnew.c:
7062 * dired.c:
7063 * data.c:
7064 * callproc.c:
7065 * buffer.c:
7066 * README:
7067 * Makefile.in:
7068 * s/template.h:
7069 * s/msdos.h:
7070 * m/vax.h: Remove VMS support.
7071 * s/vms.h:
7072 * vlimit.h:
7073 * uaf.h:
7074 * temacs.opt:
7075 * param.h:
7076 * ioctl.h: Remove file.
7077
70782008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7079
7080 * s/ms-w32.h (MULTI_KBOARD): Remove.
7081 * xterm.c:
7082 * xselect.c:
7083 * xfns.c:
7084 * window.c:
7085 * w32term.c:
7086 * w32fns.c:
7087 * terminal.c:
7088 * termhooks.h:
7089 * term.c:
7090 * sysdep.c:
7091 * keyboard.h:
7092 * keyboard.c:
7093 * frame.h:
7094 * frame.c:
7095 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
7096 * config.in: Regenerate.
7097
70982008-07-30 Jason Rumney <jasonr@gnu.org>
7099
7100 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
7101
7102 * w32font.c (w32font_encode_char): Leave as unicode if in range.
7103 (w32font_open_internal): Get unicode version of textmetrics.
7104 Don't enable or disable glyph indices here.
7105 (w32font_open): Disable use of glyph indices.
7106
7107 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
7108
71092008-07-30 Chong Yidong <cyd@stupidchicken.com>
7110
7111 * minibuf.c (Vread_buffer_function): Doc fix.
7112
71132008-07-30 John Paul Wallington <jpw@pobox.com>
7114
7115 * minibuf.c (read_buffer_completion_ignore_case): New var.
7116 (Fread_buffer): Use it.
7117
71182008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
7119
7120 * systty.h (sensemode): Remove empty #if. Remove reference to
7121 BSD_TERMIOS, unused.
7122
7123 * sysdep.c: Remove reference to DGUX.
7124 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
7125
7126 * config.in: Regenerate.
7127
71282008-07-30 Jason Rumney <jasonr@gnu.org>
7129
7130 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
7131
71322008-07-29 Jason Rumney <jasonr@gnu.org>
7133
7134 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
7135 is populated.
7136 (uniscribe_encode_char): Always use uniscribe.
7137 Avoid using context if cache is populated.
7138
71392008-07-29 Jan Djärv <jan.h.d@swipnet.se>
7140
7141 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
7142 open menu.
7143
7144 * gtkutil.c (menu_nav_ended): Remove.
7145 (create_menus): Remove signal connect for menu_nav_ended.
7146
71472008-07-28 Chong Yidong <cyd@stupidchicken.com>
7148
7149 * xdisp.c (redisplay_window): Check return value of
7150 compute_window_start_on_continuation_line before forcing a window
7151 start.
7152
71532008-07-28 Jason Rumney <jasonr@gnu.org>
7154
7155 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
7156
7157 * w32term.c (w32_enable_unicode_output, cleartype_active):
7158 Remove obsolete display options.
7159 (x_draw_glyph_string_background): Don't use old cleartype_active
7160 workaround.
7161 (w32_initialize): Remove cleartype_active initialization.
7162 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
7163
71642008-07-28 Andreas Schwab <schwab@suse.de>
7165
7166 * lisp.h (init_weak_hash_tables, syms_of_font)
7167 (xd_read_queued_messages, syms_of_dbusbind): Declare.
7168 (remove_hash_entry): Don't declare.
7169 * eval.c (maybe_call_debugger): Make static and move before use.
7170 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
7171 * xdisp.c: Include "gtkutil.h" if USE_GTK.
7172 * xterm.h (x_set_frame_alpha): Declare.
7173
71742008-07-28 Jan Djärv <jan.h.d@swipnet.se>
7175
7176 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
7177 (create_menus): Connect selection-done to menu_nav_ended.
7178
71792008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7180
7181 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
7182 Set Vx_resource_name to a fallback. Replace read of 'buffered'
7183 parameter with read of 'alpha' one.
7184 (Qns_frame_parameter): Remove.
5582fbc7 7185 * nsselect.m (selection-coding-system)
aac0c6e3
MR
7186 (next-selection-coding-system, Vselection_coding_system)
7187 (Vnext_selection_coding_system): Drop.
7188
71892008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7190
7191 * nsfns.m (do-applescript, do_applescript): Rename to
7192 ns-do-applescript, ns_do_applescript, and move within file.
7193
71942008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
7195
7196 Remove support for Mac Carbon.
7197 * mactoolbox.c:
7198 * macterm.h:
7199 * macterm.c:
7200 * macselect.c:
7201 * macmenu.c:
7202 * macgui.h:
7203 * macfns.c:
7204 * mac.c: Remove file.
7205 * s/darwin.h:
7206 * m/intel386.h:
7207 * xfaces.c:
7208 * xdisp.c:
7209 * window.c:
7210 * tparam.c:
7211 * termhooks.h:
7212 * termcap.c:
7213 * term.c:
7214 * syssignal.h:
7215 * sysselect.h:
7216 * sysdep.c:
7217 * process.c:
7218 * lread.c:
7219 * lisp.h:
7220 * keyboard.c:
7221 * image.c:
7222 * fringe.c:
7223 * frame.h:
7224 * frame.c:
7225 * fontset.c:
7226 * font.h:
7227 * font.c:
7228 * fns.c:
7229 * fileio.c:
7230 * emacs.c:
7231 * dispnew.c:
7232 * dispextern.h:
7233 * config.in:
7234 * atimer.c:
2ae37cf0 7235 * Makefile.in: Remove code for Carbon.
aac0c6e3 7236
f0131492 72372008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
7238
7239 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
7240
72412008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7242
7243 * macterm.h (kCGBitmapByteOrder32Host): New define for
7244 non-universal SDKs.
7245
7246 * image.c (mac_create_cg_image_from_image, image_load_image_io)
7247 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7248
7249 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
7250 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7251
72522008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
7253
7254 * w32inevt.c: Include dispextern.h.
7255
72562008-07-26 Andreas Schwab <schwab@suse.de>
7257
7258 * print.c (print_object): Fix off-by-one in last change.
7259
72602008-07-25 Juanma Barranquero <lekktu@gmail.com>
7261
7262 * term.c (syms_of_term): Don't initialize default_orig_pair,
7263 default_set_foreground and default_set_background on Windows.
7264
72652008-07-25 Jason Rumney <jasonr@gnu.org>
7266
7267 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
7268 ScriptItemize. Clean up return value checking. Remove unused
7269 variables.
7270 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
7271 shaping engine.
7272
7273 * w32font.c (w32font_has_char): Handle the case where we can't
7274 determine the script for a character.
7275
72762008-07-25 Chong Yidong <cyd@stupidchicken.com>
7277
7278 * term.c (syms_of_term): Initialize default_orig_pair,
7279 default_set_foreground, and default_set_background.
7280
7281 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
7282 clash (bug#86).
7283 (getloadavg): Callers changed.
7284
7285 * image.c (svg_load_image): Fix last change.
7286 (svg_load_image): Use rsvg_handle_get_dimensions to check that
7287 image size is valid. Use g_object_unref instead of deprecated
7288 rsvg_handle_free to free rsvg handle.
7289 (x_from_xcolors): Don't initialize pixmap (silence compiler).
7290
72912008-07-25 Jason Rumney <jasonr@gnu.org>
7292
7293 * w32font.c (w32font_encode_char): Encode characters outside BMP as
7294 surrogates before looking up glyph index.
7295 (w32font_text_extents): Encode as surrogates if falling back to
7296 functions that need UTF-16 wide chars.
7297
7298 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
7299 BMP as surrogates before looking up glyph index.
7300
73012008-07-25 Chong Yidong <cyd@stupidchicken.com>
7302
7303 * image.c (svg_load_image): Check for failure in return value of
7304 rsvg_handle_get_pixbuf. Free rsvg handle when done.
7305
73062008-07-25 Jason Rumney <jasonr@gnu.org>
7307
7308 * w32font.c (Fx_select_font): Reverse sense of second arg.
7309
73102008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
7311
7312 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
7313 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
7314
7315 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
7316 (PURESIZE): Use it.
7317
73182008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
7319
7320 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
7321 * m/alpha.h (TEXT_END):
7322 * m/ibmrs6000.h (TEXT_END):
7323 * m/macppc.h (TEXT_END):
7324 * s/darwin.h (TEXT_END):
7325 * s/msdos.h (TEXT_END): Remove, unused.
7326 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
7327 * s/cygwin.h: Remove comment.
7328
7329 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
7330 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
7331 * m/intel386.h (DOT_GLOBAL_START):
7332 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
7333 (USG): Remove, file not used on USG platforms.
7334
7335 * Makefile.in (HAVE_X11): Remove empty #else.
7336
73372008-07-24 Andreas Schwab <schwab@suse.de>
7338
7339 * fileio.c (Finsert_file_contents): Properly adjust undo list
7340 after format conversion.
7341
73422008-07-24 Jan Djärv <jan.h.d@swipnet.se>
7343
7344 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
7345 (menu_nav_ended): Remove.
7346 (create_menus): Remove signal connect for menu_nav_ended.
7347 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
7348 create_menus.
7349 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
7350
73512008-07-23 Jason Rumney <jasonr@gnu.org>
7352
7353 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
7354 with opened font.
7355 (w32font_open): Set font type to gdi.
7356
7357 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
7358
73592008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
7360
7361 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
7362 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
7363 defines it.
7364 * unexec.c (ADDR_CORRECT): Define unconditionally.
7365
7366 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
7367
7368 * unexec.c: Remove code depending on !COFF and USG, the file is
7369 not used for such systems.
7370
7371 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
7372 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
7373 (LD_SWITCH_SYSTEM_1): Remove, update users.
7374
7375 * s/darwin.h (DATA_END):
7376 * m/intel386.h (DATA_END):
7377 * m/ibmrs6000.h (DATA_END):
7378 * m/alpha.h (DATA_END): Remove, unused.
7379
7380 * config.in: Regenerate.
7381 * s/ms-w32.h (subprocesses): Define unconditionally.
7382 * s/template.h (subprocesses): Update comment.
7383 * s/vms.h (subprocesses):
7384 * s/usg5-4.h (subprocesses):
7385 * s/hpux10-20.h (subprocesses):
7386 * s/gnu-linux.h (subprocesses):
7387 * s/cygwin.h (subprocesses):
7388 * s/bsd-common.h (subprocesses):
7389 * s/aix4-2.h (subprocesses):
7390 * s/darwin.h (subprocesses): Do not define, defined by default now.
7391
7392 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7393 Remove all references.
7394 (temacs): Add GNUstep specific ld flags.
7395
7396 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7397 similarly to what X does.
7398
73992008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7400
7401 * nsfns.m (x-list-fonts): Remove.
7402 (syms_of_nsfns): Drop the x-list-fonts declaration.
7403 * nsterm.m: Get rid of remaining "//" comments.
7404
74052008-07-22 Chong Yidong <cyd@stupidchicken.com>
7406
7407 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7408
7409 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7410 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7411 (Fns_own_selection_internal, Fx_disown_selection_internal)
7412 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7413
7414 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7415 ... */' style of docstrings. Doc fixes.
7416
74172008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7418
7419 * terminfo.c (UP, BC, PC): Undo previous change.
7420
7421 * nsfns.m: Rename ns prefixed functions/variables to the
7422 corresponding x versions. Update references.
7423
74242008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7425
7426 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7427
74282008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7429
7430 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7431 Remove forwarding functions.
7432 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7433 non-static.
7434 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7435 non-static.
7436 (ns_frame_parm_handlers): Use the new names.
7437 (syms_of_nsfns): Move to the end of file.
7438
7439 * nsterm.m (syms_of_nsterm): Move to the end of file.
7440
7441 * dispnew.c (init_display): Remove code for X10.
7442
74432008-07-22 Jason Rumney <jasonr@gnu.org>
7444
7445 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7446 bare drive.
7447
74482008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7449
7450 * nsterm.m (syms_of_nsterm): Remove debugging println.
7451
74522008-07-22 David Reitter <david.reitter@gmail.com>
7453
7454 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7455 Carbon implementation of the same functionality: execute arbitrary
7456 AppleScript code.
7457
74582008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7459
7460 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7461 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7462 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7463 (Fx_display_mm_height, Fx_display_mm_width)
7464 (Fx_display_backing_store, Fx_display_visual_class)
7465 (Fx_display_save_under, Fx_open_connection)
7466 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7467 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7468 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7469 (Fx_display_pixel_width, Fx_display_pixel_height)
7470 (Fx_display_usable_bounds, Fx_display_planes)
7471 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7472 ... */' style of docstrings.
7473
74742008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7475
7476 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7477 on this platform.
7478 (mips):
7479 * m/iris4d.h (mips): Do not define.
7480 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7481
7482 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7483
7484 * image.c:
7485 * nsfns.m:
7486 * nsselect.m:
7487 * nsterm.h:
7488 * nsterm.m: Rename ns prefixed functions/variables to the
7489 corresponding x versions. Update references.
7490
7491 * m/ibms390x.h (NO_REMAP): Do not undefine.
7492
7493 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7494
74952008-07-21 Chong Yidong <cyd@stupidchicken.com>
7496
7497 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7498 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7499 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7500 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7501 (Fns_display_mm_height, Fns_display_mm_width)
7502 (Fns_display_backing_store, Fns_display_visual_class)
7503 (Fns_display_save_under, Fns_open_connection)
7504 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7505 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7506 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7507 (Fns_display_pixel_width, Fns_display_pixel_height)
7508 (Fns_display_usable_bounds, Fx_display_planes)
7509 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7510
75112008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7512
7513 * print.c (print_object): Check print_depth before searching for
7514 circularities.
7515
75162008-07-21 Michael Albinus <michael.albinus@gmx.de>
7517
7518 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7519 only sprintf.
7520
75212008-07-21 Kenichi Handa <handa@m17n.org>
7522
7523 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7524
75252008-07-20 Andreas Schwab <schwab@suse.de>
7526
7527 * syntax.c (find_start_pos, find_start_value)
7528 (find_start_value_byte, find_start_begv, find_defun_start)
7529 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7530
75312008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7532
7533 * s/sol2-3.h: Insert contents of s/sol2.h.
7534 (LD_SWITCH_SYSTEM): Remove redundant definition.
7535 * s/sol2.h: Remove, unused.
7536
75372008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7538
7539 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7540
75412008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7542
7543 * Makefile.in (ns_appdir): Fix typo in find command.
7544
75452008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7546
7547 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7548
7549 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7550 added not supported anymore.
7551
7552 * s/usg5-4-2.h (LIBS_SYSTEM):
7553 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7554
7555 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7556 * s/lynxos.h (GETPGRP_NO_ARG):
7557 * s/hpux10-20.h (NO_SIOCTL_H):
7558 * s/gnu.h (GETPGRP_NO_ARG):
7559 * s/gnu-linux.h (NO_SIOCTL_H):
7560 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7561 * s/cygwin.h (GETPGRP_NO_ARG):
7562 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7563 (C_DEBUG_SWITCH): Remove duplicate definition.
7564
7565 * m/ibms390.h: Remove boilerplate comments.
7566
7567 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7568
7569 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7570 (wait_reading_process_output): Remove code for SunOS, platform not
7571 supported anymore. Use SOLARIS2 instead of sun.
7572
75732008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7574
7575 * font.c (font_open_by_name): Under NS, default lface height to zero.
7576 (font_open_for_lface): Under NS, set size based on frame fontsize.
7577 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7578 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7579
75802008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7581
7582 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7583 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7584 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7585 YES/NO.
7586 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7587 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7588 * Makefile.in (clean): Clear out build destination dir.
7589
75902008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7591
7592 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7593 xterm, xselect.
7594 * lisp.h: Remove declaration of hash_remove.
7595 * nsgui.h: Remove redefinitions of hash_remove.
7596 * fns.c (hash_remove): Rename to hash_remove_from_table.
7597
75982008-07-19 Seiji Zenitani <zenitani@mac.com>
7599
7600 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7601 strdup() the family UTF8String before modifying it.
7602
76032008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7604
7605 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7606 NS_FACE_BACKGROUND with 0 instead of nil.
7607 * nsfont.m (nsfont_draw): Same.
7608
76092008-07-19 Chong Yidong <cyd@stupidchicken.com>
7610
7611 * nsfns.m (ns_set_background_color): Fix crash.
7612
76132008-07-18 Chong Yidong <cyd@stupidchicken.com>
7614
7615 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7616
76172008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7618
7619 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7620
76212008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7622
7623 * gtkutil.c: Include <config.h> instead of "config.h".
7624
7625 * lisp.h (Foverlay_buffer): Add EXFUN.
7626
7627 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7628 child process to complete child_setup. Undo 2005-09-21 change.
7629
7630 * s/darwin.h: Mention setsid after vfork.
7631
76322008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7633
7634 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7635 Depend on macgui.h.
7636
7637 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7638 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7639
7640 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7641 and f19.
7642 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7643
7644 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7645 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7646 Remove enumerators.
7647
7648 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7649 Check if FACE_FROM_ID returns NULL.
7650
76512008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7652
7653 * w32inevt.c (change_frame_size): Remove extern declaration.
7654 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7655 change_frame_size.
7656
76572008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7658
7659 * getloadavg.c: Revert last change (2008-07-15).
7660
76612008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7662
7663 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7664 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7665 from configure.
7666
76672008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7668
7669 * s/sol2.h:
7670 * s/sol2-4.h: Reorganize conditionals.
7671
7672 * ecrt0.c: Remove code depending on m68000, not used anymore.
7673
7674 * fns.c (hash_remove): Make static.
7675 * lisp.h (hash_remove): Don't prototype.
7676
7677 * m/ibmrs6000.h:
7678 * m/ibms390x.h:
7679 * m/macppc.h: Remove boilerplate comments.
7680
7681 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7682 Solaris, which does not need them.
7683
7684 * m/vax.h: Remove comments about unsupported systems.
7685
7686 * s/darwin.h: Reorganize ifdefs.
7687
76882008-07-17 Andreas Schwab <schwab@suse.de>
7689
7690 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7691
76922008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7693
7694 Use SDATA. Follow coding convention of placing operators at
7695 beginning of next line rather than end of previous line, and placing
7696 spaces around infix operators.
7697
7698 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7699 in case it was defined already.
7700 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7701 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7702 ns_default.
7703 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7704 Lisp_Objects.
7705 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7706 (ns_defined_color, ns_color_to_lisp): Declare.
7707 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7708 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7709 it's accepted even with USE_LISP_UNION_TYPE.
7710 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7711 (update_frame_tool_bar): Remove apparently obsolete tests for
7712 non-integerness of f->tool_bar_lines.
7713 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7714 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7715 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7716 (nsfont_open): Don't confuse NULL for Qnil.
7717 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7718 * menu.h (find_and_call_menu_selection):
7719 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7720 (find_and_return_menu_selection): Always return something.
7721 * frame.h: Include dispextern.h for Display_Info.
7722 (display_x_get_resource): Declare.
7723
77242008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7725
7726 * syntax.c: Remove stdio.h include accidentally introduced in
7727 Emacs.app commit.
7728 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7729 NS_IMPL_COCOA.
7730 * keyboard.c (handle_async_input, input_available_signal): Remove
7731 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7732
77332008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7734
7735 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7736 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7737 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7738 Use SDATA.
7739
7740 * keymap.c: Remove all NS-specific code.
7741 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7742 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7743 where_is_preferred_modifier, return a different value depending on how
7744 preferred is the binding.
7745 (where_is_internal): Adjust accordingly.
7746 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7747 Adjust to new preferred_sequence_p.
7748 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7749 * keyboard.c (parse_solitary_modifier): Not static any more.
7750 * keyboard.h (parse_solitary_modifier): Declare.
7751
77522008-07-16 Andreas Schwab <schwab@suse.de>
7753
7754 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7755 of easymenu.
7756
77572008-07-16 Chong Yidong <cyd@stupidchicken.com>
7758
7759 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7760 that we don't move off the line.
7761
77622008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7763
7764 * keyboard.c (Qsuper): Remove.
7765 (parse_menu_item): Don't call where_is_internal specially for NS.
7766
77672008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7768
7769 * s/gnu-linux.h: Remove boilerplate comments.
7770
7771 * m/alpha.h (__ELF__): Consolidate conditions.
7772
7773 * m/m68k.h (linux): Use GNU_LINUX instead.
7774 Remove boilerplate comments.
7775
7776 * m/intel386.h: Undo refactoring from previous change.
7777 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7778 too, remove dead code.
7779 (linux): Use GNU_LINUX instead.
7780
77812008-07-16 Jason Rumney <jasonr@gnu.org>
7782
7783 * w32gui.h: Repeat 26 June changes lost by last change.
7784
77852008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7786
7787 * systty.h: Remove code for Aix on 386, unsupported platform.
7788
7789 * s/ms-w32.h: Remove boilerplate comments.
7790 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7791
7792 * s/gnu-linux.h (TERM): Remove support.
7793 (HAVE_SYSVIPC): Remove, unused.
7794 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7795 for this system.
7796
7797 * process.c: Remove support for IRIS, unused.
7798 Remove support for TERM, not relevant anymore.
7799
7800 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7801 used with the definition.
7802
7803 * s/aix4-2.h (static): Do not undef.
7804
7805 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7806 only used on Aix.
7807 (HAVE_SYSVIPC): Remove, unused.
7808
7809 * m/hp800.h (CANNOT_DUMP): Do not undef.
7810
7811 * m/alpha.h: Fix comment.
7812
7813 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7814 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7815 used by this configuration.
7816 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7817 * unexec.c: Remove code depending on HPUX and
7818 USG_SHARED_LIBRARIES, not used with this file. Remove code
7819 depending on IRIS, unused. Remove if 0-ed code.
7820
7821 * s/template.h: Remove comments about static.
7822
7823 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7824 Remove if 0-ed code.
7825 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7826 were the same as the default.
7827 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7828 Remove boilerplate comments.
7829 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7830 (HAVE_SYSVIPC): Remove, unused.
7831 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7832
7833 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7834 Remove boilerplate comments.
7835 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7836 Remove boilerplate comments.
7837 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7838 Remove boilerplate comments.
7839 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7840
7841 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7842 USG systems which do not use DATA_SEG_BITS.
7843 Refactor code. Remove boilerplate comments.
7844
7845 * m/ibms390.h:
7846 * m/m68k.h:
7847 * s/bsd-common.h:
7848 * s/cygwin.h:
7849 * s/darwin.h:
7850 * s/freebsd.h:
7851 * s/gnu.h:
7852 * s/msdos.h: Remove boilerplate comments.
7853
7854 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7855 do not use this file.
aac0c6e3
MR
7856 (IRIS_4D): Remove, unused.
7857
7858 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7859 do not use this file.
aac0c6e3
MR
7860 (SIGN_EXTEND_CHAR):
7861 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7862 * unexmips.c: Remove file, unused.
7863
7864 * editfns.c (Fuser_full_name): Replace the only use of
7865 USER_FULL_NAME with its value.
7866 * config.in: Regenerate.
7867
78682008-07-16 David Reitter <david.reitter@gmail.com>
7869
7870 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7871 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7872
78732008-07-16 Glenn Morris <rgm@gnu.org>
7874
7875 * emacs.c (system-type): Doc fix.
7876
78772008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7878
7879 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7880 If the cache doesn't work, let's fix it, rather than work around it.
7881
78822008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7883
7884 * Makefile.in: Correct additions for nsfont.o in last commit.
7885 * nsfont.m: New file (forgot last commit).
7886
78872008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7888
7889 * callproc.c (set_initial_environment): Initialize
7890 Vprocess_environment under CANNOT_DUMP (fixes crash when
7891 batch-compiling for bootstrap).
7892
78932008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7894 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7895
7896 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7897 fix crash due to different init order.
7898
78992008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7900
7901 Changes and additions for NeXTstep windowing system (Cocoa and
7902 GNUstep) support.
7903
7904 * Makefile.in:
7905 * config.in: Support defines and build commands for NS port.
7906 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7907 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7908 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7909 windowing.
7910 (struct face): Add synth_ital field.
7911 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7912 (init_display): Initialize Vinitial_window_system to "ns" when so
7913 compiled.
7914 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7915 (display_arg): Use under NS.
7916 (main): Under NS, allocate autorelease pool and handle command line
7917 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7918 (standard_args): Add NS-specific args.
7919 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7920 * font.c (DEFAULT_ENCODING): New variable.
7921 (font_find_for_lface): Use it.
7922 (syms_of_font): Load syms_of_nsfont under NS.
7923 * font.h: Declare nsfont_driver when compiled under NS.
7924 * fontset.c: When compiling under NS, include nsterm.h.
7925 (fontset_from_font): Autoconstruct fontset under NS.
7926 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7927 symbol, document and use it.
7928 (do_switch_frame): When for_deletion under Cocoa, add
7929 Fraise_frame(Qnil).
7930 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7931 (x_get_arg): Allow "yes" and "no" as boolean values.
7932 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7933 Qright under Cocoa.
7934 (focus-follows-mouse): Default to 0 under NS.
7935 * frame.h (enum output_method): Add output_ns.
7936 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7937 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7938 (FRAME_WINDOW_P): NS-specific definition.
7939 * fringe.c (max_used_fringe_bitmap): Make public.
7940 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7941 (getloadavg): Use NeXT code under descendant OS's.
7942 * image.c (includes and header section, x_create_bitmap_from_data)
7943 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7944 (image_background_transparent, x_clear_image_1)
7945 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7946 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7947 (x_to_xcolors, x_from_xcolors, x_disable_image)
7948 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7949 other GUIs, including XPM support using code originally written for
7950 Carbon GUI.
7951 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7952 using NS API.
7953 (image_ascent): Use font metrics macros instead of direct struct field
7954 access.
7955 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7956 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7957 Also, handle NS as GTK for menu bar purposes.
7958 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7959 toolkit where they differ.
7960 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7961 use cachelist, still needed under NS.
7962 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7963 (struct widget_value): Define it here for menu.c.
7964 * keymap.c (includes): Include modifier internals.
7965 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7966 NS.
7967 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7968 support for preferring sequences using certain modifiers, specified by
7969 the FIRSTONLY argument.
7970 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7971 under NS GNUstep implementation.
7972 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7973 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7974 * menu.c: Include nsterm.h under NS.
7975 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7976 (free_menubar_widget_tree_value, update_submenu_strings)
7977 (find_and_call_menu_selection): Treat NS as X and NT.
7978 (find_and_return_menu_selection): New function, used for popup menus.
7979 * nsgui.h:
7980 * nsterm.h:
7981 * nsfns.m:
7982 * nsimage.m:
7983 * nsmenu.m:
7984 * nsselect.m:
7985 * nsterm.m: New files.
7986 * process.c (wait_reading_process_output): Under NS, call ns_select()
7987 instead of plain select().
7988 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7989 beginning of buffer.
7990 * sysselect.h (init_process): Rename when compiling under Cocoa to
7991 avoid name conflict.
7992 * termhooks.h (display_info): Add ns_display_info to union.
7993 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7994 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7995 COCOA environment.
7996 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7997 unexec() signature. (Note, this will dump, but the resulting file
7998 crashes; unexosx is used instead; keeping around for reference and
7999 possible aid in getting dump working under GNUstep.)
8000 * w32gui.h (button_type, widget_value): Remove definitions (now in
8001 keyboard.h).
8002 * window.c: Include nsterm.h when compiling under NS.
8003 * xdisp.c (includes): Include nsterm.h when compiling under NS.
8004 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
8005 other GUI windowing systems.
8006 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
8007 GTK.
8008 (x_consider_frame_title): Under NS, set icon type and frame
8009 modified-state indicator; use ns_set_name_as_filename() when using
8010 formatted title.
8011 (update_window_cursor): Make public when compiling under NS.
8012 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
8013 (hourglass_atimer, Vhourglass_delay
8014 * xfaces.c (header section, init_frame_faces, clear_font_table)
8015 (defined_color, unload_color, x_face_list_fonts)
8016 (prepare_face_for_display): Add NS support parallel to other GUIs.
8017 Emulate GCs like other non-X GUIs.
8018 (split_font_name): Don't lowercase font name under NS.
8019 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
8020 under NS.
8021 * s/darwin.h: Add support for compilation under NS.
8022
80232008-07-15 Jason Rumney <jasonr@gnu.org>
8024
8025 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
8026 (w32_show_hourglass): Rename from show_hourglass.
8027 (w32_hide_hourglass): Rename from hide_hourglass.
8028 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
8029 (Vhourglass_delay): Declare extern.
8030 (hourglass_started): Remove.
8031
8032 * xdisp.c (Vhourglass_delay): Remove static.
8033 (hourglass_started, start_hourglass, cancel_hourglass):
8034 Don't include these versions on WINDOWSNT.
8035
80362008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
8037
8038 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
8039 variables (formerly in xfns.c).
8040 (show_hourglass, hide_hourglass): New prototypes (same).
8041 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
8042 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
8043 in xfns.c).
8044 (syms_of_xdisp): Declare/initialize display-hourglass,
8045 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
8046 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
8047 formerly in xfns.c.
8048 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8049 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8050 (start_hourglass, cancel_hourglass): Remove.
8051 (show_hourglass, hide_hourglass): Remove prototypes and static
8052 modifiers.
8053 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
8054 hourglass_atimer, hourglass_shown_p declaration/initialization.
8055 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8056 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8057 (start_hourglass, cancel_hourglass): Remove.
8058 (show_hourglass, hide_hourglass): Remove prototypes and static
8059 modifiers.
8060 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
8061 hourglass_atimer, hourglass_shown_p declaration/initialization.
8062 * w32fns.c (display_hourglass_p, Vhourglass_delay)
8063 (DEFAULT_HOURGLASS_DELAY): Remove.
8064 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
8065 hourglass_shown_p declaration/initialization.
8066
80672008-07-14 Jason Rumney <jasonr@gnu.org>
8068
8069 * w32fns.c (w32_get_arg): Remove wrapper function.
8070 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
8071 directly.
8072 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
8073
80742008-07-14 Kenichi Handa <handa@m17n.org>
8075
8076 * xfont.c (xfont_open): Add workaround for X's bug.
8077
80782008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8079
8080 * fontset.c: Include <stdio.h> unconditionally.
8081
80822008-07-13 Michael Albinus <michael.albinus@gmx.de>
8083
8084 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
8085 for filtering.
8086
80872008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
8088
8089 * s/vms.h: Use __GNUC__ instead of _GNUC_.
8090
8091 * m/macppc.h:
8092 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
8093
8094 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
8095 (SPECIAL_EMACS_INT):
8096 * m/ia64.h (SPECIAL_EMACS_INT):
8097 * m/amdx86-64.h (SPECIAL_EMACS_INT):
8098 * s/gnu.h (NLIST_STRUCT):
8099 * s/aix4-2.h (X11R5_INHIBIT_I18N):
8100 * s/gnu-linux.h (LINUX):
8101 * s/msdos.h (HAVE_FACES):
8102 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
8103
8104 * systty.h:
8105 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
8106 anymore.
8107
81082008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
8109
8110 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
8111 always defined as int.
8112
8113 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
8114 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
8115 * s/gnu-linux.h (HAVE_WAIT_HEADER):
8116 * s/freebsd.h (HAVE_WAIT_HEADER):
8117 * s/bsd-common.h (HAVE_UNION_WAIT):
8118 * s/aix4-2.h (HAVE_WAIT_HEADER):
8119 * m/mips.h (HAVE_UNION_WAIT):
8120 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
8121 (COFF, static): Do not define, they are undefined later in the file.
8122
8123 * process.c (update_status): Don't use a union.
8124 (status_convert):
8125 (sigchld_handler): Use int instead of WAITTYPE.
8126
81272008-07-12 Chong Yidong <cyd@stupidchicken.com>
8128
8129 * indent.c (Fvertical_motion): Restore hscroll before moving to
8130 goal column.
8131
81322008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8133
8134 * lisp.h: Remove left over code.
8135
81362008-07-11 Andreas Schwab <schwab@suse.de>
8137
8138 * lisp.h: Fix logic in last change.
8139
8140 * menu.h: New file.
8141 * menu.c: Include it.
8142 * xmenu.c: Likewise.
8143 * Makefile.in: Update dependencies.
8144
81452008-07-11 Kenichi Handa <handa@m17n.org>
8146
8147 * fontset.c (fontset_from_font): Cancel the previous change.
8148
81492008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8150
8151 * lisp.h:
8152 * w32heap.c:
8153 * emacs.c:
8154 * alloc.c: Replace all references of NO_UNION_TYPE with
8155 USE_LISP_UNION_TYPE.
8156
8157 * m/xtensa.h (NO_UNION_TYPE):
8158 * m/vax.h (NO_UNION_TYPE):
8159 * m/template.h (NO_UNION_TYPE):
8160 * m/sparc.h (NO_UNION_TYPE):
8161 * m/mips.h (NO_UNION_TYPE):
8162 * m/macppc.h (NO_UNION_TYPE):
8163 * m/m68k.h (NO_UNION_TYPE):
8164 * m/iris4d.h (NO_UNION_TYPE):
8165 * m/intel386.h (NO_UNION_TYPE):
8166 * m/ibms390x.h (NO_UNION_TYPE):
8167 * m/ibms390.h (NO_UNION_TYPE):
8168 * m/ibmrs6000.h (NO_UNION_TYPE):
8169 * m/ia64.h (NO_UNION_TYPE):
8170 * m/hp800.h (NO_UNION_TYPE):
8171 * m/arm.h (NO_UNION_TYPE):
8172 * m/amdx86-64.h (NO_UNION_TYPE):
8173 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
8174 defining it the same.
8175
81762008-07-10 Chong Yidong <cyd@stupidchicken.com>
8177
8178 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
8179
81802008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8181
8182 * fileio.c:
8183 * sysdep.c
8184 * systty.h:
8185 * m/ibmrs6000.h:
8186 * m/iris4d.h:
8187 * s/aix4-2.h:
8188 * s/freebsd.h:
8189 * s/gnu-linux.h:
8190 * s/hpux10-20.h:
8191 * s/hpux11.h:
8192 * s/netbsd.h:
8193 * s/sol2-3.h:
8194 * s/sol2-4.h:
8195 * s/sol2.h:
8196 * s/usg5-4.h:
8197 * s/vms.h: Remove references to unused variables.
8198
81992008-07-10 Andreas Schwab <schwab@suse.de>
8200
8201 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
8202 pattern before matching the generic family.
8203
82042008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8205
8206 * unexec.c:
8207 * s/vms.h:
8208 * s/usg5-4-2.h:
8209 * s/sol2-5.h:
8210 * s/freebsd.h:
8211 * s/darwin.h: Remove dead code.
8212
8213 * m/template.h:
8214 * m/sparc.h:
8215 * m/mips.h:
8216 * m/m68k.h:
8217 * m/iris4d.h:
8218 * m/intel386.h:
8219 * m/ibms390x.h:
8220 * m/ibms390.h:
8221 * m/ia64.h:
8222 * m/hp800.h:
8223 * m/arm.h:
8224 * m/amdx86-64.h: Remove dead code and references to unused
8225 and compiler defined symbols.
8226
8227 * unexmips.c:
8228 * unexelf.c: Remove references to desupported systems.
8229
8230 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
8231
8232 * m/powermac.h: Remove boilerplate comments.
8233 (NO_REMAP): Remove unused definition.
8234
8235 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
8236 define them.
8237
82382008-07-10 Kenichi Handa <handa@m17n.org>
8239
8240 * xfont.c (xfont_open): Log the reason of failure.
8241
82422008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
8243
8244 * fontset.c (fontset_get_font_group):
8245 * font.c (font_check_otf): Specify argument types.
8246
82472008-07-09 Kenichi Handa <handa@m17n.org>
8248
8249 * coding.c (detect_coding_utf_8): Set detect_info->found only when
8250 non-ASCII char is found.
8251
8252 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
8253 (reorder_font_vector): Change the arg preferred_family to font.
8254 Prefer the spec matching with font.
8255 (fontset_get_font_group): New function.
8256 (fontset_find_font): Change the format of an element of a realized
8257 fontset. Use fontset_get_font_group.
8258 (fontset_font): Try the current fontset, the default fontset, the
8259 fallbacks of the current fontset, and the fallbacks of the default
8260 fontset in this order.
8261 (face_for_char): Delete the shortcut to use the current font.
8262 (fontset_from_font): Don't set fonts for Latin in the fontset.
8263
8264 * font.h (font_make_object, font_match_p): Adjust prototypes.
8265
8266 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
8267
8268 * font.c (font_make_object): New arg entity and pixelsize.
8269 (font_check_otf_features, font_check_otf): New functions.
8270 (font_match_p): Check :lang, :script, and :otf properties.
8271
8272 * xfont.c (xfont_open): Adjust it for the change of
8273 font_make_object.
8274 (xfont_text_extents): Fix initial setting of metrics.
8275
8276 * ftfont.c (struct ftfont_info): New member index, delete member
8277 fc_charset_idx. Make the member order compatible with struct
8278 xftfont_info.
8279 (fc_charset_table): Change charset names to registry names.
8280 (ftfont_pattern_entity): Delete the args registry and
8281 fc_charset_idx. Change the value of :font-entity property
8282 to (FONTNAME . INDEX). Always set :registry property to
8283 `iso10646-1'.
8284 (struct ftfont_cache_data): New struct.
8285 (ftfont_lookup_cache): New arg for_face.
8286 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
8287 (ftfont_driver): Set the member otf_capability.
8288 (ftfont_get_charset): Adjust it for the change of
8289 fc_charset_table.
8290 (OTF_TAG_SYM): New macro.
8291 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
8292 for the change of fc_charset_table.
8293 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
8294 ftfont_pattern_entity. Add FC_INDEX to objset.
8295 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
8296 and ftfont_pattern_entity.
8297 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
8298 font_make_object, struct ftfont_info.
8299 (ftfont_has_char): Use ftfont_get_fc_charset.
8300 (ftfont_otf_features, ftfont_otf_capability): New functions.
8301 (ftfont_shape): Use ftfont_get_otf.
8302 (ftfont_text_extents): Fix initial setting of metrics.
8303
8304 * xftfont.c (struct xftfont_info): New member ft_size. Make the
8305 member order compatible with struct ftfont_info.
8306 (xftfont_open): Add FC_CHARSET to the pattern. Set
8307 xftfont_info->ft_size. Don't unlock the face. Check BDF
8308 properties if appropriate.
8309 (xftfont_close): Unlock the face.
8310 (xftfont_anchor_point, xftfont_shape): Deleted.
8311 (syms_of_xftfont): Don't set members anchor_point and shape of
8312 xftfont_driver.
8313
8314 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
8315 font_make_object.
8316
8317 * w32font.c (w32font_open): Adjust it for the change of
8318 font_make_object.
8319 (w32font_open_internal): Don't set properties of font_object here.
8320
83212008-07-08 Chong Yidong <cyd@stupidchicken.com>
8322
8323 * macfns.c (x_create_tip_frame):
8324 * w32fns.c (x_create_tip_frame):
8325 * xfns.c (x_create_tip_frame): Pass parameter argument to
8326 face-set-after-frame-default.
8327
8328 * xfaces.c (Finternal_merge_in_global_face): Save merged
8329 attributes for the default face back into the face vector.
8330
83312008-07-08 Andreas Schwab <schwab@suse.de>
8332
8333 * fontset.h: Declare fontset_from_font. Don't declare
8334 new_fontset_from_font and fontset_from_font_name.
8335 * xterm.c: Include "fontset.h".
8336 * Makefile.in (xterm.o): Update dependencies.
8337
83382008-07-08 Glenn Morris <rgm@gnu.org>
8339
8340 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
8341 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
8342
83432008-07-07 Chong Yidong <cyd@stupidchicken.com>
8344
8345 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
8346 (x_set_frame_parameters): Don't bind it.
8347
83482008-07-07 Juanma Barranquero <lekktu@gmail.com>
8349
8350 * w32fns.c (map_w32_filename): Declare extern.
8351
83522008-07-07 Jason Rumney <jasonr@gnu.org>
8353
8354 * w32term.c (WS_EX_LAYERED): Define if not already.
8355
83562008-07-06 Chong Yidong <cyd@stupidchicken.com>
8357
8358 * xfaces.c (set_font_frame_param): Don't try to set the font
8359 parameter if it is still unspecified in the lface.
8360
83612008-07-05 Chong Yidong <cyd@stupidchicken.com>
8362
8363 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
8364 face if it didn't already exist.
8365
8366 * xdisp.c (try_window_id): Give up if word-wrapping is on.
8367
83682008-07-05 Andreas Schwab <schwab@suse.de>
8369
8370 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
8371
83722008-07-05 Chong Yidong <cyd@stupidchicken.com>
8373
8374 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
8375 word-wrapping.
8376 (IT_DISPLAYING_WHITESPACE): New macro.
8377 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
8378 when word-wrapping. Simplify word-wrapping logic. Use correct
8379 pixel positions when saving copies of the iterator.
8380 (display_line): Use proper wrap point if the last character on a
8381 line was preceded by whitespace.
8382
83832008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
8384
8385 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
8386
83872008-07-04 Kenichi Handa <handa@m17n.org>
8388
8389 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
8390
8391 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
8392
83932008-07-02 Jason Rumney <jasonr@gnu.org>
8394
8395 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 8396 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
8397
8398 * xdisp.c (next_element_from_display_vector): Move assignment out
8399 of if statement.
8400
84012008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8402
8403 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8404
8405 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8406 (syms_of_fileio): Initialize and export them.
8407 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8408
8409 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8410 (Fsystem_move_file_to_trash): New function.
8411 (syms_of_w32fns): Export it to lisp.
8412
84132008-07-01 Jason Rumney <jasonr@gnu.org>
8414
8415 * w32font.c (w32font_text_extents): Don't count overhang as part
8416 of width.
8417
84182008-06-30 Miles Bader <miles@gnu.org>
8419
8420 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8421 Add `avoid_cursor_p' field.
8422
8423 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8424 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8425 (append_glyph, append_composite_glyph, produce_image_glyph)
8426 (append_stretch_glyph): Initialize avoid_cursor_p.
8427 (get_it_property): Rename from `get_line_height_property'.
8428 (x_produce_glyphs): Use get_it_property.
8429 (handle_line_prefix, push_display_prop): New functions.
8430 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8431 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8432 New variables.
8433 (syms_of_xdisp): Initialize them.
8434
84352008-06-30 Kenichi Handa <handa@m17n.org>
8436
8437 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8438 XftDefaultSubstitute (they are called in XftFontMatch).
8439 (xftfont_open): Fix args to ftfont_font_format.
8440
8441 * ftfont.c (fc_charset_table): New member lang.
8442 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 8443 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
8444 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8445 (ftfont_open): Fix args to ftfont_font_format.
8446 (ftfont_font_format): New arg filename.
8447
84482008-06-30 Chong Yidong <cyd@stupidchicken.com>
8449
8450 * xfaces.c (Finternal_merge_in_global_face): If default face was
8451 modified, realize it again. Update the font face attribute.
8452
84532008-06-29 Jason Rumney <jasonr@gnu.org>
8454
8455 * w32term.c (x_set_frame_alpha): Fix logic.
8456
84572008-06-29 Kenichi Handa <handa@m17n.org>
8458
8459 * fontset.c (Finternal_char_font): Return font-object instead of
8460 font-name.
8461
8462 * composite.c (get_composition_id): Fix the width calculation for TAB.
8463
84642008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8465
8466 * indent.c (Fvertical_motion): Properly handle float column arg.
8467
84682008-06-28 Jason Rumney <jasonr@gnu.org>
8469
8470 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8471 (pfnSetLayeredWindowAttributes): New function pointer.
8472 (w32_initialize): Initialize it when supported.
8473 (x_set_frame_alpha): New function.
8474
8475 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8476 (w32_frame_parm_handlers): Set alpha handler.
8477
8478 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8479
84802008-06-27 Jason Rumney <jasonr@gnu.org>
8481
8482 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8483 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8484 (w32_to_x_charset, x_to_w32_charset)
8485 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8486 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8487 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8488 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8489 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8490 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8491 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8492 (Qw32_charset_unicode): Remove.
8493 (syms_of_w32fns): Update for above changes.
8494
8495 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8496 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8497 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8498 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8499 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8500 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8501 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8502 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8503 (syms_of_w32font): Update for above changes.
8504
85052008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8506
8507 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8508 removed #if.
8509 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8510
85112008-06-26 Juanma Barranquero <lekktu@gmail.com>
8512 Eli Zaretskii <eliz@gnu.org>
8513
8514 * makefile.w32-in (LOCAL_FLAGS):
8515 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8516
8517 * sysdep.c (_spawnlp, _getpid):
8518 Declare with explicit _cdecl instead of _CRTAPI1.
8519
8520 * editfns.c (Fget_internal_run_time):
8521 Check for WINDOWSNT with #ifdef, not #if.
8522
85232008-06-26 Jason Rumney <jasonr@gnu.org>
8524
8525 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8526
8527 * w32term.c (x_draw_glyph_string_foreground)
8528 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8529 Use FONT_HANDLE macro.
8530 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8531
8532 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8533 (uniscribe_encode_char): Use FONT_HANDLE macro.
8534
8535 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8536 (w32font_text_extents): Use precast w32_font.
8537 (w32font_close): Free cached metrics.
8538 (w32font_open_internal): Allocate space for name on stack.
8539
85402008-06-26 Chong Yidong <cyd@stupidchicken.com>
8541
8542 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8543
85442008-06-26 Jason Rumney <jasonr@gnu.org>
8545
8546 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8547 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8548
85492008-06-26 Juanma Barranquero <lekktu@gmail.com>
8550
8551 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8552
85532008-06-26 Jason Rumney <jasonr@gnu.org>
8554
8555 * w32bdf.c, w32bdf.h: Remove obsolete files.
8556
8557 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8558
8559 * w32gui.h: Don't include w32bdf.h.
8560 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8561 Remove obsolete font support.
8562
8563 * w32font.h (struct w32font_info): Remove compat_w32_font.
8564 Add hfont member.
8565 (FONT_COMPAT): Remove obsolete macro.
8566
8567 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8568 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8569 (w32font_open_internal): Remove compat code. Set new hfont member.
8570 (Fx_select_font): Use new hfont member.
8571
8572 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8573 (uniscribe_encode_char): Use new hfont member.
8574
8575 * w32term.c (x_draw_glyph_string_foreground)
8576 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8577 (x_draw_glyph_string): Use metrics in w32font_info.
8578
85792008-06-26 Kenichi Handa <handa@m17n.org>
8580
8581 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8582
85832008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8584
8585 * unexnext.c:
8586 * m/ews4800.h:
8587 * m/hp9000s300.h:
8588 * m/ibm370aix.h:
8589 * m/mips-siemens.h:
8590 * m/ncr386.h:
8591 * m/next.h:
8592 * m/pmax.h:
8593 * m/powerpcle.h:
8594 * m/tandem-s2.h:
8595 * s/386bsd.h:
8596 * s/bsd386.h:
8597 * s/bsd4-1.h:
8598 * s/bsd4-2.h:
8599 * s/bsdos2-1.h:
8600 * s/bsdos2.h:
8601 * s/bsdos3.h:
8602 * s/bsdos4.h:
8603 * s/nextstep.h:
8604 * s/ultrix4-3.h:
8605 * s/usg5-0.h:
8606 * s/usg5-2-2.h:
8607 * s/usg5-2.h:
8608 * s/usg5-4-3.h:
8609 * s/ux4800.h:
8610 * s/uxpds.h:
8611 * s/uxpv.h: Remove support for obsolete systems.
8612 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8613 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8614 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8615 Remove, insert contents in s/aix4-2.h.
8616 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8617 * s/bsd4-3.h: Rename to ...
8618 * s/bsd-common.h: ... this.
8619 * data.c:
8620 * doc.c:
8621 * ecrt0.c:
8622 * emacs.c:
8623 * fileio.c:
8624 * floatfns.c:
8625 * keyboard.c:
8626 * mem-limits.h:
8627 * print.c:
8628 * process.c:
8629 * sysdep.c:
8630 * syssignal.h:
8631 * systty.h:
8632 * syswait.h:
8633 * term.c:
8634 * unexec.c:
8635 * unexelf.c:
8636 * unexhp9k800.c:
8637 * m/hp800.h:
8638 * m/ibmrs6000.h:
8639 * m/mips.h:
8640 * m/vax.h:
8641 * s/darwin.h:
8642 * s/freebsd.h:
8643 * s/gnu.h:
8644 * s/ms-w32.h:
8645 * s/msdos.h:
8646 * s/netbsd.h:
8647 * s/template.h: Remove references to obsolete variables.
8648
8649 * Makefile.in: Add dependencies for all unexec files.
8650 (admindir): Remove unused variable.
8651 (UNEXEC_SRC): Remove references.
8652
86532008-06-25 Chong Yidong <cyd@stupidchicken.com>
8654
8655 * xfns.c (x_default_font_parameter): If Xft is available, first
8656 try Monospace-12 for the default font.
8657
86582008-06-25 Jason Rumney <jasonr@gnu.org>
8659
8660 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8661
86622008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8663
8664 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8665
8666 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8667
86682008-06-25 Juanma Barranquero <lekktu@gmail.com>
8669
8670 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8671 <scroll-conservatively>: Fix typo in docstring.
8672
8673 * xselect.c (Fx_send_client_event): Doc fix.
8674
86752008-06-25 Kenichi Handa <handa@m17n.org>
8676
8677 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8678
8679 * font.c (font_parse_fcname): Remove unused variables.
8680 (font_sort_entites): Delete the arg SPEC. Caller changed.
8681 Fix for the case of ! best_only.
8682 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8683
8684 * lisp.h (Fstring_to_unibyte): EXFUN it.
8685
8686 * character.h (str_to_unibyte): Extern it.
8687
8688 * character.c (str_to_unibyte): New function.
8689
8690 * fns.c (Fstring_to_unibyte): New function.
8691 (syms_of_fns): Defsubr it.
8692
86932008-06-24 Kenichi Handa <handa@m17n.org>
8694
8695 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8696 DPI too.
8697 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8698
86992008-06-24 Andreas Schwab <schwab@suse.de>
8700
8701 * Makefile.in (${lispsource}loaddefs.el): Rename from
8702 ../lisp/loaddefs.el.
8703 (bootstrap-clean): Do what distclean does but don't remove
8704 Makefile.
8705 (distclean): Depend on bootstrap-clean and remove Makefile.
8706
87072008-06-24 Chong Yidong <cyd@stupidchicken.com>
8708
8709 * buffer.h (struct buffer): New member word_wrap.
8710
8711 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8712 word-wrap.
8713 (init_buffer_once): Initialize them.
8714
8715 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8716 line_wrap enum possessing three possible values.
8717
8718 * termopts.h: Replace truncate_partial_width_windows with
8719 Vtruncate_partial_width_windows.
8720
8721 * dispnew.c (direct_output_for_insert): Avoid direct output when
8722 inserting a space with word wrap on.
8723
8724 * indent.c (compute_motion): Obey integer values of
8725 truncate-partial-width-windows.
8726
8727 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8728 replacing truncate_partial_width_windows.
8729 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8730 truncate only if the window width is below that integer.
8731 (start_display, resize_mini_window, produce_stretch_glyph)
8732 (display_string, move_it_in_display_line_to): Use line_wrap.
8733 (back_to_previous_visible_line_start, reseat_1): Reset
8734 string_from_display_prop_p.
8735 (display_line): Extend default face to end of line when wrapping.
8736
87372008-06-24 Kim F. Storm <storm@cua.dk>
8738
8739 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8740 to wrap continued lines at word boundaries.
8741
87422008-06-24 Jason Rumney <jasonr@gnu.org>
8743
8744 * font.c (Ffont_face_attributes): Multiply pixel size before point
8745 conversion to avoid multiplying rounding error.
8746
87472008-06-23 Jason Rumney <jasonr@gnu.org>
8748
8749 * w32term.c (x_draw_glyph_string_background)
8750 (x_draw_glyph_string): Remove old bdf font code.
8751
8752 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8753
87542008-06-22 Kenichi Handa <handa@m17n.org>
8755
8756 * font.c (font_find_for_lface): Try the adstyle specified in
8757 the property of LFACE_FONT of LFACE (if any).
8758
87592008-06-21 Seiji Zenitani <zenitani@mac.com>
8760 Ryo Yoshitake <ryo@shiftmode.net>
8761
8762 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8763
87642008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8765
8766 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8767 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8768 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8769 (witness-emacs): Remove.
8770 (lisp, shortlisp): Move loaddefs.el earlier.
8771 (mostlyclean): Forget about witness-emacs.
8772
87732008-06-22 Glenn Morris <rgm@gnu.org>
8774
8775 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8776 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8777
87782008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8779
8780 * Makefile.in (PRECOMP): Remove.
8781 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8782 (witness-emacs): Run `compile-first'.
8783 (.el.elc): Use the new compile-onefile target.
8784
87852008-06-21 Kenichi Handa <handa@m17n.org>
8786
8787 * xftfont.c (xftfont_open): Handle QCembolden only when
8788 FC_EMBOLDEN is defined.
8789
87902008-06-21 Andreas Schwab <schwab@suse.de>
8791
8792 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8793 (.el.elc): Likewise.
8794
87952008-06-21 Miles Bader <miles@gnu.org>
8796
8797 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8798 build dir, not the lisp source dir.
8799
88002008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8801
8802 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8803 (bootstrapclean): Remove.
8804 (.el.elc): New rule.
8805 (PRECOMP): New var.
8806 (../lisp/subdirs.el): Remove.
8807 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8808 (witness-emacs): New target.
8809 (mostlyclean): Remove witness-emacs as well.
8810 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8811 Add witness-emacs dependency.
8812
88132008-06-20 Chong Yidong <cyd@stupidchicken.com>
8814
8815 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8816 defined by the font.
8817
88182008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8819
8820 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8821 (bootstrap-clean): New target that keeps TAGS around.
8822 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8823 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8824
88252008-06-20 Jason Rumney <jasonr@gnu.org>
8826
8827 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8828 Remove obsolete font code.
8829
8830 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8831 to determine language support.
8832
88332008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8834
8835 * sysdep.c (cfsetspeed): New fun extracted from the code.
8836 (cfmakeraw): Move before first use.
8837
88382008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8839
8840 * sysdep.c (cfmakeraw): Provide fallback implementation.
8841 (serial_configure): Provide fallback implementation of cfsetspeed.
8842
88432008-06-20 Kenichi Handa <handa@m17n.org>
8844
8845 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8846 the pattern.
8847
8848 * fontset.c (fontset_from_font): Copy font_spec before changing
8849 the elements.
8850
8851 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8852
88532008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8854
8855 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8856 for explicit `font' parameters.
8857
8858 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8859
88602008-06-19 Kenichi Handa <handa@m17n.org>
8861
8862 * frame.c: Include <ctype.h>.
8863 (x_set_font_backend): Allow spacing characters in the X resource
8864 for FontBackend.
8865
88662008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8867
8868 * w32fns.c, xfns.c (Qfont_param): New var.
8869 (syms_of_w32fns): Initialize it.
8870 (x_default_font_parameter): Record explicit `font' into
8871 `font-parameter'.
8872
88732008-06-18 Kenichi Handa <handa@m17n.org>
8874
8875 * font.c (font_parse_xlfd): Fix previous change.
8876 (font_parse_fcname): Don't use :fc-unknown-spec.
8877 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8878 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8879 (font_add_log): Prepend the driver name to the resulting fonts.
8880
8881 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8882 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8883 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8884
8885 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8886 (QCembolden): New variables.
8887 (syms_of_xftfont): DEFSYM them.
8888 (xftfont_open): Call XftFontMatch. Don't trust the result of
8889 XftTextExtents8 if the pixel_size is less than 5.
8890
88912008-06-18 Andreas Schwab <schwab@suse.de>
8892
8893 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8894 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8895
88962008-06-18 Jason Rumney <jasonr@gnu.org>
8897
8898 * w32font.c (w32font_list, w32font_match): Add logging.
8899
8900 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8901
89022008-06-17 Chong Yidong <cyd@stupidchicken.com>
8903
8904 * font.c (font_parse_fcname): Store divider characters for
8905 unknown-spec list. For known key symbols, intern using correct
8906 symbol name.
8907
89082008-06-17 Kenichi Handa <handa@m17n.org>
8909
8910 * xfaces.c (realize_default_face): If the frame is not on window
8911 system, set the fontset of face to nil.
8912
89132008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8914
8915 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8916
89172008-06-16 Juanma Barranquero <lekktu@gmail.com>
8918
8919 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8920 (build_font_name_from_vector): Delete externs.
8921
8922 * xfaces.c (struct font_name): Don't declare.
8923
89242008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8925
8926 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8927
89282008-06-16 Chong Yidong <cyd@stupidchicken.com>
8929
8930 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8931
89322008-06-16 Juanma Barranquero <lekktu@gmail.com>
8933
8934 * font.c (Ffont_spec): Fix usage in docstring.
8935 (Ffont_face_attributes): Doc fix.
8936
89372008-06-16 Andreas Schwab <schwab@suse.de>
8938
8939 * font.c (Ffont_face_attributes): Fix definition.
8940
89412008-06-16 Jason Rumney <jasonr@gnu.org>
8942
8943 * font.h (font_style_symbolic_from_value): Remove.
8944
8945 * font.c (font_style_symbolic_from_value): Remove.
8946 (font_style_symbolic): Revert to pre 2008-06-13 version.
8947
8948 * w32font.c (w32_to_fc_weight): New function.
8949 (w32font_full_name, logfont_to_fcname): Use it.
8950
89512008-06-16 Kenichi Handa <handa@m17n.org>
8952
8953 * font.c (font_check_object): Delete it.
8954 (font_clear_cache): Check if a font-object is alive.
8955 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8956 font-object to nil.
8957 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8958 (font_at): Don't call font_check_object.
8959 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8960
89612008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8962
8963 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8964
89652008-06-16 Chong Yidong <cyd@stupidchicken.com>
8966
8967 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8968
89692008-06-15 Chong Yidong <cyd@stupidchicken.com>
8970
8971 * font.c (font_parse_fcname): Only one decimal point.
8972 (font_unparse_fcname): Handle data in family and foundry indices
8973 as symbols, not strings.
8974 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8975
8976 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8977
8978 * font.h (font_unparse_gtkname): Add prototype.
8979
89802008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8981
8982 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8983
89842008-06-15 Andreas Schwab <schwab@suse.de>
8985
8986 * font.c (font_update_drivers): Fix crash when no drivers match.
8987
89882008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8989
8990 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8991 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8992
89932008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8994
8995 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8996
89972008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8998
8999 * process.c (Fserial_process_configure, Fprocess_send_eof):
9000 Use EQ to compare Lisp_Objects.
9001
90022008-06-13 Jason Rumney <jasonr@gnu.org>
9003
9004 * w32fns.c (Fw32_select_font): Remove old font API function.
9005
9006 * w32font.c (logfont_to_fcname): New function.
9007 (Fx_select_font): New font dialog function compatible with
9008 GTK/fontconfig version.
9009
9010 * font.c (font_style_symbolic_from_value): New function.
9011 (font_style_symbolic): Use it.
9012
9013 * font.h (font_style_symbolic_from_value): Declare new function.
9014
90152008-06-13 Juanma Barranquero <lekktu@gmail.com>
9016
9017 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
9018 <font-width-table>: Fix typos in docstrings.
9019
90202008-06-13 Daniel Engeler <engeler@gmail.com>
9021
9022 These changes add serial port access.
9023 * process.c: Add HAVE_SERIAL.
9024 (Fdelete_process, Fprocess_status, Fset_process_buffer)
9025 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
9026 (list_processes_1, select_wrapper, Fstop_process)
9027 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
9028 (status_notify): Modify to handle serial processes.
9029 [HAVE_SERIAL] (Fserial_process_configure)
9030 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
9031 New functions.
9032 * process.h (struct Lisp_Process): Add `type'.
9033 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
9034 New functions.
9035 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
9036 serial ports.
b71ac3dd 9037 (serial_open, serial_configure): New functions.
aac0c6e3
MR
9038 * w32.h: Add FILE_SERIAL.
9039 (struct _child_process): Add ovl_read, ovl_write.
9040
90412008-06-13 Kenichi Handa <handa@m17n.org>
9042
9043 * dispextern.h (enum lface_attribute_index): New member
9044 LFACE_FOUNDRY_INDEX.
9045
9046 * font.c (font_score): Delete arg alternate_families. Check only
9047 weight, slant, width, and size. Ignore the difference of alias
9048 style symbols.
9049 (font_sort_entites): Adjust for the above change. Reflect the
9050 order of font-driver to scores.
9051 (font_list_entities): Don't check alternate_familes here.
9052 (font_clear_prop): Handle foundry.
9053 (font_update_lface): Don't parse "foundry-family" form here.
9054 Handle FONT_FOUNDRY_INDEX.
9055 (font_find_for_lface): Likewise. Handle alternate families here.
9056 If registry is nil, try iso8859-1 and ascii-0.
9057 (font_open_for_lface): Pay attention to size in ENTITY.
9058 (font_open_by_name): Simplify by calling font_load_for_lface.
9059 (free_font_driver_list): Delete it.
9060 (font_update_drivers): Preserve the order of backends.
9061 (syms_of_font): Setting of sort_shift_bits adjusted for the change
9062 of font_score and font_sort_entites.
9063 (font_update_sort_order): Likewise.
9064
9065 * xfaces.c (LFACE_FOUNDRY): New macro.
9066 (check_lface_attrs): Check foundry.
9067 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
9068 (merge_face_vectors): Check foundry.
9069 (merge_face_ref): Likewise.
9070 (Finternal_set_lisp_face_attribute): Likewise.
9071 (x_update_menu_appearance): Likewise.
9072 (Finternal_get_lisp_face_attribute): Likewise.
9073 (lface_hash): Likewise.
9074 (lface_same_font_attributes_p): Likewise.
9075 (x_supports_face_attributes_p): Likewise.
9076 (tty_supports_face_attributes_p): Likewise.
9077 (Finternal_set_alternative_font_family_alist): Intern strings.
9078 (Finternal_set_alternative_font_registry_alist): Downcase strings.
9079 (realize_default_face): Set LFACE_FOUNDRY (lface).
9080
9081 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
9082 font-driver at first.
9083
9084 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
9085
90862008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9087
9088 * lread.c (Fload): Use xfree, not free on saved_doc_string.
9089
90902008-06-12 Jim Meyering <meyering@redhat.com>
9091
9092 Make unexec_free handle NULL the same way free does.
9093 * unexmacosx.c (unexec_free): Ignore a NULL argument.
9094
90952008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
9096
9097 * character.h (CHAR_TO_BYTE_SAFE): New macro.
9098 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
9099 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
9100 (WEAK_ALIAS): Simplify.
9101 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
9102 when searching a unibyte buffer.
9103
91042008-06-12 Chong Yidong <cyd@stupidchicken.com>
9105
9106 * xfns.c (Fx_select_font): Rename from x-font-dialog.
9107
91082008-06-12 Juanma Barranquero <lekktu@gmail.com>
9109
9110 * w32font.c: Include ctype.h.
9111
91122008-06-11 Jason Rumney <jasonr@gnu.org>
9113
9114 * w32font.c (w32font_encode_char): Detect missing glyphs that are
9115 misreported as space.
9116 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
9117 as aliases for registry iso10646-1.
9118
91192008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
9120
9121 * buffer.c (clone_per_buffer_values): Skip `name'.
9122
91232008-06-11 Chong Yidong <cyd@stupidchicken.com>
9124
9125 * font.c (font_parse_fcname): Fix last change; accept decimal
9126 points in font size.
9127
91282008-06-10 Jason Rumney <jasonr@gnu.org>
9129
9130 * w32uniscribe.c (add_opentype_font_name_to_list):
9131 Skip non unicode fonts.
9132
91332008-06-10 Chong Yidong <cyd@stupidchicken.com>
9134
9135 * xfns.c (Fx_font_dialog): New function.
9136
9137 * gtkutil.c (xg_dialog_response_cb): Rename from
9138 xg_file_response_callback.
9139 (pop_down_dialog): Rename from pop_down_file_dialog.
9140 (xg_get_file_name): Callers changed.
9141 (xg_get_font_name): New function.
9142
9143 * gtkutil.h (xg_get_font_name): Insert prototype.
9144
91452008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9146
9147 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
9148 x_underline_minimum_display_offset.
9149 (syms_of_xdisp): Declare it here rather than in xterm.c.
9150 * dispextern.h (underline_minimum_offset): Declare it.
9151 * w32term.c (x_draw_glyph_string): Use it.
9152 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
9153 (syms_of_xterm): Don't declare it any more.
9154 (x_draw_glyph_string): Adjust to the new name.
9155
91562008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
9157
9158 * xterm.c (x_underline_minimum_display_offset): New var.
9159 (x_draw_glyph_string): Use it.
9160 (syms_of_xterm): Declare it.
9161
91622008-06-10 Chong Yidong <cyd@stupidchicken.com>
9163
9164 * font.c (font_parse_fcname): Accept GTK-style font names too.
9165
91662008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9167
9168 * dired.c (file_name_completion): Don't return t if the match is exact
9169 but with different capitalization.
9170 * minibuf.c (Ftry_completion): Simplify.
9171
9172 * window.c (Vwindow_point_insertion_type): New var.
9173 (set_window_buffer): Use it.
9174 (syms_of_window): Init and export it to Lisp.
9175
91762008-06-10 Kenichi Handa <handa@m17n.org>
9177
9178 * font.h (font_intern_prop): Prototype adjusted.
9179
9180 * font.c (font_intern_prop): New arg force_symbol.
9181 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
9182 Adjust for the change of font_intern_prop.
9183
9184 * ftfont.c (ftfont_pattern_entity):
9185 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
9186 (w32_registry):
9187 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
9188 the change of font_intern_prop.
9189
91902008-06-09 Juanma Barranquero <lekktu@gmail.com>
9191
9192 * w32menu.c (digest_single_submenu): Declare extern.
9193
91942008-06-09 Jason Rumney <jasonr@gnu.org>
9195
9196 * w32term.c (x_make_frame_visible): Use alternate restore flags.
9197
9198 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
9199 (parse_single_submenu): Remove.
9200 (digest_single_submenu): Remove.
9201 (syms_of_w32menu): Don't initialise variables that have moved
9202 to menu.c.
9203 (set_frame_menubar): Sync with version in xmenu.c.
9204 (w32_menu_show): Sync with xmenu_show in xmenu.c.
9205
9206 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
9207 Make static again.
9208
92092008-06-09 Jason Rumney <jasonr@gnu.org>
9210
9211 Changes to w32 files related to the move of common menu code
9212 to menu.c on 2008-06-08 by Chong Yidong.
9213
9214 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
9215 defs to w32gui.h.
9216 (single_keymap_panes, push_menu_item, push_menu_pane):
9217 Make globally visible.
9218
9219 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
9220 (local_free, malloc_widget_value, free_widget_value)
9221 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
9222 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
9223 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
9224 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
9225 (menu_items, menu_items_allocated, menu_items_used)
9226 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
9227 (init_menu_items, finish_menu_items, discard_menu_items)
9228 (grow_menu_items, push_submenu_start, push_submenu_end)
9229 (push_left_right_boundary, push_menu_pane, push_menu_item)
9230 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
9231 (free_menubar_widget_tree_value, parse_single_submenu)
9232 (update_submenu_strings): Remove functions.
9233 (xmalloc_widget_value): Remove and declare extern.
9234
9235 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
9236 (OBJ1): Build it.
9237
9238 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
9239 (local_heap, local_alloc, local_free, malloc_widget_value)
9240 (free_widget_value): Define here.
9241
92422008-06-09 Kenichi Handa <handa@m17n.org>
9243
9244 * font.h (Qascii_0): Extern it.
9245
9246 * font.c (Qascii_0): New variable.
9247 (syms_of_font): DEFSYM it.
9248 (font_open_by_name): If the registry "iso8859-1" fails, try also
9249 "ascii-0".
9250
9251 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
9252
92532008-06-08 Kenichi Handa <handa@m17n.org>
9254
9255 * .gdbinit (xfont): New command.
9256
92572008-06-08 Andreas Schwab <schwab@suse.de>
9258
9259 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
9260 * Makefile.in (menu.o): Update dependencies.
9261
9262 * Makefile.in (obj): Always add menu.o.
9263 * emacs.c (main): Always call syms_of_menu.
9264 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
9265
92662008-06-08 Chong Yidong <cyd@stupidchicken.com>
9267
9268 * Makefile.in: Compile menu.c.
9269
9270 * lisp.h: Declare syms_of_menu.
9271
9272 * emacs.c (main): Call syms_of_menu.
9273
9274 * keyboard.h: Relocate platform-independent menu definitions from
9275 xmenu.c.
9276
9277 * menu.c: New file. Relocate platform-independent menu
9278 definitions from xmenu.c. Suggested by Adrian Robert.
9279
9280 * xmenu.c: Remove platform-independent menu definitions.
9281 (menu_items menu_items_inuse, menu_items_allocated)
9282 (menu_items_used, menu_items_n_panes)
9283 (menu_items_submenu_depth): Move to keyboard.h.
9284 (init_menu_items, finish_menu_items, unuse_menu_items)
9285 (discard_menu_items, restore_menu_items, save_menu_items)
9286 (grow_menu_items, push_submenu_start, push_submenu_end)
9287 (push_left_right_boundary, push_menu_pane, push_menu_item)
9288 (keymap_panes, single_keymap_panes, single_menu_item)
9289 (list_of_panes, list_of_items, find_and_call_menu_selection)
9290 (xmalloc_widget_value, free_menubar_widget_value_tree)
9291 (parse_single_submenu, digest_single_submenu)
9292 (update_submenu_strings): Move to menu.c.
9293
92942008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
9295
9296 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
9297
92982008-06-06 Miles Bader <miles@gnu.org>
9299
9300 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
9301 face, not frame default.
9302
93032008-06-05 Martin Rudalics <rudalics@gmx.at>
9304
9305 * window.c (pop_up_windows, pop_up_frames)
9306 (display_buffer_reuse_frames, Vpop_up_frame_function)
9307 (Vdisplay_buffer_function, Veven_window_heights)
9308 (Vspecial_display_buffer_names, Vspecial_display_regexps)
9309 (Vspecial_display_function, Vsame_window_buffer_names)
9310 (Vsame_window_regexps, split_height_threshold)
9311 (Vsplit_window_preferred_function): Move those vars to window.el.
9312 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
9313 (Fdisplay_buffer): Move those functions to window.el.
9314 (syms_of_window): Remove corresponding declarations.
9315 (display_buffer): New function.
9316 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
9317 * dispnew.c (Flast_nonminibuf_frame): New function.
9318 * buffer.c (Fpop_to_buffer): Move to window.el.
9319
93202008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9321
9322 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
9323
93242008-06-05 Kenichi Handa <handa@m17n.org>
9325
9326 * coding.c (detect_coding): Fix previous change.
9327 (detect_coding_system): Likewise.
9328
93292008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9330
9331 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
9332
9333 * keymap.c (Vminibuffer_local_filename_must_match_map):
9334 Rename from Vminibuffer_local_must_match_filename_map.
9335 (syms_of_keymap):
9336 * minibuf.c (Fcompleting_read): Adjust accordingly.
9337 * commands.h: Rename declaration as well.
9338
93392008-06-05 Kenichi Handa <handa@m17n.org>
9340
9341 * font.c (Ffont_spec): Don't use font_parse_family_registry for
9342 family name.
9343 (Ffont_put): Likewise.
9344
9345 * fontset.c (fontset_find_font): Call font_open_for_lface with the
9346 current font-spec.
9347
9348 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
9349 is unspecified.
9350
9351 * xfaces.c (realize_x_face): If the font-related face attributes
9352 are the same as those of default face, realize a new fontset from
9353 default->fontset.
9354 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
9355
93562008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9357
9358 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
9359 (move_it_in_display_line): New wrapper.
9360
9361 * window.c (window_scroll_pixel_based_preserve_x)
9362 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
9363 (window_scroll_pixel_based, window_scroll_line_based):
9364 Use them to preserve column positions.
9365 (syms_of_window): Initialize them.
9366
9367 * indent.c (Fvertical_motion): Extend first arg to allow passing an
9368 (HPOS . VPOS) pair.
9369
9370 * dispextern.h (move_it_in_display_line): Declare.
9371
93722008-06-05 Juanma Barranquero <lekktu@gmail.com>
9373
9374 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
9375 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
9376 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
9377
93782008-06-04 Juanma Barranquero <lekktu@gmail.com>
9379
9380 * window.c (Fset_window_parameter): Doc fix.
9381 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
9382
93832008-06-04 Joakim Verona <joakim@verona.se>
9384
9385 * window.h (struct window): Add new member window_parameters.
9386
9387 * window.c (Fwindow_parameters, Fwindow_parameter)
9388 (Fset_window_parameter): New defuns.
9389 (syms_of_window): Defsubr the new defuns.
9390 (make_window): Initialize window_parameters to nil.
9391
93922008-06-04 John Paul Wallington <jpw@pobox.com>
9393
9394 * eval.c (Fdefmacro): Doc fix.
9395
93962008-06-04 Kenichi Handa <handa@m17n.org>
9397
9398 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9399 Be sure to call setup_coding_system when we find a proper coding system.
9400 (detect_coding_system): Fix handling of coding->head_ascii.
9401
94022008-06-03 Andreas Schwab <schwab@suse.de>
9403
9404 * font.c (font_prop_validate_spacing): Fix last change.
9405
94062008-06-03 Kenichi Handa <handa@m17n.org>
9407
9408 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9409 (font_parse_fcname): Fix handling of unknown key.
9410
9411 * xfont.c (xfont_list): Try an alias.
9412
9413 * charset.c (char_charset): Return NULL if the arg charset_list is
9414 specified and C doesn't belong to any of them.
9415
94162008-06-02 Chip Coldwell <coldwell@redhat.com>
9417
9418 * font.c (font_pixel_size): Don't take cdr of an integer.
9419
94202008-06-02 Jim Meyering <meyering@redhat.com>
9421
9422 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9423 * alloc.c (xfree): Return right away for a NULL arg.
9424 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9425 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9426 * mac.c (create_apple_event_from_event_ref): Likewise.
9427 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9428 Likewise.
9429 * doprnt.c (doprnt1): Likewise.
9430 * frame.c (frame): Likewise.
9431 * keyboard.c (wipe_kboard): Likewise.
9432 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9433 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9434 * term.c (tty_default_color_capabilities, maybe_fatal)
9435 (delete_tty): Likewise.
9436 * w16select.c (string): Likewise.
9437 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9438 * w32bdf.c (w32_free_bdf_font): Likewise.
9439 * w32fns.c (w32_unload_font): Likewise.
9440 * w32font.c (w32font_close): Likewise.
9441 * window.c (size_window): Likewise.
9442 * xselect.c (receive_incremental_selection): Likewise.
9443 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9444 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9445 * w32.c (stat): Likewise.
9446
9447 Remove useless if-before-free tests.
9448 * editfns.c (Fset_time_zone_rule): Likewise.
9449 * lread.c (nosuffix): Likewise.
9450 * ralloc.c (get_bloc): Likewise.
9451 * regex.c (reg_free): Likewise.
9452 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9453 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9454 * xsmfns.c (smc_save_yourself_CB): Likewise.
9455
94562008-06-02 Kenichi Handa <handa@m17n.org>
9457
9458 * font.c (font_find_for_lface): Handle float font size.
9459 (font_open_for_lface): Likewise.
9460
9461 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9462 comparing the properties.
9463
94642008-06-01 Jason Rumney <jasonr@gnu.org>
9465
9466 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9467 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9468 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9469 Don't add empty script list.
9470 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9471
94722008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9473
9474 * Makefile.in (dot, dotdot): Remove, update users.
9475 ".." has been used elsewhere in the file for a long time.
9476 (LIBXT_STATIC): Remove conditional based on unused variable.
9477
94782008-06-01 Miles Bader <miles@gnu.org>
9479
9480 * xfaces.c (Vface_remapping_alist): New variable.
9481 (syms_of_xfaces): Initialize it.
9482 (enum named_merge_point_kind): New type.
9483 (struct named_merge_point): Add `named_merge_point_kind' field.
9484 (push_named_merge_point): Make cycle detection respect different
9485 named-merge-point kinds.
9486 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9487 Remove face-name alias resolution.
9488 (lface_from_face_name): New definition using
9489 `lface_from_face_name_no_resolve'.
9490 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9491 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9492 (get_lface_attributes): New definition that layers face-remapping on
9493 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9494 (lookup_basic_face): New function.
9495 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9496 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9497 `get_lface_attributes'.
9498 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9499 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9500 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9501
9502 * xdisp.c (init_iterator): Pass base_face_id through
9503 `lookup_basic_face' when we actually use it as a face-id.
9504 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9505 DEFAULT_FACE_ID.
9506
9507 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9508 lookup the initial face-id.
9509
9510 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9511
95122008-06-01 Juanma Barranquero <lekktu@gmail.com>
9513
9514 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9515 (Fremove_text_properties): Fix typos in docstrings.
9516
95172008-05-31 Kenichi Handa <handa@m17n.org>
9518
9519 * font.c (font_list_entities): Fix the car part of data to be
9520 stored in the cache.
9521
9522 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9523
95242008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9525
9526 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9527 Add a `test' argument so another predicate than `equal' can be used.
9528 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9529 (map_char_table): Remove unused vars `c' and `i'.
9530 * lisp.h (Foptimize_char_table): Adjust declaration.
9531 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9532
95332008-05-30 Kenichi Handa <handa@m17n.org>
9534
9535 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9536 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9537 defined.
9538
95392008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9540
9541 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9542 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9543 frame-local settings for the same variable.
9544
95452008-05-30 Kenichi Handa <handa@m17n.org>
9546
9547 * fontset.c (Ffont_info): Move to font.c.
9548 (syms_of_fontset): Delete defsubr of Sfont_info.
9549
9550 * font.c (font_style_to_value, font_score): Delete casting of the
9551 args to xstcasecmp.
9552 (register_font_driver): Increment num_font_drivers only when
9553 registering the driver globally.
9554 (Ffont_info): Move from fontset.c. Handle a font object too.
9555 (syms_of_font): Defsubr Sfont_info.
9556
95572008-05-29 Kenichi Handa <handa@m17n.org>
9558
9559 * coding.h (enum define_coding_utf8_arg_index): New enum.
9560 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9561 coding_attr_utf_bom.
9562 (enum utf_bom_type): Rename from utf_16_bom_type.
9563 (struct utf_16_spec): Adjust for the above change.
9564 (struct coding_system): Add utf_8_bom in `spec' union.
9565
9566 * coding.c (CODING_UTF_8_BOM): New macro.
9567 (enum coding_category): Delete coding_category_utf_8, add
9568 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9569 coding_category_utf_8_sig.
9570 (CATEGORY_MASK_UTF_8): Delete it.
9571 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9572 (CATEGORY_MASK_UTF_8_SIG): New macros.
9573 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9574 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9575 CATEGORY_MASK_UTF_8_SIG.
9576 (CATEGORY_MASK_UTF_8): New macro.
9577 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9578 (detect_coding_utf_8): Check BOM.
9579 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9580 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9581 (encode_coding_utf_16): Likewise.
9582 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9583 (detect_coding, detect_coding_system): Handle utf-8-auto.
9584 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9585 (syms_of_coding): Fix setting up of Vcoding_category_table.
9586
95872008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9588
9589 * process.c (Faccept_process_output): If `millisec' is non-nil,
9590 `seconds' default to 0.
9591 (wait_reading_process_output): Also return non-nil if we read output
9592 from a non-running process.
9593
95942008-05-29 Jason Rumney <jasonr@gnu.org>
9595
9596 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9597 `raster' specified.
9598 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9599 in the uniscribe backend, but disallow any font that has no
9600 unicode subrange support.
9601
96022008-05-29 Juanma Barranquero <lekktu@gmail.com>
9603
9604 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9605 Fix typos in docstrings.
9606
96072008-05-29 Kenichi Handa <handa@m17n.org>
9608
9609 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9610 (Fx_family_fonts): Set frame correctly.
9611
96122008-05-28 Jason Rumney <jasonr@gnu.org>
9613
9614 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9615
96162008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9617
9618 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9619 calling build_annotations.
9620
96212008-05-28 Juanma Barranquero <lekktu@gmail.com>
9622
9623 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9624 (Fencode_coding_string):
9625 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9626 <latin-extra-code-table>: Fix typos in docstrings.
9627 (syms_of_coding) <coding-system-alist>: Doc fix.
9628 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9629
96302008-05-28 Kenichi Handa <handa@m17n.org>
9631
9632 * fontset.c (Ffont_info): Don't call font_close_object.
9633
9634 * font.c (font_parse_family_registry): Use Ffont_put to validate
9635 foundry and family.
9636 (font_delete_unmatched): Don't check spacing.
9637 (font_list_entities): Add spacing to the spec to list fonts.
9638
9639 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9640 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9641
9642 * coding.c (encode_coding_raw_text): Fix previous change.
9643 (encode_coding_object): When the dst_object is a buffer and is
9644 different from src_object, move gap to PT.
9645
96462008-05-27 Chong Yidong <cyd@stupidchicken.com>
9647
9648 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9649
96502008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9651
9652 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9653 all branches. Compute it differently.
9654
9655 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9656
96572008-05-27 Juanma Barranquero <lekktu@gmail.com>
9658
9659 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9660 into "else if () ... else ...".
9661
96622008-05-27 Jason Rumney <jasonr@gnu.org>
9663
9664 * w32font.c (w32font_open_internal): Determine if glyph indices
9665 are likely to work here.
9666
96672008-05-27 Chong Yidong <cyd@stupidchicken.com>
9668
9669 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9670 draw overlap glyphs with appropriate highlighting.
9671
96722008-05-27 Kenichi Handa <handa@m17n.org>
9673
9674 * xfont.c (xfont_open): Fix calculation of font->average_width.
9675
96762008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9677
9678 * casefiddle.c (casify_object): Try to guess better whether the
9679 argument is a byte or a char.
9680
96812008-05-26 Andreas Schwab <schwab@suse.de>
9682
9683 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9684 Always send multiples of format size.
9685
9686 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9687
96882008-05-26 Jason Rumney <jasonr@gnu.org>
9689
9690 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9691 (compute_metrics): Don't set failure if we just cleared the cache.
9692 (w32_weight_table): Remove unused variable.
9693 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9694 backwards compatibility.
9695
96962008-05-25 Kenichi Handa <handa@m17n.org>
9697
9698 * w32term.c (x_draw_glyph_string):
9699 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9700
9701 * xfaces.c: Delete unused function prototypes.
9702 (xstrlwr, font_frame): Delete them.
9703 (clear_face_cache): Delete unused variable.
9704
9705 * xftfont.c (xftfont_open): Delete unused variable.
9706 If underline_thickness is not 1, adjust underline_position.
9707
9708 * ftxfont.c (ftxfont_open): Delete unused variable.
9709
9710 * fontset.c (face_for_char): Optimize for the case of no charset
9711 property.
9712
9713 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9714 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9715 (otf_open, font_otf_capability, generate_otf_features)
9716 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9717 Comment out by surrounding "#if 0" and "#endif" for the moment.
9718 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9719 (syms_of_font): Codes for accessing above commented out.
9720
97212008-05-24 Eli Zaretskii <eliz@gnu.org>
9722
9723 * w32proc.c: Include dispextern.h.
9724
9725 * w32.c: Include dispextern.h.
9726
97272008-05-23 Juanma Barranquero <lekktu@gmail.com>
9728
9729 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9730 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9731 Fix typos in docstrings.
9732
97332008-05-23 Jason Rumney <jasonr@gnu.org>
9734
9735 * xsmfns.c: Remove includes that are already included by config.h.
9736
97372008-05-23 Kenichi Handa <handa@m17n.org>
9738
9739 * charset.c (Qemacs, charset_emacs): New variables.
9740 (char_charset): Fix for non-Unicode characters.
9741 (syms_of_charset): Define charset_emacs.
9742
9743 * w32term.c (x_draw_glyph_string): Be sure to update
9744 s->underline_thickness and s->underline_position. Be sure to draw
9745 underline within the current line area.
9746
9747 * xterm.c (x_draw_glyph_string): Be sure to update
9748 s->underline_thickness and s->underline_position. Be sure to draw
9749 underline within the current line area.
9750
9751 * fontset.c: Delete unused variables and add casting for char *
9752 throughout the file.
9753 (fontset_font): Try the fallback fonts of the current fontset
9754 before consulting the default fontset.
9755
9756 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9757
9758 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9759
97602008-05-22 Jason Rumney <jasonr@gnu.org>
9761
9762 * font.c: Don't include strings.h.
9763
9764 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9765
9766 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9767 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9768 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9769 to call xstrcasecmp.
9770
9771 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9772
9773 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9774
9775 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9776
9777 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9778
97792008-05-22 Kenichi Handa <handa@m17n.org>
9780
9781 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9782
9783 * font.c (font_prop_validate_style): Adjust for the format
9784 change of font_style_table.
9785
9786 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9787 two args.
9788
9789 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9790 two args.
9791
97922008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9793
9794 * minibuf.c (keys_of_minibuf): Delete.
9795 * lisp.h (keys_of_minibuf): Delete.
9796 * emacs.c (main): Don't call keys_of_minibuf.
9797
97982008-05-22 Kenichi Handa <handa@m17n.org>
9799
9800 * ftfont.c (ftfont_resolve_generic_family): Rename from
9801 ftfont_list_generic_family. Return a single family for each
9802 generic family.
9803 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9804 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9805 Call font_add_log.
9806 (ftfont_match): Call font_add_log.
9807
9808 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9809 (FONT_DEBUG): Define it.
9810 (font_add_log): Extern it.
9811 (font_assert): Rename from xassert.
9812
9813 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9814 (xfont_list_family): Call font_add_log.
9815 (xfont_match): Likewise.
9816 (memq_no_quit): Delete.
9817
9818 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9819 call of Ffont_xlfd_name.
9820
9821 * xfaces.c (struct table_entry, slant_table, weight_table)
9822 (swidth_table): Move to font.c.
9823
9824 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9825 xassert are changed to font_assert. Delete many unused variables.
9826 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9827 New variables.
9828 (struct table_entry): Move from xfaces.c and modified.
9829 (weight_table, slant_table, width_table): Move from xfaces.c and
9830 contents adjusted for the change of struct table_entry.
9831 (font_style_to_value, font_style_symbolic): Adjust for the
9832 format change of font_style_table.
9833 (font_parse_family_registry): Don't overwrite existing foundry and
9834 family of font_spec.
9835 (font_score): Fix calculation of diff for sizes.
9836 (font_sort_entites): Call font_add_log.
9837 (font_delete_unmatched): Return a newly created list.
9838 (font_list_entities): Fix previous change. Call font_add_log.
9839 (font_matching_entity, font_open_entity, font_close_entity):
9840 Call font_add_log.
9841 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9842 (Finternal_set_font_style_table): Delete.
9843 (BUILD_STYLE_TABLE): New macro.
9844 (build_style_table): New function.
9845 (Vfont_log, font_log_env_checked): New variables.
9846 (font_add_log): New function.
9847 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9848 Declare Lisp variables "font-weight-table", "font-slant-table",
9849 "font-width-table", and "font-log". Initialize font_style_table.
9850
98512008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9852
9853 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9854
98552008-05-21 Seiji Zenitani <zenitani@mac.com>
9856 Ryo Yoshitake <ryo@shiftmode.net>
9857
9858 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9859 (Vframe_alpha_lower_limit): New variable.
9860 (x_set_alpha): New function.
9861
9862 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9863
9864 * xfns.c (x-create-frame, Qalpha):
9865 Initialize the frame parameter `alpha'.
9866 * xterm.c (OPAQUE, OPACITY): New.
9867 (x_set_frame_alpha): New function.
9868 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9869
9870 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9871 * w32fns.c (w32_frame_parm_handlers): Likewise.
9872
98732008-05-20 Jason Rumney <jasonr@gnu.org>
9874
9875 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9876 truetype fonts to opentype list.
9877
98782008-05-20 Juanma Barranquero <lekktu@gmail.com>
9879
9880 * fontset.c (Ffontset_info): Doc fix.
9881 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9882 <ignore-relative-composition>: Fix typos in docstrings.
9883
9884 * font.c (syms-of-font) <font-encoding-alist>:
9885 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9886 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9887 (Ffont_otf_alternates): Doc fixes.
9888
98892008-05-20 Kenichi Handa <handa@m17n.org>
9890
9891 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9892 font.h through out the file.
9893 (FONT_DRIVERS): Rename from FONTOBJ.
9894 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9895 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9896
9897 * emacs.c (main): Call syms_of_font unconditionally.
9898
9899 * font.h (find_font_encoding): Extern it.
9900
9901 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9902 fontset.c.
9903 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9904 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9905 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9906 only when HAVE_WINDOW_SYSTEM is defined.
9907 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9908 when HAVE_WINDOW_SYSTEM is defined.
9909
9910 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9911 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9912
9913 * xfaces.c: Include font.h unconditionally.
9914 (merge_face_ref, merge_face_vectors)
9915 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9916
99172008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9918
9919 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9920 indirect_variable.
9921 * eval.c (lisp_indirect_variable): New fun.
9922 (Fuser_variable_p): Use it.
9923
99242008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9925
9926 * lisp.h (indirect_variable):
9927 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9928 Use Lisp_Symbol pointers rather than Lisp_Object.
9929 Adjust callers.
9930 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9931 To this end, change calling-convention.
9932
9933 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9934 if some non-hidden buffers are selected by string&pred.
9935
99362008-05-19 Chong Yidong <cyd@stupidchicken.com>
9937
9938 * process.c (wait_reading_process_output): Always check status
9939 when in batch mode.
9940
99412008-05-19 Kenichi Handa <handa@m17n.org>
9942
9943 * font.c (font_list_entities): Fix handling of cache.
9944 (font_matching_entity): Likewise.
9945
9946 * ftfont.c (cs_iso8859_1): Delete.
9947 (ft_face_cache): New variable.
9948 (struct ftfont_info): New member fc_charset_idx.
9949 (ftfont_build_basic_charsets): Delete.
9950 (fc_charset_table): New variable.
9951 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9952 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9953 Callers changed.
9954 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9955 (ftfont_spec_pattern): New argument fc_charset_idx.
9956 Check registry more rigidly. Change callers.
9957 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9958 change of :font-entity property of the font.
9959
9960 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9961 property of the font.
9962
99632008-05-18 Juanma Barranquero <lekktu@gmail.com>
9964
9965 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9966 (Funencodable_char_position, Fcheck_coding_systems_region)
9967 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9968 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9969 (Ffind_operation_coding_system, Fset_coding_system_priority)
9970 (Fcoding_system_eol_type): Doc fixes.
9971
99722008-05-17 Glenn Morris <rgm@gnu.org>
9973
9974 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9975
99762008-05-16 Eli Zaretskii <eliz@gnu.org>
9977
9978 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9979 and st_gid.
9980
9981 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9982 HAVE_WINDOW_SYSTEM is not defined.
9983
9984 * xfaces.c (merge_face_ref, merge_face_vectors)
9985 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9986 HAVE_WINDOW_SYSTEM is defined.
9987 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9988
99892008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9990
9991 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9992
99932008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9994
9995 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9996
99972008-05-15 Kenichi Handa <handa@m17n.org>
9998
9999 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
10000 preference.
10001
100022008-05-15 Glenn Morris <rgm@gnu.org>
10003
10004 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
10005
100062008-05-15 Chong Yidong <cyd@stupidchicken.com>
10007
10008 * fns.c (init_fns): Don't initialize weak_hash_tables here.
10009 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
10010
10011 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
10012
100132008-05-15 Kenichi Handa <handa@m17n.org>
10014
10015 * ftfont.c (ftfont_list): Downcase family name to check generic
10016 families.
10017
10018 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
10019 font-spec for QCfont value.
10020
10021 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
10022 buffer. Check the return value of it.
10023
100242008-05-14 Jason Rumney <jasonr@gnu.org>
10025
10026 * w32term.c (w32_get_glyph_overhangs): Remove.
10027 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
10028
100292008-05-14 Kenichi Handa <handa@m17n.org>
10030
10031 * font.c (font_prop_validate): Make nil a valid value.
10032 (font_clear_cache): Check if the cached vector of entities is nil
10033 or not.
10034
100352008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10036
10037 * emacs.c (main_thread): Conditionalize on
10038 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10039 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
10040
10041 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
10042 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
10043 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10044
100452008-05-14 Kenichi Handa <handa@m17n.org>
10046
10047 * coding.c (detect_coding_iso_2022): Ignore a coding category that
10048 has no corresponding coding system.
10049
100502008-05-14 Jason Rumney <jasonr@gnu.org>
10051
10052 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
10053
10054 * w32font.h (w32font_open_internal): Update declaration.
10055
10056 * w32font.c (w32font_open_internal): Change last argument from
10057 w32font_info struct to font object. Fill in font object from
10058 font_entity. Get Outline metrics if possible. Use them to
10059 calculate underline position and thickness. Use xlfd name as name
10060 property. Don't set codepage.
10061 (w32font_open): Pass font_object to w32font_open_internal. Don't
10062 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
10063 (w32font_draw): Use s->font.
10064 (clear_cached_metrics): Don't clear non-existent blocks.
10065
10066 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
10067 font was not found.
10068 (x_draw_glyph_string): Use underline position and thickness from font.
10069
10070 * w32uniscribe.c (uniscribe_open): Pass font_object to
10071 w32font_open_internal.
10072
100732008-05-14 Kenichi Handa <handa@m17n.org>
10074
10075 These changes are to delete all legacy font-handling codes, and
10076 make Emacs use only font-backends.
10077
10078 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
10079 (frame.o, image.o, print.o): Depend on $(FONTSRC).
10080
10081 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
10082
10083 * charset.h (Vcharset_non_preferred_head)
10084 (Vcurrent_iso639_language): Extern them.
10085
10086 * charset.c (Vcharset_non_preferred_head): New variable.
10087 (Vcurrent_iso639_language): New variable.
10088 (syms_of_charset): Declare it as a Lisp variable.
10089 (char_charset): Don't check non preferred charsets. As a last
10090 resort, return charset_unicode.
10091 (Fset_charset_priority): Update Vcharset_non_preferred_head.
10092
10093 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
10094 conditionals. Don't check enable_font_backend. Delete all codes
10095 used only when USE_FONT_BACKEND is not defined.
10096
10097 * dispextern.h (struct glyph_string): Change type of `font' to
10098 `struct font *'.
10099 (struct glyph_string): New member underline_position and
10100 underline_thickness.
10101 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
10102 (struct face): Change type of `font' to `struct font *'. Remove
10103 members `font_name', `font_info_id'.
10104 (per_char_metric, encode_char): Delete externs.
10105 (calc_pixel_width_or_height): Adjust the prototype.
10106
10107 * emacs.c (enable_font_backend): Delete extern.
10108 (main): Don't set enable_font_backend. Don't check the command
10109 line argument "-disable-font-backend".
10110
10111 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
10112 (enum font_property_index): New members FONT_DPI_INDEX,
10113 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
10114 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
10115 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
10116 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
10117 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
10118 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
10119 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
10120 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
10121 (struct font_spec, struct font_entity): New structs.
10122 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
10123 (struct font): Many members from old "struct font_info" moved to
10124 here. Members font and entity deleted.
10125 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
10126 the new font-related objects.
10127 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
10128 (CHECK_FONT_GET_OBJECT): Likewise.
10129 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
10130 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
10131 (struct font_driver): New members case_sensitive anc check. Type
10132 of the member list and open changed.
10133 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
10134 (font_symbolic_width, font_find_object, font_get_spec)
10135 (font_set_lface_from_name): Delete extern.
10136 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
10137
10138 * font.c: Include <strings.h>.
10139 (enable_font_backend): Delete it.
10140 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
10141 (CHECK_VALIDATE_FONT_SPEC): Delete it.
10142 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
10143 (null_string): Delete it.
10144 (null_vector): Make it static.
10145 (font_family_alist): Delete it.
10146 (Qnormal): Extern it.
10147 (QCextra, QClanguage): Delete it.
10148 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
10149 (font_make_spec, font_make_entity, font_make_object)
10150 (font_intern_prop): Renamed from intern_downcase. Don't downcase
10151 the string. Callers changed.
10152 (font_pixel_size): Adjusted for the format change of font-related
10153 objects.
10154 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
10155 (font_style_to_value, font_style_symbolic): New function.
10156 (build_font_family_alist): Delete it.
10157 (font_registry_charsets): Use Fassoc_string instead of
10158 assq_no_quit.
10159 (font_prop_validate_symbol): Don't return null_string.
10160 (font_prop_validate_style): Adjusted for the change of
10161 style-related values in a font vector.
10162 (font_property_table): Delete entries for QClanguage and
10163 QCantialias, add entries for QCavgwidth.
10164 (get_font_prop_index): Delete the 2nd argument FROM.
10165 (font_prop_validate): Arguments changed.
10166 (font_put_extra): Adjusted for the change of font-related objects.
10167 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
10168 (font_parse_fcname, font_unparse_fcname)
10169 (font_prepare_composition): Likewise.
10170 (font_parse_family_registry): Renamed from font_merge_old_spec.
10171 (otf_open): Delete the 1st arg entity.
10172 (font_otf_capability): Adjusted for the above change.
10173 (font_score): New arg alternate_families. Adjusted for the change
10174 of font-related objects.
10175 (font_sort_entites): New arg best_only.
10176 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
10177 Delete them.
10178 (font_match_p): Check alternate families.
10179 (font_find_object): Delete it.
10180 (font_check_object): New function.
10181 (font_clear_cache): Adjusted for the change of font-related objects.
10182 (font_delete_unmatched): New arg.
10183 (font_list_entities): Call font_driver->list with a spec that
10184 doesn't specify style-related properties.
10185 (font_matching_entity): Arguments changed. Caller changed.
10186 (font_open_entity): Adjusted for the change of font-related objects.
10187 (font_close_object, font_has_char, font_encode_char)
10188 (font_get_name, font_get_spec): Likewise.
10189 (font_spec_from_name, font_clear_prop, font_update_lface):
10190 New functions.
10191 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
10192 (font_prepare_for_face, font_done_for_face, font_open_by_name)
10193 (font_at): Adjusted for the change of font-related objects.
10194 (font_range): New function.
10195 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
10196 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
10197 (Fcopy_font_spec, Fmerge_font_spec): New function.
10198 (Ffont_family_list): Renamed from list-families.
10199 (Finternal_set_font_style_table): Arguments changed.
10200 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
10201 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
10202 change of font-related objects.
10203 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
10204
10205 * fontset.h (struct font_info): Delete it. Most members go to
10206 struct font.
10207 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
10208 (enum FONT_SPEC_INDEX): Delete it.
10209 (font_info, list_fonts_func, load_font_func, query_font_func)
10210 (set_frame_fontset_func, find_ccl_program_func)
10211 (get_font_repertory_func, new_fontset_from_font_name): Delete
10212 externs.
10213 (fontset_from_font_name): Extern it.
10214 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
10215 (FONT_INFO_FROM_FACE): Deleted.
10216 (face_for_font): Adjust prototype.
10217
10218 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
10219 conditionals. Don't check enable_font_backend. Delete all codes
10220 used only when USE_FONT_BACKEND is not defined.
10221 (get_font_info_func, list_font_func, load_font_func)
10222 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
10223 (get_font_repertory_func): Delete them.
10224 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
10225 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
10226 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
10227 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
10228 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
10229 (fontset_compare_rfontdef): New function.
10230 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
10231 rfont-defs by qsort. Adjusted for the change of font-group vector.
10232 (load_font_get_repertory): Deleted.
10233 (fontset_find_font): Use new macros to ref/set elements of
10234 font-def and rfont-def.
10235 (fontset_font): Fix the timing of remembering that no font for C.
10236 (free_face_fontset): Do nothing if the face has no fontset.
10237 (face_suitable_for_char_p): Use new macros to ref/set elements of
10238 rfont-def.
10239 (face_for_char): Likewise. Call face_for_char with font_object.
10240 (fs_load_font): Delete. Delete #pragma surrounding it.
10241 (fs_query_fontset): Use strcasecmp instead of strcmp.
10242 (generate_ascii_font_name): Adjusted for the format change of
10243 font-spec.
10244 (Fset_fontset_font): Likewise. Use new macros to set elements of
10245 font-def.
10246 (Fnew_fontset): Use font_unparse_xlfd to generate
10247 FONTSET_ASCII (fontset).
10248 (new_fontset_from_font_name): Deleted.
10249 (fontset_from_font): Renamed from new_fontset_from_font. Check if
10250 a fontset is already created for the font. FIx updating of
10251 Vfontset_alias_alist.
10252 (fontset_ascii_font): Deleted.
10253 (Ffont_info): Adjusted for the format change of font-spec.
10254 (Finternal_char_font): Likewise.
10255 (Ffontset_info): Likewise.
10256 (syms_of_fontset): Don't check load_font_func.
10257
10258 * fns.c (internal_equal): Handle PREV_FONT.
10259
10260 * frame.h: Delete USE_FONT_BACKEND conditional.
10261
10262 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
10263 conditionals. Don't check enable_font_backend. Delete all codes
10264 used only when USE_FONT_BACKEND is not defined.
10265 (x_set_font): Call x_new_font, not x_new_fontset2.
10266 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
10267 already set for the frame.
10268
10269 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
10270 a font-entity by font_make_entity. Use font_intern_prop instead
10271 of intern_downcase. Use FONT_SET_STYLE to set a style-related
10272 font property. If a font is scalable, set avgwidth property to 0.
10273 Set font-entity property by font_put_extra.
10274 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
10275 (ffont_driver): Adjusted for the change of struct font_driver.
10276 (ftfont_spec_pattern): New function.
10277 (ftfont_list): Return a list, not vector.
10278 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
10279 (ftfont_list_family): Don't downcase names.
10280 (ftfont_free_entity): Deleted.
10281 (ftfont_open): Return a font-object. Adjusted for the change of
10282 struct font. Get underline_thickness and underline_position from
10283 font property. Don't update dpyinfo->smallest_font_height and
10284 dpyinfo->smallest_char_width.
10285 (ftfont_close): Don't free `struct font'.
10286 (ftfont_has_char): Adjusted for the format change of font-entity.
10287 (ftfont_encode_char, ftfont_text_extents): Likewise.
10288
10289 * ftxfont.c (ftxfont_list): Return a list, not vector.
10290 (ftxfont_open): Return a font-object. Adjusted for the change of
10291 struct font. Get underline_thickness and underline_position from
10292 font property. Don't update dpyinfo->smallest_font_height and
10293 dpyinfo->smallest_char_width.
10294 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
10295 (ftxfont_draw): Adjusted for the change of struct font.
10296
10297 * image.c (image_ascent): Don't include "charset.h". Include
10298 "character.h" and "font.h".
10299
10300 * lisp.h (enum pvec_type): New member PREV_FONT.
10301 (Fassoc_string): EXFUN it.
10302
10303 * print.c: Include font.h.
10304 (print_object): Handle font-related objects.
10305
10306 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
10307 conditionals. Don't check enable_font_backend. Delete all codes
10308 used only when USE_FONT_BACKEND is not defined.
10309 (handle_auto_composed_prop): Do nothing if it->f is not on a
10310 window system. Check how many following characters can be
10311 displayed by the same font.
10312 (calc_pixel_width_or_height): Type of the 4th arg is changed to
10313 'struct font *'.
10314 (get_char_face_and_encoding): Assign the whole encoding task to
10315 the `encode-char' method of a font driver.
10316 (fill_composite_glyph_string): Adjusted for the change of `struct
10317 face' and `struct glyph_string'.
10318 (fill_glyph_string): Likewise.
10319 (get_per_char_metric): Arguments changed.
10320 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
10321 and `struct glyph_string'.
10322 (produce_stretch_glyph, calc_line_height_property)
10323 (x_produce_glyphs): Likewise.
10324
10325 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
10326 conditionals. Don't check enable_font_backend. Delete all codes
10327 used only when USE_FONT_BACKEND is not defined. Use
10328 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
10329 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
10330 (Qp): Extern them.
10331 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
10332 Deleted.
10333 (struct font_name): Deleted.
10334 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
10335 (compare_fonts_by_sort_order): New function.
10336 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
10337 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
10338 Deleted.
10339 (Fx_family_fonts): Use font_list_entities, and sort fonts by
10340 compare_fonts_by_sort_order.
10341 (Fx_font_family_list): Call Ffont_family_list.
10342 (face_numeric_value, face_numeric_weight, face_numeric_slant)
10343 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
10344 (face_symbolic_slant, face_symbolic_swidth)
10345 (split_font_name_into_vector, build_font_name_from_vector)
10346 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
10347 (font_rescale_ratio, split_font_name, build_font_name)
10348 (free_font_names, sort_fonts, x_face_list_fonts)
10349 (face_font_available_p, sorted_font_list, cmp_font_names)
10350 (font_list_1, concat_font_list, font_list, remove_duplicates):
10351 Deleted.
10352 (Fx_list_fonts): Use Ffont_list.
10353 (LFACE_AVGWIDTH): Deleted.
10354 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
10355 by FONTP.
10356 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
10357 (set_lface_from_font_name): Delete it.
10358 (set_lface_from_font): Renamed from
10359 set_lface_from_font_and_fontset. Caller changed. Don't set
10360 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
10361 for face.
10362 (merge_face_vectors): Copy font-spec if necessary.
10363 Clear properties of the font-spec if necessary.
10364 (merge_face_ref): Clear properties of the font-spec if necessary.
10365 (Finternal_set_lisp_face_attribute): Likewise.
10366 (set_font_frame_param): Use font_load_for_lface to load a
10367 font-object, and call Fmodify_frame_parameters with it.
10368 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
10369 font name by Ffont_xlfd_name.
10370 (Finternal_lisp_face_attribute_values): Don't check QCweight,
10371 QCslant, and QCwidth.
10372 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
10373 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
10374 Compare fonts by EQ.
10375 (lookup_non_ascii_face): Deleted.
10376 (face_for_font): The 2nd argument changed.
10377 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
10378 Check atomic font properties by case insensitive.
10379 (realize_non_ascii_face): Set face->overstrike correctly.
10380 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
10381 (dump_realized_face): Get font name from
10382 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
10383
10384 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
10385 conditionals. Don't check enable_font_backend. Delete all codes
10386 used only when USE_FONT_BACKEND is not defined.
10387 (xic_create_xfontset): Original code deleted and renamed from
10388 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
10389 (x_make_gc): Don't set GCFont in GCs.
10390 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
10391 opened by "fixed".
10392 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10393 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10394 get_font_repertory_func.
10395
10396 * xfont.c: Include <stdlib.h> and "ccl.h".
10397 (struct xfont_info): New structure.
10398 (xfont_query_font): Deleted.
10399 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10400 moved from xterm.c.
10401 (xfont_driver): Adjusted for the change of struct font_driver.
10402 (compare_font_names): New function.
10403 (xfont_list_pattern): Sort font names case insensitively. Make
10404 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10405 (xfont_list): Return a list, not vector.
10406 (xfont_match): If the font doesn't have QCname property, generate
10407 a name from the other font properties.
10408 (xfont_open): Return a font-object. Adjusted for the change of
10409 struct font. Get underline_thickness and underline_position from
10410 font property. Don't update dpyinfo->smallest_font_height and
10411 dpyinfo->smallest_char_width.
10412 (xfont_close): Don't free struct font.
10413 (xfont_prepare_face): Adjusted for the change of struct font.
10414 (xfont_done_face): Deleted.
10415 (xfont_has_char): Adjusted for the change of struct font.
10416 (xfont_encode_char, xfont_draw): Likewise.
10417 (xfont_check): New function.
10418
10419 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10420 callback function.
10421 (xftfont_match): Adjusted for the format change of font-entity.
10422 (xftfont_open): Adjusted for the format change of font-entity and
10423 font-object. Adjusted for the change of struct font. Return a
10424 font-object. Don't update dpyinfo->smallest_font_height and
10425 dpyinfo->smallest_char_width.
10426 (xftfont_close): Block input while calling XftFontClose.
10427 (xftfont_prepare_face): Don't block input while calling
10428 xftfont_get_colors. Adjusted for the change of struct font.
10429 (xftfont_shape): Return value of error case fixed.
10430
10431 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10432
10433 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10434 conditionals.
10435 (FONT_WIDTH): Return (f)->max_width.
10436 (struct x_display_info): Delete member `font'.
10437 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10438 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10439 (struct x_output): Change type of `font' to `struct font *'.
10440
10441 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10442 conditionals. Don't check enable_font_backend. Delete all codes
10443 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10444 (x_per_char_metric, x_encode_char): Deleted.
10445 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10446 (x_compute_glyph_string_overhangs): Adjusted for the change of
10447 `struct face'.
10448 (x_draw_glyph_string_foreground)
10449 (x_draw_composite_glyph_string_foreground): Likewise.
10450 (x_draw_glyph_string): Likewise. Use font->underline_position and
10451 font->underline_thickness.
10452 (x_new_font): Renamed from x_new_fontset2.
10453 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10454 (x_check_font): Call `check' method of a font driver.
10455 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10456 (x_query_font, x_get_font_repertory): Deleted.
10457 (x_find_ccl_program): Renamed and moved to xfont.c.
10458 (x_redisplay_interface): Adjusted for the change of `struct
10459 redisplay_interface'.
10460
10461 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10462 conditionals. Don't check enable_font_backend. Delete all codes
10463 used only when USE_FONT_BACKEND is not defined. Surround non-used
10464 code by "#ifdef OLD_FONT" and "endif".
10465 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10466
10467 * w32font.h (struct w32font_info): New member.
10468 (FONT_COMPAT): New macro.
10469 (w32font_open_internal): Prototype adjusted.
10470
10471 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10472 OLD_FONT" and "endif".
10473
10474 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10475 conditionals. Don't check enable_font_backend. Delete all codes
10476 used only when USE_FONT_BACKEND is not defined.
10477 (w32font_open): Return a font-object. Make a font-object by
10478 font_make_object. Adjusted for the change of struct w32font_info.
10479 (w32font_close): Don't free struct font. Adjusted for the change
10480 of struct w32font_info.
10481 (w32font_encode_char, w32font_text_extents, w32font_draw):
10482 Adjusted for the change of struct w32font_info.
10483 (w32font_draw): Likewise.
10484 (w32font_list_internal): Return a list, not vector.
10485 (w32font_open_internal): Change the 4th arg to font-object.
10486 Adjusted for the change of struct w32font_info and font-object format.
10487 (add_font_name_to_list): Don't downcase names.
10488 (w32_enumfont_pattern_entity): Make a font-entity by
10489 font_make_entity. Adjusted for the format change of font-entity.
10490 Use FONT_SET_STYLE to set a style-related font property. If a
10491 font is scalable, set avgwidth property to 0. Set font-entity
10492 property by font_put_extra.
10493 (font_matches_spec): Adjusted for the format change of font-entity.
10494 (w32_weight_table, w32_decode_weight): New variables.
10495 (w32_encode_weight): New function.
10496 (fill_in_logfont): Adjusted for the format change of font-spec.
10497 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10498 weight value.
10499 (w32font_driver): Adjusted for the change of struct font_driver.
10500
10501 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10502 conditionals. Don't check enable_font_backend. Surround non-used
10503 code by "#ifdef OLD_FONT" and "endif".
10504 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10505 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10506
10507 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10508 conditionals. Don't check enable_font_backend. Delete all codes
10509 used only when USE_FONT_BACKEND is not defined. Surround non-used
10510 code by "#ifdef OLD_FONT" and "endif".
10511
10512 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10513 (uniscribe_open): Return value changed to font-object.
10514 Adjusted for the format change of font-object.
10515 (uniscribe_otf_capability): Adjusted for the change of struct font.
10516 (add_opentype_font_name_to_list): Don't downcase names.
10517 (uniscribe_font_driver): Adjusted for the change of struct
10518 font_driver.
10519
105202008-05-13 Chong Yidong <cyd@stupidchicken.com>
10521
10522 * dispnew.c (update_frame_1): Check if tty output is still valid
10523 before flushing it.
10524
105252008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10526
10527 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10528 to Gtk+ menus.
10529
105302008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10531
10532 * dired.c (file_name_completion): Tweak the code so as to always do it
10533 in a single pass. Tighten the scope of some variables.
10534
10535 * dired.c (Qdefault_directory): New var.
10536 (file_name_completion): Use it instead of Fexpand_file_name.
10537 (syms_of_dired): Initialize it.
10538
105392008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10540
10541 * fileio.c (double_dollars): Remove dead code.
10542
105432008-05-10 Eli Zaretskii <eliz@gnu.org>
10544
10545 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10546 Mention w32-get-true-file-attributes in doc string.
10547
10548 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10549
105502008-05-09 Glenn Morris <rgm@gnu.org>
10551
10552 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10553 2008-04-23.
10554
105552008-05-09 Eli Zaretskii <eliz@gnu.org>
10556
10557 Support for reporting owner and group of each file on MS-Windows:
10558 * dired.c (stat_uname, stat_gname): New functions, with special
10559 implementation for w32.
10560 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10561
10562 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10563 (dflt_group_name): New static variable.
10564 (dflt_group): Rename from the_group.
10565 (init_user_info): Init dflt_group fields. Get user's group name
10566 from LookupAccountSid.
10567 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10568 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10569 New initialization states.
10570 (globals_of_w32): Initialize them to zero. Initialize the default
10571 group name to "None".
10572 (GetFileSecurity_Name): New global var, the name of the function
10573 to call for GetFileSecurity.
10574 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10575 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10576 (get_file_security, get_security_descriptor_owner)
10577 (get_security_descriptor_group, is_valid_sid)
10578 (get_file_security_desc, get_rid, get_name_and_id)
10579 (get_file_owner_and_group): New functions.
10580 (stat): Use get_file_security_desc and get_file_owner_and_group to
10581 report the owner and primary group of each file. Don't ignore the
10582 high 32 bits of file's size, now that st_size is 64-bit wide.
10583 Fix test when to get true file attributes.
10584 (init_user_info): Use get_rid instead of equivalent inline code.
10585 (fstat): Don't ignore the high 32 bits of file's size.
10586
105872008-05-09 Chong Yidong <cyd@stupidchicken.com>
10588
10589 * image.c (png_load): Use correct bit-depth for setting background
10590 color.
10591
105922008-05-08 Eli Zaretskii <eliz@gnu.org>
10593
10594 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10595 epa-hook.elc.
10596
105972008-05-08 Juanma Barranquero <lekktu@gmail.com>
10598
10599 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10600
106012008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10602
10603 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10604 because the original parameters are in pure storage now.
10605 (mac_window): Remove unused params. Update callers.
10606
106072008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10608
10609 * lread.c (substitute_object_recurse): Use lower-level primitives.
10610 Don't signal errors when traversing sub-char-tables.
10611 Don't loop over all the possible characters when traversing char-tables.
10612
10613 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10614 just like we do in print.c.
10615
106162008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10617
10618 * minibuf.c (Ftry_completion): Remove code left over from when we used
10619 scmp instead of Fcompare_strings.
10620
106212008-05-04 Juanma Barranquero <lekktu@gmail.com>
10622
10623 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10624
106252008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10626
10627 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10628 Create bitmap context in native byte order.
10629
10630 * macterm.c (XDrawLine)
10631 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10632 context in native byte order.
10633
106342008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10635
10636 * config.in: Regenerate.
10637
10638 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10639 New definitions for Image I/O support.
10640 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10641 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10642 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10643 (mac_data_provider_release_data, image_load_image_io)
10644 [USE_MAC_IMAGE_IO]: New functions.
10645 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10646 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10647 (init_image_func_pointer) [MAC_OSX]: Remove function.
10648 (image_load_quartz2d) [MAC_OSX]: Check availability of
10649 CGImageCreateWithPNGDataProvider at compile time.
10650 Use lowercase `false' for boolean constant.
10651 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10652 Use image_load_image_io.
10653 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10654 Don't check MyCGImageCreateWithPNGDataProvider.
10655 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10656 Don't call init_image_func_pointer.
10657
10658 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10659
10660 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10661 Make variable non-static.
10662 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10663 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10664
10665 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10666 (RED_FROM_ULONG): Mask off higher bits.
10667 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10668
10669 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10670 Include AvailabilityMacros.h.
10671 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10672 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10673
106742008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10675
10676 * chartab.c (Fset_char_table_range): If range is t, really set all
10677 chars to that value.
10678
106792008-05-03 Eli Zaretskii <eliz@gnu.org>
10680
10681 * dired.c (Ffile_attributes): Don't allow the device number become
10682 negative.
10683
106842008-05-02 Daiki Ueno <ueno@unixuser.org>
10685
10686 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10687
106882008-05-02 Juri Linkov <juri@jurta.org>
10689
10690 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10691 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10692 DEFAULT argument as a list of default values in docstrings.
10693
106942008-05-01 Chong Yidong <cyd@stupidchicken.com>
10695
10696 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10697
106982008-05-01 Martin Rudalics <rudalics@gmx.at>
10699
10700 * dispnew.c (change_frame_size_1): Preserve small windows when
10701 shrinking frames by calling set_window_height|width with third
10702 arg 2.
10703
10704 * window.h (struct window): Replace field too_small_ok by field
10705 resize_proportionally.
10706
10707 * window.c (make_window): Initialize resize_proportionally.
10708 (enlarge_window): Temporarily set resize_proportionally to make
10709 sure that shrink_windows does scale the window proportionally.
10710 (shrink_windows): When window has resize_proportionally set try
10711 to shrink it proportionally by stealing from other windows.
10712 (struct saved_window, Fset_window_configuration)
10713 (compare_window_configurations): Handle resize_proportionally.
10714 (WINDOW_TOTAL_SIZE): New macro.
10715 (window_min_size, shrink_windows, size_window): Use it.
10716 (check_min_window_sizes): Remove. Invalid values of
10717 window-min-height|width are handled by window_min_size_2 now.
10718 (size_window, Fsplit_window, enlarge_window)
10719 (adjust_window_trailing_edge, grow_mini_window): Don't call
10720 check_min_window_sizes.
10721 (window_min_size_2, window_min_size_1, window_min_size):
10722 New argument safe_p for retrieving "safe" minimum sizes.
10723 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10724 (adjust_window_trailing_edge, grow_mini_window):
10725 Adjust arguments of window_min_size... functions.
10726 (shrink_windows): Argument min_size removed. New argument
10727 safe_p allows shrinking windows to their safe minimum sizes.
10728 Calculate minimum size and decide whether a window shall be
10729 deleted for each window individually.
10730 (size_window): When nodelete_p equals 2, tell shrink_windows to
10731 delete windows only if their new minimum size is no more safe.
10732 (shrink_window_lowest_first): Call window_min_size_1 to make
10733 sure to preserve modeline of bottom-most window when resizing
10734 the minibuffer.
10735 (Fset_window_configuration, Fcurrent_window_configuration)
10736 (compare_window_configurations): Do not handle
10737 window-min-height|width any more.
10738 (syms_of_window): Clarify window-min-height|width doc-strings.
10739
107402008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10741
10742 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10743 some more. Copy some of the code from Ftry_completions.
10744 Remove special case code that dates back to initial revision when the
10745 slash was only added when necessary and that can't trigger nowadays.
10746
107472008-04-27 Kenichi Handa <handa@m17n.org>
10748
10749 * font.c (font_prop_validate): Signal `error' instead of `font'.
10750
107512008-04-29 Jason Rumney <jasonr@gnu.org>
10752
10753 * w32fns.c (Fw32_battery_status): New defun.
10754 (syms_of_w32fns): Defsubr it.
10755
107562008-04-28 Andreas Schwab <schwab@suse.de>
10757
10758 * dired.c (file_name_completion): Fix another mixing of encoded
10759 and decoded names.
10760
107612008-04-28 Juanma Barranquero <lekktu@gmail.com>
10762
10763 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10764
107652008-04-27 Juanma Barranquero <lekktu@gmail.com>
10766
10767 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10768
107692008-04-27 Andreas Schwab <schwab@suse.de>
10770
10771 * dired.c (file_name_completion): Fix inappropriate mixing of
10772 encoded and decoded names.
10773
10774 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10775
10776 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10777
107782008-04-26 Eli Zaretskii <eliz@gnu.org>
10779
10780 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10781 2008-03-31, it's not needed anymore with `struct stat' definition
10782 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10783 for the same reasons.
10784
107852008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10786
10787 * m/sparc.h: Additional redefinitions for GNU/Linux.
10788
107892008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10790
10791 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10792 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10793 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10794 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10795 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10796 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10797 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10798 Likewise.
10799
10800 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10801 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10802 (mac_ax_number_of_characters): Add externs.
10803 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10804 [USE_MAC_TSM]: Likewise.
10805 (mac_handle_text_input_event) [MAC_OSX]:
10806 Handle kEventTextInputOffsetToPos for no active input area case.
10807 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10808 (mac_handle_document_access_event)
10809 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10810 (install_application_handler) [MAC_OSX]: Register handlers for
10811 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10812 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10813 Register mac_handle_document_access_event.
10814
10815 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10816 Make functions non-static.
10817
108182008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10819
10820 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10821 (read_file_name_completion_ignore_case, insert_default_directory)
10822 (Qdefault_directory): Move to minibuffer.el.
10823 (Fread_file_name): Call the new `read-file-name' instead.
10824
108252008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10826
10827 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10828 Make function non-static.
10829 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10830 Remove function.
10831 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10832 Move to mactoolbox.c.
10833 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10834
10835 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10836 (mac_rect_make): New macro.
10837
10838 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10839 instead of float.
10840 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10841 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10842 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10843 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10844 CGRectMake.
10845 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10846 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10847 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10848 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10849 instead of WindowRef in argument type.
10850 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10851 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10852 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10853 instead of DISPLAY. All uses changed.
10854 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10855 (x_calc_absolute_position): Simplify so as not to use
10856 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10857
10858 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10859 instead of WindowRef in argument type.
10860 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10861 [TARGET_API_MAC_CARBON]: Remove externs.
10862 (create_apple_event, mac_event_parameters_to_lisp)
10863 [TARGET_API_MAC_CARBON]: Add externs.
10864
10865 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10866 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10867 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10868 is clicked.
10869 (x_activate_menubar): Remove extern for saved_menu_event_location.
10870 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10871 Move from mac.c.
10872
108732008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10874
10875 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10876 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10877
108782008-04-23 Jason Rumney <jasonr@gnu.org>
10879
10880 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10881 attributes only for local files.
10882
10883 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10884 default to Qlocal.
10885
108862008-04-22 Juri Linkov <juri@jurta.org>
10887
10888 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10889 read-buffer-to-switch instead of using the letter "B".
10890
108912008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10892
10893 * fileio.c (Qdefault_directory): New variable.
10894 (Fread_file_name): Use it to pass `dir' to the completion functions.
10895
108962008-04-20 Chong Yidong <cyd@stupidchicken.com>
10897
10898 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10899
109002008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10901
10902 * keyboard.c (Vpre_help_message): Remove.
10903 (show_help_echo): Remove default C code.
10904
10905 * dired.c (directory_files_internal, file_name_completion):
10906 Only call ENCODE_FILE if the string is indeed decoded.
10907
109082008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10909
10910 * Makefile.in (TOOLKIT_DEFINES): Remove.
10911 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10912
109132008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10914
10915 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10916 (mactoolbox.o): New target.
10917
10918 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10919 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10920
10921 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10922 Use mac_set_frame_window_background instead of XSetWindowBackground.
10923 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10924 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10925 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10926 instead of SetWindowTitleWithCFString.
10927 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10928 Move function to mactoolbox.c.
10929 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10930 Use mac_set_window_modified instead of SetWindowModified.
10931 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10932 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10933 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10934 FrontNonFloatingWindow. Use mac_activate_window instead of
10935 ActivateWindow. Use mac_active_non_floating_window instead of
10936 ActiveNonFloatingWindow.
10937 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10938 Use mac_show_hourglass and mac_hide_hourglass.
10939 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10940 instead of GetGlobalMouse.
10941 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10942 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10943 Use mac_bring_window_to_front instead of BringToFront.
10944 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10945 mactoolbox.c.
10946 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10947 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10948 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10949 mactoolbox.c.
10950
10951 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10952 (XtPointer): Move typedef from macmenu.c.
10953 (enum button_type): Move enum from macmenu.c.
10954 (widget_value): Move typedef from macmenu.c.
10955 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10956 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10957 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10958 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10959 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10960 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10961 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10962 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10963 (Selection): Move typedef from macselect.c.
10964 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10965 macterm.c.
10966 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10967 (mac_is_window_collapsed, mac_bring_window_to_front)
10968 (mac_send_window_behind, mac_hide_window, mac_show_window)
10969 (mac_collapse_window, mac_front_non_floating_window)
10970 (mac_active_non_floating_window, mac_activate_window)
10971 (mac_move_window_structure, mac_move_window, mac_size_window)
10972 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10973
10974 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10975 (enum mac_menu_kind): Move enum to mactoolbox.c.
10976 (min_menu_id): Move variable to mactoolbox.c.
10977 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10978 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10979 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10980 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10981 [TARGET_API_MAC_CARBON]: Likewise.
10982 (XtPointer): Move typedef to macgui.h.
10983 (enum button_type): Move enum to macgui.h.
10984 (widget_value): Move typedef to macgui.h.
10985 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10986 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10987 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10988 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10989 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10990 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10991 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10992 (popup_activated_flag): Make variable non-static.
10993 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10994 (add_menu_item, fill_menu, dispose_menus):
10995 Move functions to mactoolbox.c.
10996 (restore_show_help_function, menu_target_item_handler)
10997 (install_menu_target_item_handler, mac_handle_dialog_event)
10998 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10999 [TARGET_API_MAC_CARBON]: Likewise.
11000 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
11001 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11002 (find_and_call_menu_selection, name_is_separator): Make function
11003 non-static.
11004 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
11005 to mactoolbox.c.
11006 (set_frame_menubar): Don't call install_menu_quit_handler.
11007 (menu_item_selection): New variable.
11008 (mac_menu_show): Use create_and_show_popup_menu.
11009 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
11010 selection but set variable menu_item_selection. All uses changed.
11011 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
11012 Call install_menu_quit_handler. Move to mactoolbox.c.
11013
11014 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
11015 (Selection): Move typedef to macgui.h.
11016 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
11017 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
11018 Make variables non-static.
11019 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11020 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
11021 Make functions non-static.
11022 (Vmac_service_selection) [MAC_OSX]: Likewise.
11023 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
11024 (mac_valid_selection_target_p, mac_clear_selection)
11025 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11026 (mac_put_selection_value, mac_selection_has_target_p)
11027 (mac_get_selection_value, mac_get_selection_target_list)
11028 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
11029 Move functions to mactoolbox.c.
11030 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
11031 Likewise.
11032 (copy_scrap_flavor_data, mac_handle_service_event)
11033 (install_service_handler) [MAC_OSX]: Likewise.
11034 (syms_of_macselect) <Vmac_dnd_known_types>:
11035 Use mac_dnd_default_known_types.
11036
11037 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
11038 Move to mactoolbox.c.
11039 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
11040 (Fx_selection_owner_p): Add EXFUN.
11041 (install_window_handler, remove_window_handler, XSetWindowBackground):
11042 Remove externs.
11043 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
11044 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
11045 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
11046 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
11047 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
11048 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
11049 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
11050 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
11051 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
11052 (create_and_show_popup_menu, mac_get_selection_from_symbol)
11053 (mac_valid_selection_target_p, mac_clear_selection)
11054 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11055 (mac_put_selection_value, mac_selection_has_target_p)
11056 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
11057 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
11058 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
11059 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11060 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
11061 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11062 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
11063 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11064 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11065
11066 * mactoolbox.c: New file.
11067
110682008-04-18 Jason Rumney <jasonr@gnu.org>
11069
11070 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
11071
110722008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
11073
11074 * character.c (Fmultibyte_char_to_unibyte):
11075 Return latin1 chars unchanged.
11076
11077 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
11078 relocated if it points to `name'.
11079
110802008-04-17 Kenichi Handa <handa@m17n.org>
11081
11082 * data.c (Faset): Allow setting a multibyte character in an
11083 ASCII-only unibyte string.
11084
11085 * lisp.h (STRING_SET_MULTIBYTE): New macro.
11086
110872008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
11088
11089 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
11090 done in config.h.
11091
110922008-04-16 Juanma Barranquero <lekktu@gmail.com>
11093
11094 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
11095 (Fchar_direction): Add usage in the docstring.
11096
110972008-04-15 Chong Yidong <cyd@stupidchicken.com>
11098
11099 * keyboard.c (read_key_sequence): Remove always-true checks.
11100
111012008-04-14 Jason Rumney <jasonr@gnu.org>
11102
11103 * w32font.c (w32font_open_internal): Set max_bounds.descent in
11104 compatibility struct, for better underline positioning.
11105
111062008-04-13 David Hansen <david.hansen@gmx.net>
11107
11108 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
11109 string.
11110
111112008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
11112
11113 * m/hp800.h (XUINT, XSET): Remove.
11114
111152008-04-12 Juanma Barranquero <lekktu@gmail.com>
11116
11117 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
11118 previous change.
11119
111202008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
11121
11122 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
11123 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
11124
111252008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11126
11127 * keymap.h (map_keymap_canonical): Declare.
11128 * xmenu.c (single_keymap_panes): Use it.
11129
111302008-04-11 Glenn Morris <rgm@gnu.org>
11131
11132 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
11133 set the target's value to that of the alias.
11134
111352008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11136
11137 * term.c (set_tty_color_mode): Left over typo.
11138
111392008-04-10 Michael Albinus <michael.albinus@gmx.de>
11140
11141 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
11142 only after check for file name handler functions. Signal, when
11143 native functionality is not supported.
11144 (syms_of_fileio): Declare it unconditionally.
11145
111462008-04-10 Jason Rumney <jasonr@gnu.org>
11147
11148 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
11149 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
11150
11151 * w32.c (logon_network_drive): Also logon to remote drives that
11152 are mapped to drive letters.
11153
111542008-04-10 Glenn Morris <rgm@gnu.org>
11155
11156 * xdisp.c (truncate-partial-width-windows): Doc fix.
11157
111582008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
11159
11160 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
11161 Move functions to minibuffer.el.
11162 (syms_of_fileio): Don't declare them.
11163
111642008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11165
11166 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
11167 (syms_of_minibuf): Remove its initialization.
11168
11169 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
11170
111712008-04-09 Juanma Barranquero <lekktu@gmail.com>
11172
11173 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
11174
111752008-04-09 Jason Rumney <jasonr@gnu.org>
11176
11177 * makefile.w32-in (distclean): Delete makefile too.
11178 (maintainer-clean): New target.
11179
11180 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
11181
11182 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
11183 for new font backend and composite cases.
11184
111852008-04-09 Jan Djärv <jan.h.d@swipnet.se>
11186
11187 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
11188 Most of the code moved to run_timers.
11189 (do_pending_atimers): Call run_timers.
11190 (run_timers): New function.
11191
11192 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
11193 run atimers.
11194
11195 * process.c (wait_reading_process_output): The same as above.
11196
111972008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11198
11199 * minibuf.c (last_exact_completion): Remove variable.
11200 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
11201 (complete_and_exit_1, complete_and_exit_2)
11202 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
11203 (Fdisplay_completion_list, display_completion_list_1)
11204 (Fminibuffer_completion_help, Fself_insert_and_exit)
11205 (Fexit_minibuffer, Fminibuffer_message): Move functions to
11206 minibuffer.el.
11207 (syms_of_minibuf): Remove corresponding initializations.
11208
11209 * keyboard.c (Qdeactivate_mark): New var.
11210 (command_loop_1): Use it to call `deactivate-mark'.
11211 (syms_of_keyboard): Initialize it.
11212
11213 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
11214 to another frame.
11215 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
11216 Don't call set_tty_color_mode.
11217 (store_frame_param): Reset previous_frame rather than call
11218 set_tty_color_mode.
11219 * term.c (set_tty_color_mode): Rewrite.
11220 * dispextern.h (set_tty_color_mode): New type.
11221 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
11222
112232008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
11224
11225 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
11226 for generic chars, which do not exist any more in emacs-unicode.
11227
112282008-04-08 Michael Albinus <michael.albinus@gmx.de>
11229
11230 * coding.c (detect_coding_emacs_mule)
11231 (Ffind_operation_coding_system): Fix typo.
11232
112332008-04-08 Jason Rumney <jasonr@gnu.org>
11234
11235 * w32uniscribe.c (SNAME): Extract only symbol name.
11236
11237 * w32font.h (struct w32_metric_cache): New struct.
11238 (w32font_info): Use it.
11239 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
11240 (CACHE_BLOCKSIZE): New constants.
11241
11242 * w32font.c (Qja, Qko, Qzh): New symbols.
11243 (syms_of_w32font): Initialise them.
11244 (font_matches_spec): Use them to filter by language.
11245 (recompute_cached_metrics): Remove function.
11246 (compute_metrics, clear_cached_metrics): New functions.
11247 (w32font_encode_char): Use them to manage metric cache.
11248 (w32font_text_extents): Cache metrics for all glyphs on demand.
11249 Delay converting glyph indices to WORD until needed.
11250 (w32font_open_internal): Initialize metric cache to empty.
11251 (registry_to_w32_charset): Charset should always be a symbol.
11252 (fill_in_logfont, list_all_matching_fonts): Family should
11253 always be a symbol.
11254
112552008-04-06 Jason Rumney <jasonr@gnu.org>
11256
11257 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
11258 Give up if glyph indices not supported. Use uniscribe obtained
11259 ABC widths for individual metrics. Map glyph clusters back to
11260 characters using fClusterStart flag. Return number of glyphs
11261 produced, not chars processed.
11262 (uniscribe_shape): Map char at FROM to current glyph.
11263
112642008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11265
11266 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
11267 Use SetMenuItemHierarchicalMenu.
11268
112692008-04-05 Jason Rumney <jasonr@gnu.org>
11270
11271 * image.c (pbm_load): Allow color values up to 65535.
11272 Throw an error if max_color_idx is outside the supported range.
11273 Report an error when image size is invalid.
11274 Read two bytes at a time when raw images have max_color_idx above 255.
11275
112762008-04-05 Eli Zaretskii <eliz@gnu.org>
11277
11278 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11279 cFileName a file name that includes `?' characters, use the 8+3
11280 alias in cAlternateFileName instead.
11281
112822008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
11283
11284 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
11285 append "CCL: Quitted" when the CCL program is quitted.
11286 (setup_ccl_program): Initialize ccl->quit_silently to zero.
11287
11288 * ccl.h (struct ccl_program): New member quit_silently.
11289
112902008-04-05 Chong Yidong <cyd@stupidchicken.com>
11291
11292 * search.c (compile_pattern_1): Treat non-nil and non-string of
11293 search-spaces-regexp as nil.
11294
11295 * minibuf.c (Fassoc_string): Tweak docstring.
11296
112972008-04-05 Eli Zaretskii <eliz@gnu.org>
11298
11299 * dired.c (Ffile_attributes): Support inode numbers wider than 32
11300 bits. Remove ugly WINDOWSNT-specific kludge introduced on
11301 2008-03-14 to force inode be positive.
11302
11303 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
11304 _S_* ones, since we now use our own sys/stat.h.
11305 (stat, fstat): Don't mangle the inode number.
11306 (init_user_info): Don't restrict UID and GID to 0-60000 range.
11307
113082008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
11309
11310 * frame.h (struct frame): Give one more bit to `visible' since we use
11311 values larger than 1 to indicate obscured frames on ttys.
11312
11313 * keymap.c (Qkeymap_canonicalize): New var.
11314 (Fmap_keymap_internal): New fun.
11315 (describe_map): Use keymap-canonicalize.
11316
11317 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
11318 (Fundo_boundary): Set them.
11319 (syms_of_undo): Initialize them.
11320 (record_point): Use them instead of last_point_position*.
11321 (last_undo_buffer): Change type.
11322
113232008-04-04 Jason Rumney <jasonr@gnu.org>
11324
11325 * w32font.c (w32font_text_extents): Use font's ascent and descent.
11326 (recompute_cached_metrics): Don't set ascent and descent per char.
11327
11328 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
11329 (uniscribe_check_otf): Add GC protection before consing.
11330 Rearrange loop for counting features.
11331
113322008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
11333
11334 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
11335 buffer with byte-size of source buffer.
11336
113372008-04-03 Chong Yidong <cyd@stupidchicken.com>
11338
11339 * callint.c (Fcall_interactively): Handle temporary region even
11340 when shift-select-mode is off.
11341
113422008-04-03 Jason Rumney <jasonr@gnu.org>
11343
11344 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
11345
113462008-04-03 Kenichi Handa <handa@m17n.org>
11347
11348 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
11349 (CATEGORY_MASK_UTF_16): Likewise.
11350 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
11351 binary file.
11352 (detect_coding): Add null-byte detection for a binary file.
11353 (detect_coding_system): Likewise.
11354
113552008-04-03 Jason Rumney <jasonr@gnu.org>
11356
11357 * w32uniscribe.c: New file.
11358
11359 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
11360
11361 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
11362
11363 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
11364 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
11365 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
11366 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
11367 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
11368 (Qphonetic): New symbols.
11369 (syms_of_w32font): Initialize them.
11370 (font_supported_scripts): Use them.
11371 (w32font_list_family): List all charsets.
11372 (w32font_text_extents, recompute_cached_metrics): Fix metric
11373 calculations.
11374 (w32_enumfont_pattern_entity): Make full_type a DWORD.
11375 Give opentype fonts their own format.
11376 (font_matches_spec): New arguments backend and logfont.
11377 Handle :otf spec for uniscribe backend.
11378 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
11379 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
11380
11381 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
11382 font backend.
11383 (globals_of_w32fns): Initialize uniscribe font backend.
11384
11385 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
11386 dependencies.
11387 (w32uniscribe.$(O)): New file to build.
11388 (FONT_OBJ): Include w32uniscribe.$(O).
11389 (LIBS): Add uniscribe libraries.
11390
11391 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
11392
113932008-04-02 Chong Yidong <cyd@stupidchicken.com>
11394
11395 * callint.c (Vshift_select_mode): New var.
11396 (Finteractive): Document new ^ spec.
11397 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11398 is present.
11399
11400 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11401 (command_loop_1): Avoid running the direct display versions of
11402 forward-char and backward-char if shift-selection may occur.
11403 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11404 shift-translation takes place.
11405
11406 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11407 avoid clobbering by define-minor-mode.
11408
11409 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11410 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11411
11412 * syntax.c (Fforward_word): Add ^ interactive spec.
11413
11414 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11415 (Fscroll_right): Add ^ interactive spec.
11416
114172008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11418
11419 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11420
11421 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11422
11423 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11424
114252008-03-31 Juri Linkov <juri@jurta.org>
11426
11427 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11428
114292008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11430
11431 * gtkutil.c (xg_set_geometry): Fix indentation.
11432 (xg_resize_outer_widget): Remove.
11433 (x_wm_size_hint_off): Fix indentation.
11434 (xg_frame_set_char_size): Call flush_and_sync after
11435 gtk_window_resize.
11436 (x_wm_set_size_hint): Pass NULL as geometry window to
11437 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11438 Add menu bar and tool bar height to base height.
11439 (xg_update_frame_menubar, free_frame_menubar)
11440 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11441 (update_frame_tool_bar, free_frame_tool_bar):
11442 Change xg_resize_outer_widget to xg_frame_set_char_size.
11443
114442008-03-30 Michael Albinus <michael.albinus@gmx.de>
11445
11446 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11447 (Fdbus_call_method): New parameter TIMEOUT.
11448 (dbus-send-signal): Optimize UNGCPRO call.
11449
114502008-03-29 Juri Linkov <juri@jurta.org>
11451
11452 * window.c (Fdisplay_buffer): Move call to
11453 Vsplit_window_preferred_function out of conditions that check
11454 if window is eligible for vertical splitting.
11455 When Vsplit_window_preferred_function is non-nil, call it and use
11456 its non-nil return value as window. Otherwise, continue doing
11457 vertical splitting using Fsplit_window with arg horflag=nil.
11458 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11459 default value from `split-window' to nil.
11460
114612008-03-29 Juri Linkov <juri@jurta.org>
11462
11463 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11464 for interactive code letters 'b' and 'B'.
11465
114662008-03-29 Eli Zaretskii <eliz@gnu.org>
11467
11468 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11469 multibyte string.
11470
114712008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11472
11473 * keyboard.c (pending_funcalls): New var.
11474 (timer_check): Run it.
11475 (syms_of_keyboard): Initialize it.
11476 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11477 (Vdelete_terminal_functions): New vars.
11478 (syms_of_terminal): Initialize them.
11479 (Fdelete_terminal): Run delete-terminal-functions.
11480 * xdisp.c (safe_eval): Rewrite.
11481 (safe_call2): New fun.
11482 * frame.c (Qdelete_frame_functions): New var.
11483 (syms_of_frame): Initialize it.
11484 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11485 * lisp.h (safe_call2, pending_funcalls): Declare.
11486
114872008-03-28 Andreas Schwab <schwab@suse.de>
11488
11489 * indent.c (Fmove_to_column): Move declaration before statements.
11490
114912008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11492
11493 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11494 (struct frame): Use bit fields for boolean vars.
11495
11496 * process.c (server_accept_connection): Simplify naming.
11497 (emacs_get_tty_pgrp): Use SDATA.
11498
11499 * coding.c (decode_coding_object): Fix last change.
11500
115012008-03-27 Jason Rumney <jasonr@gnu.org>
11502
11503 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11504
115052008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11506
11507 * charset.c (Fdefine_charset_internal): Change the way of
11508 registering charsets in Vcharset_order_list.
11509 (syms_of_charset): Make the charset `eight-bit' supplementary.
11510
115112008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11512
11513 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11514 operations, to avoid having the difference between pointers
11515 overflow.
11516
115172008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11518
11519 * indent.c (check_display_width): New fun.
11520 (scan_for_column): Use it.
11521
11522 * data.c (syms_of_data): Mark most-positive-fixnum and
11523 most-negative-fixnum as constants.
11524
11525 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11526
11527 * indent.c (scan_for_column): Extract from current_column_1.
11528 Merge with the same code from Fmove_to_column.
11529 (current_column_1, Fmove_to_column): Use it.
11530
115312008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11532
11533 * keymap.c (map_keymap_internal): New fun.
11534 (map_keymap): Use it.
11535 (Fmap_keymap_internal): New fun.
11536 (Fmap_keymap): Remove left-out test from before make_save_value.
11537
11538 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11539
11540 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11541 Use XCAR/XCDR.
11542
11543 * process.h (struct Lisp_Process): Remove filter_multibyte.
11544 * process.c (QCfilter_multibyte): Remove.
11545 (setup_process_coding_systems): Don't use filter_multibyte.
11546 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11547 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11548 (Fset_process_filter_multibyte): Change the coding-system to
11549 approximate the previous behavior.
11550 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11551 coding-system.
11552
11553 * coding.c (decode_coding_object): When not decoding into a buffer,
11554 obey the coding system's preference of (uni|multi)byte.
11555
115562008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11557
11558 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11559 every char is changed and has a different byte-length.
11560 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11561 Fix int -> EMACS_INT.
11562
115632008-03-23 David Hansen <david.hansen@gmx.net>
11564
11565 * dbusbind.c (xd_read_message): Remove extra copying of message
11566 strings. Check for NULL `interface' or `member'.
11567
115682008-03-22 Eli Zaretskii <eliz@gnu.org>
11569
11570 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11571 cFileName a file name that includes `?' characters, use the 8+3
11572 alias in cAlternateFileName instead.
11573
115742008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11575
11576 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11577
115782008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11579
11580 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11581 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11582 work on current_buffer only instead (that was already the case
11583 for some of the code anyway).
11584 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11585 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11586 (SET_PT, SET_PT_BOTH): Adjust.
11587 * intervals.h (set_point, temp_set_point, set_point_both)
11588 (temp_set_point_both): Remove redundant declarations.
11589
115902008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11591
11592 * fileio.c (Finsert_file_contents):
11593 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11594 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11595 when buffer != current_buffer anyway.
11596
115972008-03-20 Andreas Schwab <schwab@suse.de>
11598
11599 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11600 as default.
11601
116022008-03-19 Jason Rumney <jasonr@gnu.org>
11603
11604 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11605 (syms_of_w32fns): Initialize them.
11606 (HOURGLASS_ID): New constant.
11607 (x_window_to_frame): Don't check hourglass_window.
11608 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11609 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11610 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11611 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11612 Only change the cursor if hourglass is not active.
11613 (Fx_create_frame): Initialize frame's current_cursor.
11614 (hourglass_atimer): Remove.
11615 (hourglass_started): New function.
11616 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11617 (show_hourglass): Adapt to w32, changing argument to frame.
11618
11619 * w32term.h (struct w32_output): Remove hourglass_window.
11620 Add current_cursor.
11621
11622 * eval.c (call_debugger, Fsignal):
11623 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11624 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11625 (Fexecute_extended_command, cancel_hourglass_unwind):
11626 * minibuf.c (read_minibuf):
11627 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11628
116292008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11630
11631 * window.c (run_funs): New fun.
11632 (run_window_configuration_change_hook): Use it to run the buffer-local
11633 and the global part of the hook.
11634
11635 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11636 (unwind_format_mode_line): Restore selected window.
11637 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11638
116392008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11640
11641 * editfns.c (Fchar_equal): Check they are valid characters.
11642
11643 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11644
116452008-03-17 Andreas Schwab <schwab@suse.de>
11646
11647 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11648 against a charset.
11649
11650 * lisp.h (Fbuffer_list): Declare.
11651
116522008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11653
aac0c6e3
MR
11654 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11655 handlebox_widget is != 0.
11656
116572008-03-16 Juri Linkov <juri@jurta.org>
11658
11659 * callint.c (Fcall_interactively): For interactive code letters
11660 'b' and 'B' put the buffer list into the list of default "future"
11661 values of the minibuffer.
11662
116632008-03-16 Andreas Schwab <schwab@suse.de>
11664
11665 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11666 modifiers.
11667
11668 * regex.c (re_match_2_internal): Correct matching of a charset
11669 against latin-1 characters.
11670
116712008-03-16 Kenichi Handa <handa@m17n.org>
11672
11673 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11674 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11675 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11676 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11677 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11678 CHAR_STRING_ADVANCE.
11679 (produce_chars): Fix for the case that the source and the
11680 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11681 instead of CHAR_STRING_ADVANCE.
11682 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11683 STRING_CHAR_ADVANCE.
11684
116852008-03-15 Andreas Schwab <schwab@suse.de>
11686
11687 * regex.c (re_match_2_internal): Correct matching of eight bit
11688 characters in unibyte strings.
11689
116902008-03-15 Martin Rudalics <rudalics@gmx.at>
11691
11692 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11693 at end of range when it coincides with the end of the buffer.
11694
116952008-03-14 Eli Zaretskii <eliz@gnu.org>
11696
11697 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11698
11699 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11700
117012008-03-14 Jason Rumney <jasonr@gnu.org>
11702
11703 * editfns.c (initial_tz): New variable.
11704 (syms_of_editfns): Initialize it.
11705 (Fset_time_zone_rule): Set it when first called.
11706 Use it when TZSTRING is nil.
11707
11708 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11709 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11710 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11711 (globals_of_w32fns): Initialize them.
11712 (compute_tip_xy): Use them to position tooltips.
11713
117142008-03-14 Glenn Morris <rgm@gnu.org>
11715
11716 * emacs.c (main): Revert previous change.
11717 (standard_args): Revert -internal-script back to -scriptload,
11718 and remove the long-option form.
11719
117202008-03-13 Glenn Morris <rgm@gnu.org>
11721
11722 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11723 Remove option -enable-font-backend.
11724
117252008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11726
11727 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11728
117292008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11730
11731 * xterm.c (x_connection_closed): For GTK: If this is the last
11732 terminal just exit without closing the display.
11733
117342008-03-11 Jason Rumney <jasonr@gnu.org>
11735
11736 * w32font.c (w32font_full_name): Use floor to round.
11737
f0131492 117382008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11739
11740 * sound.c (alsa_configure): Declare vol at beginning of block.
11741
11742 * fontset.c (Ffontset_info): Remove extra semicolon.
11743
117442008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11745
11746 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11747 size of resulting string.
11748
117492008-03-10 Jason Rumney <jasonr@gnu.org>
11750
11751 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11752
117532008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11754
11755 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11756 Don't pretend as if characters with display property haven't been
11757 consumed for string-replacing-string case.
11758
117592008-03-08 Kim F. Storm <storm@cua.dk>
11760
11761 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11762 (get_next_display_element, next_element_from_string)
11763 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11764
117652008-03-08 Andreas Schwab <schwab@suse.de>
11766
11767 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11768
117692008-03-06 Jason Rumney <jasonr@gnu.org>
11770
11771 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11772 when charset not specified. Only translate ANSI to unicode when
11773 font_type is truetype.
11774 (w32font_coverage_ok): New function.
11775 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11776
117772008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11778
11779 * lread.c (Fread_char): Resolve modifiers.
11780 (Fread_char_exclusive): Likewise.
11781
11782 * character.c (char_resolve_modifier_mask): New function.
11783 (char_string): Use char_resolve_modifier_mask.
11784 (Fchar_resolve_modifiers): New function.
11785 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11786 function.
11787
117882008-03-04 Jason Rumney <jasonr@gnu.org>
11789
11790 * makefile.w32-in: Always include w32font.c in the build.
11791 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11792
117932008-03-04 Andreas Schwab <schwab@suse.de>
11794
11795 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11796 (versionclean): Likewise.
11797
117982008-03-04 Juanma Barranquero <lekktu@gmail.com>
11799
11800 * .cvsignore: Add oo.
11801
118022008-03-03 Andreas Schwab <schwab@suse.de>
11803
11804 * coding.c (decode_coding_object): Inhibit gap shrinking while
11805 decoding in place.
11806
118072008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11808
11809 * w32term.c: Remove unused include "gnu.h".
11810 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11811
11812 * gnu.h: Rename to ...
11813 * emacs-icon.h: ... this.
11814 * xterm.c: Use emacs-icon.h instead of gnu.h.
11815 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11816
118172008-03-03 Juanma Barranquero <lekktu@gmail.com>
11818
11819 * w32font.c: Include math.h.
11820
118212008-03-03 Jason Rumney <jasonr@gnu.org>
11822
11823 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11824 Compute options separately.
11825 (w32font_open_internal): Set glyph_idx before caching metrics.
11826
11827 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11828 Define if system headers don't.
11829 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11830 (w32font_encode_char): Don't declare here.
11831
11832 * w32font.c (Quniscribe, QCformat): New symbols.
11833 (syms_of_w32font): Define them.
11834 (w32font_has_char): Indicate uncertainty.
11835 (w32font_encode_char): Encode as glyph point. Make static.
11836 (recompute_cached_metrics): New function.
11837 (w32font_open_internal): Use it. Set font to use glyph points
11838 initially. Set format based on type of font.
11839 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11840 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11841 on it. Set format based on information available here.
11842 (add_font_entity_to_list): Identify backend based on opentype_only.
11843
118442008-03-02 Andreas Schwab <schwab@suse.de>
11845
11846 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11847
11848 * coding.c (decode_coding_big5, produce_chars):
11849 Fix typos in last change.
11850
118512008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11852
11853 * gnu.h: New icon.
11854
118552008-03-02 Kenichi Handa <handa@m17n.org>
11856
11857 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11858 `dos', don't decode '\r' if that is the last in the source.
11859 (decode_coding_utf_16, decode_coding_emacs_mule)
11860 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11861 (decode_coding_raw_text, decode_coding_charset): Likewise.
11862 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11863
118642008-03-01 Jason Rumney <jasonr@gnu.org>
11865
11866 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11867
118682008-03-01 Kim F. Storm <storm@cua.dk>
11869
11870 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11871
118722008-03-01 Jason Rumney <jasonr@gnu.org>
11873
11874 * w32font.c (w32font_full_name): New function.
11875 (w32font_open_internal): Use it.
11876
118772008-03-01 Kim F. Storm <storm@cua.dk>
11878
11879 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11880
118812008-03-01 Jason Rumney <jasonr@gnu.org>
11882
11883 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11884
118852008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11886
11887 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11888 xg_frame_resized when the event is for the edit widget.
11889
11890 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11891
11892 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11893 set_char_size.
11894 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11895 operations on widgets here. Just set frame size if needed.
11896 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11897 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11898 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11899 the whole frame.
11900 (xg_create_tool_bar): Move attachment of the tool bar to
11901 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11902 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11903
119042008-03-01 Jason Rumney <jasonr@gnu.org>
11905
11906 * w32fns.c (w32_msg_pump): Disable debug code.
11907
119082008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11909
11910 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11911
119122008-02-29 Chong Yidong <cyd@stupidchicken.com>
11913
11914 * xdisp.c (next_overlay_string): Don't set
11915 overlay_strings_at_end_processed_p if we're currently reading from
11916 a display string.
11917
119182008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11919
11920 * xdisp.c (get_overlay_strings_1): Fix typo.
11921
119222008-02-29 Chong Yidong <cyd@stupidchicken.com>
11923
11924 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11925
119262008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11927
11928 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11929
11930 * xdisp.c (display_mode_element): Cancel the previous change.
11931 (decode_mode_spec): Likewise.
11932 (handle_auto_composed_prop): Don't make composition if it->string
11933 is a string.
11934
119352008-02-27 Kim F. Storm <storm@cua.dk>
11936
11937 * lisp.h (GLYPH): Change type from int to struct with separate char
11938 and face_id members.
11939 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11940 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11941 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11942 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11943 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11944 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11945 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11946 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11947 handle new Lisp glyph code encoding, either an integer or a cons.
11948
11949 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11950 (GLYPH_ALIAS): Delete.
11951 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11952 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11953 (GLYPH_FROM_CHAR): Replace macro by ...
11954 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11955
11956 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11957 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11958 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11959 (GLYPH_INVALID_P): New macro.
11960 (spec_glyph_lookup_face): Update prototype.
11961
11962 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11963 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11964 new glyph code encoding.
11965 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11966 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11967
11968 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11969 Adapt to new glyph type and new glyph code encoding.
11970
11971 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11972
11973 * indent.c (current_column, current_column_1, Fmove_to_column)
11974 (compute_motion): Adapt to new glyph code encoding.
11975
11976 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11977
119782008-02-27 Chong Yidong <cyd@stupidchicken.com>
11979
11980 * process.c (wait_reading_process_output): Check for window
11981 changes caused by timers.
11982 Suggested by Johan Bockgård.
11983
119842008-02-27 Glenn Morris <rgm@gnu.org>
11985
11986 * emacs.c (USAGE1): Add `--disable-font-backend'.
11987
119882008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11989
11990 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11991 is made to the buffer.
11992
119932008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11994
11995 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11996 (face_at_string_position):
11997 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11998 (face_at_string_position):
11999 * xdisp.c (display_string, next_overlay_change):
12000 * buffer.h (overlays_at):
12001 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
12002 Update callers.
12003
120042008-02-26 Chong Yidong <cyd@stupidchicken.com>
12005
12006 * editfns.c (Fformat): Doc fix.
12007
120082008-02-26 Juanma Barranquero <lekktu@gmail.com>
12009
12010 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
12011 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
12012 (Ffont_otf_alternates, Fquery_font): Doc fixes.
12013
120142008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
12015
12016 * buffer.c (Fbuffer_swap_text): New function.
12017 (syms_of_buffer): Defsubr it.
12018
120192008-02-25 Chong Yidong <cyd@stupidchicken.com>
12020
12021 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
12022
120232008-02-25 Jason Rumney <jasonr@gnu.org>
12024
12025 * w32font.c (w32font_draw): Draw one character at a time when padding.
12026
120272008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
12028
12029 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
12030 Handle a nil arg. Use run_window_configuration_change_hook.
12031 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
12032 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
12033 Use run_window_configuration_change_hook.
12034
120352008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12036
12037 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
12038 1-pixel width.
12039
120402008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12041
12042 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
12043 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
12044 if the glyph in the font is zero pixel with.
12045
12046 * dispextern.h (struct glyph_string): New member padding_p.
12047
12048 * w32font.c (w32font_draw): Pay attention to s->padding_p.
12049
12050 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
12051
12052 * xfont.c (xfont_draw): Pay attention to s->padding_p.
12053
12054 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
12055
12056 * font.c: If the font driver doesn't have `shape' function, return Qnil.
12057
120582008-02-25 Jason Rumney <jasonr@gnu.org>
12059
12060 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
12061
120622008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
12063
12064 Allow fine-grained image-cache flushing.
12065 * dispextern.h (struct image): Add `dependencies' field.
12066 (clear_image_caches): Change arg to Lisp_Object.
12067 * image.c (make_image): Initialize `dependencies' field.
12068 (clear_image_cache): Change arg to allow fine-grained flushing.
12069 Perform the flush even if image-cache-eviction-delay is nil.
12070 (clear_image_caches): Change arg to Lisp_Object.
12071 (Fclear_image_cache): Expand meaning of the argument.
12072 (mark_image): Mark `dependencies' field.
12073 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
12074 (lface_hash): Use XHASH rather than XFASTINT.
12075 (face_at_buffer_position): Fix int -> EMACS_INT position.
12076 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
12077 (select_frame_for_redisplay): Remove code duplication.
12078 (redisplay_internal): Adapt arg to call to clear_image_caches.
12079
120802008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
12081
12082 * s/vms4-0.h:
12083 * s/vms4-2.h:
12084 * s/vms4-4.h:
12085 * s/vms5-5.h: Remove, unused.
12086
12087 * s/irix5-2.h:
12088 * s/irix6-0.h:
12089 * s/riscos5.h:
12090 * s/mach-bsd4-3.h:
12091 * m/mips4.h: Remove files for obsolete systems.
12092
12093 * Makefile.in:
12094 * filelock.c:
12095 * unexmips.c:
12096 * m/hp9000s300.h:
12097 * m/iris4d.h:
12098 * s/aix3-1.h:
12099 * s/hpux.h:
12100 * s/msdos.h:
12101 * s/usg5-0.h:
12102 * s/usg5-2-2.h:
12103 * s/usg5-2.h:
12104 * s/usg5-3.h: Remove references to obsolete variables.
12105
12106 * s/irix5-0.h: Remove, move all the contents ...
12107 * s/irix6-5.h: ... here. Simplify.
12108 * config.in: Regenerate.
12109
121102008-02-24 Jason Rumney <jasonr@gnu.org>
12111
12112 * w32term.c (x_draw_glyph_string_background): Clear the background
12113 manually when cleartype is in use.
12114 (x_draw_glyph_string_foreground): Draw text transparently when
12115 cleartype is in use.
12116
12117 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
12118 a font into it unless we have to.
12119
121202008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12121
12122 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
12123 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 12124
aac0c6e3
MR
121252008-02-18 Jason Rumney <jasonr@gnu.org>
12126
12127 * w32fns.c (Fw32_shell_execute): Encode parameters.
12128
121292008-02-09 Eli Zaretskii <eliz@gnu.org>
12130
12131 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
12132
121332008-02-05 Juanma Barranquero <lekktu@gmail.com>
12134
12135 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
12136
121372008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
12138
12139 * xterm.c (x_set_offset): Don't change the gravity if
12140 CHANGE_GRAVITY is -1.
12141
121422008-02-23 Chong Yidong <cyd@stupidchicken.com>
12143
12144 * fileio.c (auto_save_error_occurred): New var.
12145 (auto_save_error): Set it.
12146 (Fdo_auto_save): Don't overwrite the error message if an auto-save
12147 error occurred.
12148
121492008-02-23 Eli Zaretskii <eliz@gnu.org>
12150
12151 * w32.c (globals_of_w32): Add initializations for
12152 g_b_init_get_sid_sub_authority and
12153 g_b_init_get_sid_sub_authority_count.
12154
121552008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
12156
12157 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
12158 (font_parse_xlfd): Use them for sanity check.
12159 (Finternal_set_font_style_table): Make sure the table is bijective.
12160
12161 Consolidate the image_cache to the terminal struct.
12162 * termhooks.h (P_): Remove redundant def.
12163 (struct terminal): New field `image_cache'.
12164 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
12165 of FRAME_X_IMAGE_CACHE.
12166 * xterm.h (struct x_display_info): Remove image_cache field.
12167 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12168 * w32term.h (struct w32_display_info): Remove image_cache field.
12169 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12170 * macterm.h (struct mac_display_info): Remove image_cache field.
12171 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12172 * xterm.c (x_term_init):
12173 * w32term.c (w32_term_init):
12174 * macterm.c (mac_term_init): Set the image_cache in the terminal.
12175 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
12176 Remove declarations.
12177 (clear_image_caches, mark_image_cache): New declarations.
12178 * xfaces.c (clear_face_cache):
12179 * xdisp.c (redisplay_internal): Use clear_image_caches.
12180 * image.c (clear_image_cache): Don't check that a frame is on
12181 a window-system before checking if it shares the same cache.
12182 (clear_image_caches): New function.
12183 (Fclear_image_cache): Use it.
12184 (mark_image): Move from allo.c.
12185 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
12186 * alloc.c (mark_image, mark_image_cache): Move to image.c.
12187 (mark_object): Don't call mark_image_cache for frames.
12188 (mark_terminals): Call mark_image_cache.
12189
12190 * lisp.h (Fdelete_terminal): Declare.
12191
12192 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
12193 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
12194 wrong_type_argument.
12195
121962008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
12197
12198 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
12199 malayalam.el, and tamil.el. Add sinhala.el.
12200
122012008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
12202
12203 * xterm.c (x_connection_closed): Consolidate identical tests.
12204 (x_delete_terminal): Don't crash if called via x_connection_closed.
12205
122062008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
12207
12208 * xdisp.c (decode_mode_spec): New arg string.
12209 (display_mode_element): Adjust for the above change.
12210
122112008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12212
12213 * callint.c (Fcall_interactively): Use AREF.
12214
122152008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
12216
12217 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
12218
122192008-02-18 Jan Djärv <jan.h.d@swipnet.se>
12220
12221 * xfns.c (Fx_show_tip): Set string to " " if empty.
12222
122232008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
12224
12225 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
12226 with Qt.
12227
122282008-02-17 Kenichi Handa <handa@m17n.org>
12229
12230 * ftfont.c (ftfont_shape): Return Lispy number.
12231
12232 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
12233 for GCs.
12234 (Finternal_set_font_selection_order): Call font_update_sort_order
12235 only when enable_font_backend is set.
12236 (realize_x_face): Set face->font_info to that of default face only
12237 when enable_font_backend is set.
12238
12239 * xdisp.c (handle_composition_prop): Set it->c to the fist
12240 character of the composed region.
12241 (fill_composite_glyph_string): Set base_face->font_info to
12242 s->font_info. Get a face for ascii from base_face->ascii_face.
12243 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
12244 with a face already decided.
12245 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
12246 non-negative.
12247 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
12248 call font_prepare_composition unconditionally.
12249
12250 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
12251
12252 * xterm.h (struct x_display_info): New member font.
12253
12254 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
12255 (x_set_mouse_face_gc, x_new_font): Likewise.
12256 (x_term_init): Setup display_info->font.
12257 (x_delete_terminal): Free display_info->font.
12258
12259 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
12260
12261 * ftxfont.c (ftxfont_default_fid): Delete it.
12262 (ftxfont_open): Set xfont->fid to 0.
12263 (ftxfont_end_for_frame): Clear data specific to the frame and the
12264 font-driver.
12265
12266 * xftfont.c (xftfont_default_fid): Delete it.
12267 (xftfont_open): Set xfont->fid to 0.
12268
12269 * fontset.c (FONTSET_OBJLIST): New macro.
12270 (fontset_find_font): Update font-object list of the fontset.
12271 (free_realized_fontset): New function.
12272 (free_face_fontset): Call free_realized_fontset.
12273 (Ffont_info): Call font_close_object only when enable_font_backend
12274 is set.
12275
12276 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
12277 [HAVE_NTGUI]: Include w32term.h.
12278 [MAC_OS]: Include macterm.ch.
12279 (font_otf_ValueRecord): Use make_number.
12280 (font_finish_cache): Fix handling of reference count.
12281 (font_clear_cache): Update num_fonts.
12282 (font_open_entity): Update smallest_char_width and
12283 smallest_font_height of the frame.
12284 (font_close_object): Update num_fonts.
12285 (Fclear_font_cache): Fix finding the target cache data.
12286
122872008-02-16 Glenn Morris <rgm@gnu.org>
12288
12289 * fontset.c (Finternal_char_font): Fix compilation warning.
12290
122912008-02-16 Eli Zaretskii <eliz@gnu.org>
12292
12293 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
12294 instead of char arrays. Enlarge the size of array passed to
12295 get_token_information.
12296
12297 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
12298 warnings.
12299
123002008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
12301
12302 * .gdbinit: Don't set `args', it breaks gdb --args.
12303
123042008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
12305
12306 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
12307 within a narrowed buffer.
12308
123092008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
12310
12311 * coding.c (decode_coding_object, encode_coding_object):
12312 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
12313
123142008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
12315
12316 * coding.c (coding_set_destination): Use BEG_BYTE rather than
12317 hardcoding 1.
12318 (detect_coding_system):
12319 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
12320 (string_char_to_byte, string_byte_to_char, insert_from_gap):
12321 * insdel.c (insert_from_gap):
12322 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
12323 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
12324 (string_to_multibyte):
12325 * character.c (chars_in_text, multibyte_chars_in_text):
12326 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
12327
12328 * character.h (FETCH_STRING_CHAR_ADVANCE)
12329 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
12330 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
12331 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
12332
12333 * casefiddle.c (casify_region): Only call after-change and composition
12334 functions on the part of the region that was changed.
12335
12336 * keyboard.c (read_avail_input):
12337 * frame.c (Fdelete_frame): Call Fdelete_terminal.
12338
123392008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12340
12341 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
12342 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
12343
123442008-02-11 Juanma Barranquero <lekktu@gmail.com>
12345
12346 * w32menu.c (push_submenu_start, push_submenu_end)
12347 (push_left_right_boundary, push_menu_pane, push_menu_item):
12348 * keyboard.c (read_key_sequence): Don't pass args with side effects
12349 to AREF, it fails when compiling with -DENABLE_CHECKING.
12350
123512008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
12352
12353 * Makefile.in (${lispsource}international/charprop.el):
12354 Delete this target.
12355
12356 * search.c (boyer_moore): Fix incorrect synching of the trunk and
12357 emacs-unicode-2.
12358
123592008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12360
12361 * terminal.c (Fdelete_terminal): Clean up the `force' path.
12362
123632008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12364
12365 * frame.c (Qnoelisp): New symbol.
12366 (syms_of_frame): Initialize it.
12367 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
12368 harmless Elisp code, from a strong `force' from x_connection_closed.
12369 * frame.h (Qnoelisp): Declare.
12370 * xterm.c (x_connection_closed): Pass `noelisp'.
12371
12372 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
12373 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
12374 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
12375 rather than `int' for the type of `type'.
12376
123772008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
12378
12379 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
12380
12381 * Makefile.in (GNUC): Remove support for gcc-1.x.
12382
123832008-02-10 Richard Stallman <rms@gnu.org>
12384
12385 * lisp.h (ASET): Use AREF, not ASLOT.
12386
123872008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12388
12389 * lisp.h (ASET): Check bounds.
12390
123912008-02-10 Glenn Morris <rgm@gnu.org>
12392
12393 * buffer.c (mode-name): Doc fix.
12394
123952008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12396
12397 * Makefile.in:
12398 * emacs.c:
12399 * gmalloc.c:
12400 * keyboard.c:
12401 * lisp.h:
12402 * m/ibm370aix.h:
12403 * process.c:
12404 * regex.c:
12405 * s/hpux.h:
12406 * sysdep.c:
12407 * sysselect.h:
12408 * systty.h:
12409 * unexec.c:
12410 * w32term.c:
12411 * xsmfns.c:
12412 * xterm.c: Remove code that deals with obsolete variables.
12413
12414 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12415
12416 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12417 nothing else needs it anymore.
12418
124192008-02-09 Eli Zaretskii <eliz@gnu.org>
12420
12421 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12422 instead of unibyte_char_to_multibyte.
12423
124242008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12425
12426 * s/gnu-linux.h: Remove commented out code.
12427
12428 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12429
12430 * Makefile.in: Update what RMS says about using autoconf.
12431 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12432 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12433 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12434 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12435
124362008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12437
12438 * keymap.c (Fkey_description): Move side effect outside of macro call.
12439
12440 * xfaces.c (Finternal_make_lisp_face):
12441 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12442
12443 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12444 (syms_of_fontset): Use ASET.
12445
12446 * fns.c (concat): Move side effect outside of macro call.
12447 (hash_clear): Use ASET.
12448
124492008-02-08 Richard Stallman <rms@gnu.org>
12450
12451 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12452 If FORCE, and frame has a surrogate minibuffer for another frame,
12453 delete the other frame first.
12454
124552008-02-07 Timo Savola <timo.savola@iki.fi>
12456
12457 * xterm.c (x_detect_focus_change): Handle embed client message.
12458 (handle_one_xevent): Ditto.
12459 (handle_one_xevent): If embedded and we get a button press/release,
12460 request focus.
12461 (xembed_set_info, xembed_send_message): New functions.
12462 (x_make_frame_visible): Call xembed_set_info if embedded.
12463 (x_make_frame_invisible): Call xembed_set_info if embedded.
12464 (x_term_init): Initialize Xatom_XEMBED.
12465 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12466 (x_iconify_frame): Ditto.
12467
12468 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12469 (enum xembed_info, enum xembed_message, enum xembed_focus)
12470 (enum xembed_modifier, enum xembed_accelerator): New.
12471 (xembed_set_info, xembed_send_message): Declare.
12472 (FRAME_X_EMBEDDED_P): New.
12473
12474 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12475 gtk_plug_new.
12476
12477 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12478 window ID of a frame.
12479 (x_window): Reparent frame if embedded.
12480 (Fx_create_frame): Don't set border width if embedded.
12481
12482 * emacs.c (USAGE3): Add --parent-id.
12483 (standard_args): Ditto.
12484
124852008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12486
12487 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12488
124892008-02-07 Jim Meyering <meyering@redhat.com>
12490
12491 Use "do...while (0)", not "if (1)...else" in macro definitions.
12492 The latter provokes a warning from gcc about the empty else, when
12493 followed by ";". Also, without that trailing semicolon, it would
12494 silently swallow up any following statement.
12495 * syntax.h (SETUP_SYNTAX_TABLE)
12496 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12497 * buffer.h (DECODE_POSITION): Likewise.
12498 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12499 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12500 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12501 (FETCH_CHAR_ADVANCE): Likewise.
12502 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12503
125042008-02-07 Jim Meyering <meyering@redhat.com>
12505
12506 * lread.c [lint]: Don't include <sys/inode.h>.
12507
125082008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12509
12510 * xselect.c (x_handle_dnd_message):
12511 * xmenu.c (digest_single_submenu, xmenu_show):
12512 * xdisp.c (with_echo_area_buffer_unwind_data)
12513 (format_mode_line_unwind_data, unwind_format_mode_line)
12514 (display_menu_bar):
12515 * eval.c (Ffetch_bytecode):
12516 * doc.c (store_function_docstring):
12517 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12518 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12519 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12520
125212008-02-07 Kenichi Handa <handa@m17n.org>
12522
12523 * ftxfont.c (ftxfont_open): Don't set
12524 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12525
12526 * ftfont.c (ftfont_open): Fix previous change.
12527
125282008-02-06 Jason Rumney <jasonr@gnu.org>
12529
12530 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12531 Use cached metrics for ASCII characters.
12532 (w32font_open_internal): Don't set font's owning_frame.
12533 Cache metrics for ASCII characters.
12534
12535 * w32font.h (struct w32font_info): Add ascii_metrics.
12536 Remove owning_frame.
12537
125382008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12539
12540 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12541 to negative value.
12542
12543 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12544
12545 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12546
12547 * charset.c (syms_of_charset): Set QCtest and Qeq.
12548
125492008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12550
12551 * process.c (Fstart_process):
12552 * callproc.c (Fcall_process): Handle the case where
12553 Funhandled_file_name_directory returns nil.
12554
12555 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12556 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12557 * font.c (check_gstring): Use them and AREF to access the vector before
12558 we know it's really a gstring.
12559 (Ffont_shape_text): Fix typo.
46e722a9 12560 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
12561
12562 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12563 Declare.
12564
12565 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12566
125672008-02-05 Jason Rumney <jasonr@gnu.org>
12568
12569 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12570 Set smallest_font_height and smallest_char_width in display info.
12571
125722008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12573
12574 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12575
125762008-02-05 Miles Bader <miles@gnu.org>
12577
12578 * xfaces.c (get_lface_attributes, merge_named_face)
12579 (lookup_named_face, lookup_derived_face, realize_named_face):
12580 Revert 2008-02-01 change by cyd@stupidchicken.com.
12581
125822008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12583
12584 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12585 fallback fonts.
12586 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12587
125882008-02-04 Jason Rumney <jasonr@gnu.org>
12589
12590 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12591 set full_name.
12592 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12593
125942008-02-03 Jason Rumney <jasonr@gnu.org>
12595
12596 * makefile.w32-in (OBJ1): Include font.o here.
12597 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12598
125992008-02-02 Jason Rumney <jasonr@gnu.org>
12600
12601 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12602
126032008-02-01 Jason Rumney <jasonr@gnu.org>
12604
12605 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12606
12607 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12608
126092008-02-01 Andreas Schwab <schwab@suse.de>
12610
12611 * Makefile.in (shortlisp, lisp): Update for rename of
12612 ../lisp/language/myanmar.el.
12613
126142008-02-01 Chong Yidong <cyd@stupidchicken.com>
12615
12616 * xfaces.c (get_lface_attributes): Delete function.
12617 (merge_named_face, lookup_named_face, lookup_derived_face)
12618 (realize_named_face): Call lface_from_face_name directly, and use
12619 the fact that merge_face_vectors does not alter its FROM argument.
12620
126212008-02-01 Jason Rumney <jasonr@gnu.org>
12622
12623 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12624 input in the default locale. Handle non-Unicode multibyte input.
12625
126262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12627
12628 * fontset.c (reorder_font_vector): Exclude nil elements from the
12629 font group. Don't try multiple fonts.
12630 (fontset_font): Adjust for the above change.
12631 (Finternal_char_font): Return nil if the found font doesn't
12632 contain the character ch.
12633
12634 * Makefile.in (lisp, shortlisp): Add cham.el.
12635
126362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12637
12638 * font.h (FONTP): Make it return 1 also for a font-object.
12639
12640 * .gdbinit (xfontset): New function.
12641
12642 * font.c (font_find_for_lface): Check if the character C is
12643 supported or not only for the first font.
12644
12645 * fontset.c (reorder_font_vector): Fix typo.
12646 (fontset_find_font): Don't add a font-spec specifying a script.
12647 Use 0 (not Qt) for the indication of empty font-group. Change the
12648 format of RFONT-DEF. Return Qt if no font in the font-group
12649 support the character.
12650 (fontset_font): Adjust for the above change. If no font was
12651 found the character, remember that.
12652 (face_for_char): Adjust for the change of RFONT-DEF.
12653 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12654 no font for the target.
12655 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12656
126572008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12658
12659 * font.c (font_load_for_face): Handle the case that the font in
12660 face->lface is a string.
12661
126622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12663
12664 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12665
126662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12667
12668 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12669 Fix previous change. If the frame is not on a window system,
12670 signal an error.
12671
126722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12673
12674 * coding.c (decode_coding_object, encode_coding_object): Adjust
12675 marker positions after conversion.
12676
12677 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12678
126792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12680
12681 * font.c (font_find_for_lface): Fix the handling of the return
12682 value of font_has_char.
12683 (Ffont_shape_text): Fix previous change.
12684
12685 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12686 (fontset_ref_and_range): Delete it.
12687 (fontset_find_font): Call char_table_ref_and_range instead of
12688 FONTSET_REF_AND_RANGE.
12689 (make_fontset): Don't setup font groups of Latin here.
12690 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12691 (new_fontset_from_font): Make the specified font the default for
12692 all Latin characters.
12693
126942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12695
12696 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12697 is on a window system before accessing the fontset of the frame.
12698
126992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12700
12701 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12702
12703 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12704 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12705
12706 * font.c (Ffont_shape_text): If the font driver doesn't have a
12707 shaper function, make zero-width glyphs to have at least one-pixel
12708 width. Fix setting of `to' field of glyphs.
12709
127102008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12711
12712 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12713 glyphs.
12714
12715 * font.h (struct font_driver): Improve docstring of member `shape'.
12716
127172008-02-01 Kenichi Handa <handa@m17n.org>
12718
12719 * composite.c (syms_of_composite): Fix docstring of
12720 auto-composition-function.
12721
12722 * font.h (LGLYPH_SIZE): New macro.
12723
12724 * font.c (Ffont_fill_gstring): Stop filling when a character not
12725 supported by the font is found.
12726 (Ffont_shape_text): When a shape callback function returns nil,
12727 try at most two more times with larger gstring.
12728 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12729
12730 * xdisp.c (handle_auto_composed_prop): Change the argument to
12731 auto-composition-function.
12732
12733 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12734 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12735 Lispy glyph and store it in the lgstring.
12736
12737 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12738
12739 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12740
127412008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12742
12743 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12744
12745 * fontset.c (Vfont_encoding_charset_alist): New variable.
12746 (syms_of_fontset): DEFVAR it.
12747 (reorder_font_vector, fontset_find_font): Optimize for the case of
12748 no need of reordering.
12749 (face_for_char): Map the charset property by
12750 Vfont_encoding_charset_alist.
12751
127522008-02-01 Jason Rumney <jasonr@gnu.org>
12753
12754 * w32font.c (logfonts_match): Don't check adstyle here.
12755 (font_matches_spec): Check here against physical font instead.
12756 (add_font_entity_to_list): Avoid some substitutions.
12757
12758 * font.c (font_parse_fcname): Default weight and slant to normal.
12759 (font_score): Prefer normal fonts if weight or slant unspecified.
12760 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12761 match freetype scores.
12762
127632008-02-01 Jason Rumney <jasonr@gnu.org>
12764
12765 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12766 font, as it may have been deleted.
12767 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12768 most common hyphenless variation.
12769 (logfonts_match): Check generic family.
12770 (font_matches_spec): Don't check generic family here.
12771 (fill_in_logfont): Set generic family based on adstyle.
12772
12773 * w32font.h (w32font_get_cache): Update declaration.
12774
127752008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12776
12777 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12778
12779 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12780 If none of the new drivers are available, call font_update_drivers
12781 with the old drivers.
12782
12783 * w32font.c (w32font_get_cache): Adjust the argument type.
12784
12785 * xfont.c (xfont_get_cache): Adjust the argument type.
12786
12787 * font.h (struct font_driver): Change argument type of get_cache.
12788
12789 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12790
12791 * font.c (Ffont_get): Fix arguments to Fassoc.
12792 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12793 (font_clear_cache): New function.
12794 (font_list_entities, font_matching_entity): Use font_get_cache.
12795 (font_update_drivers): Call font_clear_cache when finishing a driver.
12796
12797 * fontset.c (fontset_find_font): Fix previous change.
12798
127992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12800
12801 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12802 dpyinfo->font_table.
12803 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12804 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12805
12806 * font.c (font_at): Handle the case that the arg C is negative.
12807 Handle the unibyte case.
12808 (Ffont_at): Call font_at with the arg C -1.
12809
12810 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12811 the position here, and call font_at with the arg C -1.
12812 Don't check the range of the existing composition at the point.
12813
128142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12815
12816 * fontset.c (fontset_add): New args charset_id and family.
12817 Change caller.
12818 (load_font_get_repertory, fontset_find_font): Assume that
12819 font_spec is always a font-spec object.
12820 (Fset_fontset_font): Always store a font-spec object in a fontset.
12821
12822 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12823 instead of get_property_and_range.
12824
128252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12826
12827 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12828 (xftfont_open): Don't keep locking face.
12829 (xftfont_close): Don't unlock face.
12830 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12831
12832 * fontset.c (fontset_find_font): Don't prefer a font of
12833 supplementary charset.
12834
128352008-02-01 Kenichi Handa <handa@m17n.org>
12836
12837 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12838 script, langsys_tag to langsys, new member script.
12839 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12840 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12841 listing to the script specified in that property. Fix arg to
12842 OTF_check_features.
12843
128442008-02-01 Jason Rumney <jasonr@gnu.org>
12845
12846 * w32font.h: New file.
12847
12848 * w32font.c: Include it.
12849 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12850 (w32font_open): Set owning_frame.
12851 (w32font_text_extents): Use owning_frame.
12852 (struct font_callback_data): Add opentype_only field.
12853 (add_font_entity_to_list): Use it to filter fonts.
12854 Don't check against full name.
12855 (w32font_list_internal): New function.
12856 (w32font_list): Use it.
12857 (w32font_match_internal): New function.
12858 (w32font_match): Use it.
12859 (w32font_open_internal): New function.
12860 (w32font_open): Use it.
12861 (w32font_get_cache, w32font_close, w32font_has_char)
12862 (w32font_encode_char, w32font_text_extents, w32font_draw):
12863 Make non-static.
12864
12865 * makefile.w32-in (w32font.o): Depend on w32font.h.
12866
128672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12868
12869 * charset.c (Fdefine_charset_internal): Record a supplementary
12870 charset at the tail of Vcharset_order_list.
12871
12872 * font.c (Ffont_shape_text): Fix the return value.
12873
12874 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12875
12876 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12877
128782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12879
12880 * ftfont.c (struct OpenTypeSpec): New struct.
12881 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12882 (ftfont_get_open_type_spec): New function.
12883 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12884
12885 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12886
128872008-02-01 Jason Rumney <jasonr@gnu.org>
12888
12889 * w32font.c (add_font_entity_to_list): Compare only the beginning
12890 of full name.
12891
128922008-02-01 Kenichi Handa <handa@m17n.org>
12893
12894 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12895 Never return HANDLED_RECOMPUTE_PROPS.
12896
128972008-02-01 Kenichi Handa <handa@m17n.org>
12898
12899 * font.c (font_gstring_produce): Delete it.
12900
12901 * composite.h (COMPOSITION_METHOD):
12902 Handle COMPOSITION_WITH_GLYPH_STRING.
12903
129042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12905
12906 * xfont.c (Qx): Delete.
12907 (syms_of_xfont): Don't initialize Qx.
12908
12909 * composite.h (enum composition_method):
12910 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12911
129122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12913
12914 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12915 (choose_face_font): Accept new form of font-spec.
12916
12917 * frame.h (font_driver_list): Declare it unconditionally.
12918 (struct frame): Define members font_driver_list and font_data_list
12919 unconditionally.
12920
12921 * fontset.c: Include "font.h" unconditionally.
12922 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12923 (Fset_fontset_font): Accept a font-spec object.
12924
12925 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12926 PIXEL_SIZE part a wild card.
12927
12928 * dispextern.h (struct glyph_string): Define members clip and
12929 num_clips unconditionally.
12930 (struct face): Define members font_info and extra unconditionally.
12931
12932 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12933 ftfont_info only when HAVE_LIBOTF is defined.
12934
129352008-02-01 Andreas Schwab <schwab@suse.de>
12936
12937 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12938 and end.
12939
129402008-02-01 Jason Rumney <jasonr@gnu.org>
12941
12942 * w32font.c (w32font_driver): Add new fields.
12943
129442008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12945
12946 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12947 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12948 (LIBES): Add @M17N_FLT_CFLAGS@.
12949
12950 * composite.c (compose_text): Don't treat the new style
12951 composition specially.
12952
12953 * emacs.c (main): Call syms_of_font unconditionally.
12954
12955 * font.h (FONT_ENTITY_NOT_LOADABLE)
12956 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12957 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12958 (struct font_driver): New member shape.
12959 (font_registry_charsets): Extern it.
12960 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12961 (font_otf_capability, font_drive_otf): Delete their externs.
12962
12963 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12964 (font_charset_alist, font_registry_charsets): Move from xfont.c
12965 and rename.
12966 (font_prop_validate_otf): New function.
12967 (font_property_table): Register it for QCotf.
12968 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12969 (font_drive_otf): Delete.
12970 (font_prepare_composition): New arg F. Adjust for the change of
12971 lispy gstring.
12972 (font_find_for_lface): New arg C.
12973 (font_load_for_face): Adjust for the change of font_find_for_lface.
12974 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12975 lispy gstring.
12976 (Ffont_shape_text): New function.
12977 (Fopen_font): If the font size is not given, use 12-pixel.
12978 (Ffont_at): New arg STRING.
12979 (syms_of_font): Initalize font_charset_alist.
12980 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12981 conditionally.
12982
12983 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12984 fonts of the same font-spec. Change the format of RFONT-DEF.
12985 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12986 Adjust for the change of RFONT-DEF.
12987 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12988
12989 * ftfont.h: New file.
12990
12991 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12992 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12993 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12994 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12995 font_otf_capability and font_drive_otf, set ftfont_shape.
12996 (ftfont_list): Adjust for the change of :otf property value.
12997 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12998 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12999 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
13000 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
13001 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
13002 (otf_gstring, gstring, m17n_flt_initialized): New variables.
13003
13004 * w32term.c (x_draw_composite_glyph_string_foreground):
13005 Adjust for the change of lispy gstring.
13006
13007 * xdisp.c (handle_composition_prop): Adjust for the change of
13008 lispy gstring. Call a function for auto-composition with the
13009 third arg it->window.
13010 (fill_composite_glyph_string): Adjust for the change of lispy string.
13011 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
13012
13013 * xfaces.c (set_font_frame_param): Adjust for the change of
13014 font_find_for_lface.
13015
13016 * xfont.c (x_font_charset_alist): Move to font.c and rename.
13017 (xfont_registry_charsets): Likewise. Change caller.
13018 (syms_of_xfont): Don't handle x_font_charset_alist.
13019
13020 * xftfont.c: Include "ftfont.h".
13021 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
13022 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
13023 (xftfont_close) [HAVE_LIBOTF]: Close otf.
13024 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
13025 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
13026 Set xftfont_driver.shape to xftfont_shape.
13027
13028 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
13029 the change of lispy gstring.
13030
130312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13032
13033 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
13034
130352008-02-01 Jason Rumney <jasonr@gnu.org>
13036
13037 * w32font.c (w32font_draw): Fill background manually.
13038
130392008-02-01 Jason Rumney <jasonr@gnu.org>
13040
13041 * font.c (Qfontp): Remove unused symbol.
13042 (QCantialias): New symbol.
13043 (syms_of_font): Define it.
13044 (font_property_table): Set a validator for QCantialias.
13045
13046 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
13047 Define if not already.
13048 (QCfamily): Share with xfaces.c.
13049 (Qstandard, Qsubpixel, Qnatural): New symbols.
13050 (syms_of_w32font): Define them. Don't define QCfamily here.
13051 (w32_antialias_type, lispy_antialias_type): New functions.
13052 (w32_enumfont_pattern_entity): New arg requested_font.
13053 Set antialias parameter if non-default was requested.
13054 (fill_in_logfont): Fill in lfQuality if :antialias specified.
13055
130562008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13057
13058 * lread.c (read1): Undo the previous change.
13059
130602008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
13061
13062 * frame.c (Fdelete_frame): Call font_update_drivers only when
13063 USE_FONT_BACKEND is defined.
13064
130652008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13066
13067 * font.h (struct font_bitmap): New member bits_per_pixel.
13068 (struct font_driver): New members start_for_frame and end_for_frame.
13069 (struct font_data_list): New struct.
13070 (font_put_frame_data, font_get_frame_data): Extern them.
13071
13072 * frame.h (struct frame): New member font_data_list.
13073
13074 * font.c (font_update_drivers): Call driver->start_for_frame and
13075 driver->end_for_frame at proper timings.
13076 (font_put_frame_data, font_get_frame_data): New functions.
13077 (Ffont_spec): Add usage in the docstring.
13078
13079 * frame.c (make_frame): Initialize f->font_data_list to NULL.
13080 (Fdelete_frame): Call font_update_drivers.
13081
13082 * xftfont.c (struct xftface_info): Delete the member xft_draw.
13083 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
13084 (xftfont_get_xft_draw): New function.
13085 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
13086 (xftfont_end_for_frame): New function.
13087 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
13088
13089 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
13090 Change argument. Cache GCs in the per-frame data.
13091 (struct ftxfont_frame_data): New struct.
13092 (ftxfont_draw_bitmap): New arg gc_fore and flush.
13093 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
13094 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
13095 (ftxfont_end_for_frame): New function.
13096 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
13097
13098 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
13099
131002008-02-01 Kenichi Handa <handa@m17n.org>
13101
13102 * xselect.c (Vselection_coding_system)
13103 (Vnext_selection_coding_system): Delete them.
13104 (syms_of_xselect): Don't declare selection-coding-system and
13105 next-selection-coding-system. They are declared in select.el.
13106
131072008-02-01 Jason Rumney <jasonr@gnu.org>
13108
13109 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
13110
13111 * w32fns.c: Include imm.h.
13112 (get_composition_string_fn, get_ime_context_fn): New optional
13113 system functions.
13114 (globals_of_w32fns): Load them from imm32.dll.
13115 (ignore_ime_char): New flag.
13116 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
13117 WM_IME_ENDCOMPOSITION messages.
13118
13119 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
13120 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
13121
131222008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13123
13124 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
13125 (READCHAR_REPORT_MULTIBYTE): New macro.
13126 (readchar): New 2nd arg MULTIBYTE.
13127 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
13128 Make symbol's name multibyte according to the multibyteness of the
13129 source.
13130
131312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13132
13133 * xfaces.c (face_for_overlay_string): Call lookup_face with
13134 correct arguments (fix of synching with the trunk).
13135
131362008-02-01 Kenichi Handa <handa@m17n.org>
13137
13138 * font.c (font_prop_validate_symbol, font_prop_validate_style)
13139 (font_prop_validate_non_neg, font_prop_validate_spacing):
13140 Delete argument prop_index.
13141 (font_property_table): Change arguments to validater. Change Callers.
13142 (font_lispy_object): Delete.
13143 (font_at): Use font_find_object instead fo font_lispy_object.
13144
131452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13146
13147 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
13148 and file names.
13149
131502008-02-01 Jason Rumney <jasonr@gnu.org>
13151
13152 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
13153 (font_matches_spec): Remove debug output.
13154 (add_font_entity_to_list): Avoid using substituted fonts.
13155
131562008-02-01 Jason Rumney <jasonr@gnu.org>
13157
13158 * doc.c (Fsnarf_documentation):
13159 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
13160
131612008-02-01 Miles Bader <miles@gnu.org>
13162
13163 * dispextern.h (struct glyph_row): Only define "clip" field if
13164 HAVE_WINDOW_SYSTEM is defined.
13165
131662008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13167
13168 Fix up multi-tty merge.
13169
13170 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
13171 and indentation.
13172
13173 * xfaces.c (free_realized_face, clear_face_gcs):
13174 Include font_done_for_face in the input_blocked section, just in case.
13175
13176 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
13177 (get_char_face_and_encoding): Undo last change and remove the *other*
13178 duplicate definition (i.e. keep the one that's better scoped and that
13179 includes code for the font-backend).
13180
13181 * terminal.c (create_terminal): Default keyboard_coding to
13182 `no-conversion' and terminal_coding to `undecided'.
13183
13184 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
13185
13186 * fontset.c (free_realized_fontsets): Check that the table entry does
13187 contain a fontset before trying to compare it to `base'.
13188
13189 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
13190 syms_of_charset, and syms_of_coding earlier because init_window_once
13191 now needs Vcoding_system_hash_table to be setup.
13192
13193 * coding.h (default_buffer_file_coding): Remove.
13194
13195 * coding.c (default_buffer_file_coding): Remove.
13196 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
13197 than ->symbol, and use the terminal-local coding system.
13198 (syms_of_coding): Don't setup the coding-systems that are not
13199 terminal-local.
13200 (Fdefine_coding_system_internal): Use XCAR/XCDR.
13201
13202 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
13203 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
13204
13205 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
13206 in chartab.c and were re-added here by mistake.
13207 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
13208
13209 * doc.c (Fsnarf_documentation):
13210 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
13211 src to etc.
13212
13213 * ChangeLog.10: Add mistakenly removed entry.
13214
132152008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
13216
13217 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
13218
132192008-02-01 Miles Bader <miles@gnu.org>
13220
13221 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
13222 Add extra args to FACE_FOR_CHAR.
13223
132242008-02-01 Kenichi Handa <handa@m17n.org>
13225
13226 * keymap.c (where_is_internal_1): If key is a cons, store the copy
13227 in sequence.
13228
13229 * chartab.c (map_sub_char_table, map_char_table): If the range
13230 contains just one character, call the function with that character
13231 even if the depth is not 3.
13232
132332008-02-01 Jason Rumney <jasonr@gnu.org>
13234
13235 * w32font.c (w32font_text_extents): Calculate metrics for the
13236 whole string.
13237
132382008-02-01 Jason Rumney <jasonr@gnu.org>
13239
13240 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
13241
132422008-02-01 Jason Rumney <jasonr@gnu.org>
13243
13244 * w32term.c (x_set_glyph_string_clipping): Use
13245 get_glyph_string_clip_rects.
13246 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13247 Adjust for the change of struct glyph_string.
13248
13249 * w32font.c (w32font_draw): Do clipping here.
13250
132512008-02-01 Kenichi Handa <handa@m17n.org>
13252
13253 * xftfont.c (xftfont_draw): Adjust for the change of struct
13254 glyph_string.
13255
13256 * xterm.c (x_set_glyph_string_clipping): Use
13257 get_glyph_string_clip_rects.
13258 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13259 Adjust for the change of struct glyph_string.
13260
13261 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
13262 the resulting clip(s}.
13263 (expose_overlaps): Add arg r. Change callers. Set it to
13264 row->clip temporarily.
13265 (expose_window): Redraw rows overlapping the exposed area.
13266
13267 * dispextern.h (struct glyph_row): New member clip.
13268 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
13269 clip_height, new member clip, and num_clips.
13270
132712008-02-01 Kenichi Handa <handa@m17n.org>
13272
13273 * data.c (Fchar_or_string_p): Fix docstring.
13274
132752008-02-01 Kenichi Handa <handa@m17n.org>
13276
13277 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
13278 create a temporary XftDraw object.
13279
132802008-02-01 Kenichi Handa <handa@m17n.org>
13281
13282 * font.c (Ffontp): Fix docstring.
13283
13284 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
13285 strong evidence of ISO-2022.
13286
132872008-02-01 Kenichi Handa <handa@m17n.org>
13288
13289 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
13290 SYNTAX_ENTRY_FOLLOW_PARENT.
13291
132922008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13293
13294 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
13295 its type.
13296 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
13297 Update to the new type of weak_hash_tables and next_weak.
13298
13299 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
13300 a plain C pointer to Lisp_Hash_Table.
13301
13302 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
13303 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
13304 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
13305 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
13306 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
13307 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
13308 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
13309 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
13310 (GC_EQ): Remove since they've been identical to their non-GC_
13311 alter-egos ever since the markbit was eradicated.
13312
13313 * alloc.c:
13314 * buffer.c:
13315 * buffer.h:
13316 * data.c:
13317 * fileio.c:
13318 * filelock.c:
13319 * fns.c:
13320 * frame.h:
13321 * lisp.h:
13322 * macterm.c:
13323 * print.c:
13324 * process.c:
13325 * w32fns.c:
13326 * w32menu.c:
13327 * w32term.c:
13328 * xfns.c:
13329 * xmenu.c:
13330 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
13331
133322008-02-01 Kenichi Handa <handa@m17n.org>
13333
13334 * chartab.c (map_sub_char_table): Make it work for the top-level
13335 char-table. Fix handling of parent char-table.
13336 (map_char_table): Adjust for the above change.
13337
133382008-02-01 Jason Rumney <jasonr@gnu.org>
13339
13340 * w32font.c (Qgdi): Rename from Qw32.
13341
133422008-02-01 Jason Rumney <jasonr@gnu.org>
13343
13344 * w32bdf.c (get_quoted_string): Make function static.
13345
133462008-02-01 Kenichi Handa <handa@m17n.org>
13347
13348 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
13349 bigger ascent and descent than those of the font, use them as
13350 font's ascent and descent.
13351
133522008-02-01 Kenichi Handa <handa@m17n.org>
13353
13354 * Makefile.in (${lispsource}international/charprop.el): Move this
13355 target within "#ifdef HAVE_UNIDATA" and "#endif".
13356
133572008-02-01 Kenichi Handa <handa@m17n.org>
13358
13359 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
13360 (shortlisp): Add ../lisp/language/tai-viet.el.
13361
133622008-02-01 Ulrich Mueller <ulm@gentoo.org>
13363
13364 * Makefile.in (${lispsource}international/charprop.el): Depend on
13365 temacs${EXEEXT}.
13366
133672008-02-01 Jason Rumney <jasonr@gnu.org>
13368
13369 * w32font.c (w32font_close): Delete the GDI font object.
13370
13371 * w32menu.c: Include character.h.
13372
13373 * w32proc.c: Likewise.
13374
13375 * w32select.c: Likewise.
13376
13377 * makefile.w32-in (w32proc.o): Depend on character.h.
13378
133792008-02-01 Jason Rumney <jasonr@gnu.org>
13380
13381 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
13382
13383 * w32menu.c (syms_of_w32menu): Likewise.
13384
13385 * w32proc.c (syms_of_ntproc): Likewise.
13386
13387 * w32select.c (syms_of_w32select): Likewise.
13388
13389 * w32term.c (syms_of_w32term): Likewise.
13390
133912008-02-01 Jason Rumney <jasonr@gnu.org>
13392
13393 * w32font.c (w32font_draw): Delete brush after using it.
13394
133952008-02-01 Jason Rumney <jasonr@gnu.org>
13396
13397 * w32font.c (w32font_open): Don't set font_idx.
13398 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13399 to font settings.
13400 (w32font_draw): Fill background explicitly.
13401
134022008-02-01 Jason Rumney <jasonr@gnu.org>
13403
13404 * w32term.c (w32_initialize): Don't call w32font_initialize.
13405
13406 * w32font.c (w32font_info): Remove subranges.
13407 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13408 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13409 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13410 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13411 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13412 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13413 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13414 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13415 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13416 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13417 New symbols.
13418 (font_callback_data): New struct.
13419 (w32font_list, w32font_match): Use it.
13420 (w32font_open): Don't populate subranges.
13421 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13422 (w32font_encode_char): Always return unicode code-point as-is.
13423 (w32font_text_extents): Supply a transformation matrix to
13424 GetGlyphOutline. Never look up by glyph index. Avoid looping
13425 twice. Use unicode version of GetTexExtentPoint32 instead of
13426 glyph index version.
13427 (set_fonts_frame): Remove.
13428 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13429 set frame parameter. Use backward compatible fake foundries.
13430 Save generic family in extra slot under QCfamily. Make width slot
13431 constant. Save QCspacing value. Save list of scripts instead of
13432 binary subranges.
13433 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13434 (add_font_entity_to_list): Use font_callback_data struct. Filter
13435 unwanted fonts.
13436 (add_one_font_entity_to_list): Use font_callback_data struct.
13437 (w32_registry): Default to iso10646_1.
13438 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13439 string font registries. Don't fill in font name if it is a generic
13440 family name, fill family instead. Use spacing, family and script
13441 extra info to fill pitch, family and charset fields.
13442 (list_all_matching_fonts): Use font_callback_data struct.
13443 (unicode_range_for_char): Remove.
13444 (font_supported_scripts): New function.
13445 (w32font_initialize): Remove.
13446 (syms_of_w32font): Update which symbols are defined.
13447
134482008-02-01 Jason Rumney <jasonr@gnu.org>
13449
13450 * font.c (font_pixel_size): Reverse assq_no_quit args.
13451
13452 * w32term.h (FONT_WIDTH): Report max width, not average.
13453 (FONT_MAX_WIDTH): Remove.
13454 (FONT_AVG_WIDTH): New macro.
13455
13456 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13457 redefinition of FONT_WIDTH.
13458
13459 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13460 (w32_cache_char_metrics): Use FONT_WIDTH.
13461
13462 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13463
134642008-02-01 Jason Rumney <jasonr@gnu.org>
13465
13466 * w32font.c (w32font_open): Make lfHeight negative.
13467
13468 * w32fns.c (x_default_font_parameter): Use new style font name.
13469 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13470
134712008-02-01 Jason Rumney <jasonr@gnu.org>
13472
13473 * w32font.c (QCsubranges): New symbol.
13474 (w32font_open, w32font_has_char): Get subranges from subproperty
13475 of extra.
13476 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13477 (syms_of_w32font): Define :subranges symbol.
13478
13479 * font.c (font_put_extra): Expose externally.
13480
13481 * font.h (font_put_extra): Move declaration from font.c.
13482
13483 * font.c (Ffont_get): Use font driver to determine otf capability.
13484 (adjust_anchor): Check if driver defines anchor_point before using.
13485
13486 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13487 (w32font_draw): Use options.
13488 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13489 Fix detection of truetype fonts.
13490 (registry_to_w32_charset): Handle charsets other than iso8859-1
13491 expressed as lisp symbols.
13492 (w32_registry): Express charset as lisp symbol.
13493 (fill_in_logfont): Reverse pixel and point height logic.
13494 Don't set width here. Set quality to default.
13495
13496 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13497 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13498
13499 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13500 Remove redundant loop and allocation.
13501
13502 * makefile.w32-in (font.o, w32font.o): New objects.
13503 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13504 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13505
13506 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13507 STORE_XCHARB a valid l-value.
13508
13509 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13510 calculations for non-Truetype fonts.
13511 (x_draw_glyph_string): Sync with xterm.c.
13512 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13513 Remove redundant code.
13514 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13515
13516 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13517 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13518
13519 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13520 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13521
13522 * w32font.c: New file for w32 font backend.
13523
135242008-02-01 Kenichi Handa <handa@m17n.org>
13525
13526 * term.c: Don't include "buffer.h" twice.
13527
135282008-02-01 Kenichi Handa <handa@m17n.org>
13529
13530 * character.c (Funibyte_string): New function.
13531 (syms_of_character): Defsubr it.
13532
135332008-02-01 Jason Rumney <jasonr@gnu.org>
13534
13535 * w32term.c [USE_FONT_BACKEND]:
13536 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13537 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13538 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13539 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13540 (x_free_frame_resources): Sync with xterm.c.
13541
135422008-02-01 Andreas Schwab <schwab@suse.de>
13543
13544 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13545 char-table size.
13546
135472008-02-01 Kenichi Handa <handa@m17n.org>
13548
13549 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13550
135512008-02-01 Kenichi Handa <handa@m17n.org>
13552
13553 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13554 font_otf_gpos, add font_drive_otf.
13555
13556 * fontset.c (fontset_find_font): Pay attention to font size
13557 specified for a font.
13558 (reorder_font_vector): Check contents of font_def.
13559
13560 * font.c (struct otf_list): Delete it.
13561 (otf_list): Make it a lisp variable.
13562 (otf_open): Use lispy otf_list.
13563 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13564 (check_otf_features): New function.
13565 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13566 New functions.
13567 (font_drive_otf): New function merging font_otf_gsub and
13568 font_otf_gpos.
13569 (font_open_for_lface): New arg spec. Change argument order.
13570 (font_load_for_face): Adjust for the change of font_open_for_lface.
13571 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13572 Ffont_otf_gpos.
13573 (syms_of_font): Staticpro otf_list. Delete defsubr of
13574 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13575
13576 * xfaces.c (set_font_frame_param): Adjust for the change of
13577 font_open_for_lface.
13578
13579 * font.h (font_open_for_lface): Adjust prototype.
13580 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13581 member otf_drive.
13582 (font_otf_gsub, font_otf_gpos): Delete externs.
13583 (font_drive_otf): Extern it.
13584
135852008-02-01 Kenichi Handa <handa@m17n.org>
13586
13587 * font.c (font_at): If the window W is not on a window system,
13588 return Qnil.
13589
13590 * coding.c (produce_chars, encode_coding): Don't call
13591 insert_from_gap if no characters to produce.
13592
135932008-02-01 Kenichi Handa <handa@m17n.org>
13594
13595 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13596 Fclear_face_cache.
13597
13598 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13599
136002008-02-01 Miles Bader <miles@gnu.org>
13601
13602 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13603 Parse "--disable-font-backend" option.
13604 (standard_args): Add "--disable-font-backend" option.
13605
136062008-02-01 Kenichi Handa <handa@m17n.org>
13607
13608 * fontset.c (fontset_find_font): New function.
13609 (fontset_font): Use fontset_find_font.
13610 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13611 Register the specified font for all Latin characters.
13612 (new_fontset_from_font): Register the specified font for all Latin
13613 characters.
13614 (dump_fontset): For a realized fontset, include the base fontset
13615 name in the returned vector.
13616
136172008-02-01 Kenichi Handa <handa@m17n.org>
13618
13619 * character.h (CHAR_STRING): Cast C to unsigned on calling
13620 char_string.
13621
13622 * character.c (char_string): Type of arg C changed to unsigned.
13623 Signal an error if C is an invalid character code.
13624
13625 * editfns.c (general_insert_function, Fchar_to_string):
13626 Use CHARACTERP, not INTEGERP.
13627
136282008-02-01 Kenichi Handa <handa@m17n.org>
13629
13630 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13631 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13632
13633 * regex.c (analyse_first): Fix for multibyte characters in "case
13634 charset:" and "case categoryspec:".
13635
136362008-02-01 Andreas Schwab <schwab@suse.de>
13637
13638 * Makefile.in (LIBES): Move standard libraries to the end.
13639
136402008-02-01 Kenichi Handa <handa@m17n.org>
13641
13642 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13643 nonzero, don't shrink the buffer nextb.
13644
13645 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13646
13647 * coding.c (coding_alloc_by_making_gap): New arg offset.
13648 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13649 offset.
13650 (decode_coding_iso_2022): Update coding->safe_charsets.
13651 (decode_coding_gap): Temporarily set
13652 current_buffer->text->inhibit_shrinking to 1.
13653
136542008-02-01 Kenichi Handa <handa@m17n.org>
13655
13656 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13657 indexing into elements of s->cmp and s->char2b.
13658
136592008-02-01 Juanma Barranquero <lekktu@gmail.com>
13660
13661 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13662
136632008-02-01 Kenichi Handa <handa@m17n.org>
13664
13665 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13666 target_multibyte instead of multibyte.
13667 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13668 (bcmp_translate): Change the argument name from multibyte to
13669 target_multibyte.
13670
136712008-02-01 Kenichi Handa <handa@m17n.org>
13672
13673 These changes are to compile a regexp into a pattern that can be
13674 used both for multibyte and unibyte targets.
13675
13676 * Makefile.in (search.o): Depend on charset.h.
13677
13678 * character.c (multibyte_char_to_unibyte_safe): New function.
13679
13680 * search.c: Include "charset.h".
13681 (compile_pattern_1): Delete argument multibyte. Don't set
13682 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13683 (compile_pattern): Don't compare cp->buf.target_multibyte.
13684 Compare cp->buf.charset_unibyte.
13685 (compile_pattern): Set cp->buf.target_multibyte.
13686
13687 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13688
13689 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13690
13691 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13692 multibyte. Change callers.
13693 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13694 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13695 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13696 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13697 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13698 (regex_compile): Make the compiled pattern usable both for
13699 multibyte and unibyte targets.
13700 (analyse_first): Make the fastmap usable both for multibyte and
13701 unibyte targets.
13702 (TRANSLATE_VIA_MULTIBYTE): Delete.
13703 (re_match_2_internal): Pay attention to the case that the
13704 multibyteness of bufp and target may be different.
13705
137062008-02-01 Kenichi Handa <handa@m17n.org>
13707
13708 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13709 empty box occupy at least one column width.
13710
137112008-02-01 Miles Bader <miles@gnu.org>
13712
13713 * Makefile.in: Remove redundant HAVE_XFT clause.
13714
137152008-02-01 Kenichi Handa <handa@m17n.org>
13716
13717 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13718
137192008-02-01 Kenichi Handa <handa@m17n.org>
13720
13721 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13722 being nil.
13723
137242008-02-01 Kenichi Handa <handa@m17n.org>
13725
13726 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13727
137282008-02-01 Kenichi Handa <handa@m17n.org>
13729
13730 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13731
137322008-02-01 Kenichi Handa <handa@m17n.org>
13733
13734 * search.c (simple_search): Fix previous change.
13735
137362008-02-01 Kenichi Handa <handa@m17n.org>
13737
13738 * xftfont.c (ftfont_font_format): Extern declaration.
13739
13740 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13741
13742 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13743 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13744
13745 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13746 (ftfont_font_format): Fix previous change.
13747
13748 * font.h (Ffont_xlfd_name): EXFUN it.
13749
13750 * font.c (font_parse_xlfd): Fix the array size of `f'.
13751 (register_font_driver): Use EQ to compare driver->type.
13752
13753 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13754 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13755 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13756
137572008-02-01 Kenichi Handa <handa@m17n.org>
13758
13759 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13760 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13761
137622008-02-01 Kenichi Handa <handa@m17n.org>
13763
13764 * xfont.c (xfont_open): Set font->format.
13765
13766 * xftfont.c (xftfont_open): Set font->format.
13767
13768 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13769 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13770 (ftfont_open): Set font->format.
13771 (ftfont_font_format): New function.
13772
13773 * font.h (struct font): New member format.
13774
13775 * font.c (Qopentype): New variable.
13776 (syms_of_font): Defsym it.
13777 (Fquery_font): Change the format of the last element of the return
13778 value.
13779
137802008-02-01 Kenichi Handa <handa@m17n.org>
13781
13782 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13783 last resort.
13784
137852008-02-01 Kenichi Handa <handa@m17n.org>
13786
13787 * coding.c (detect_coding_charset): Fix detection of multi-byte
13788 charset.
13789
137902008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13791
13792 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13793
137942008-02-01 Kenichi Handa <handa@m17n.org>
13795
13796 * xdisp.c (get_next_display_element): Set it->face_id for the
13797 first component of a composition.
13798 (x_produce_glyphs): Check if the font is changed or not for composition.
13799
138002008-02-01 Kenichi Handa <handa@m17n.org>
13801
13802 * fontset.c (Qlatin): New variable.
13803 (syms_of_fontset): Define it as a lisp symbol.
13804 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13805
138062008-02-01 Kenichi Handa <handa@m17n.org>
13807
13808 * font.c (font_unparse_fcname): Pay attention to the case that
13809 some of font property is a null string.
13810
138112008-02-01 Kenichi Handa <handa@m17n.org>
13812
13813 * term.c: Include "composite.h".
13814 (encode_terminal_code): Output all components of composition.
13815 Check the size of encode_terminal_src.
13816 (produce_glyphs): For composition, call produce_composite_glyph.
13817 (append_composite_glyph, produce_composite_glyph): New functions.
13818
13819 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13820 is not found, get font_info from the current ascii face.
13821
138222008-02-01 Kenichi Handa <handa@m17n.org>
13823
13824 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13825 buffer-file-name to Qnil before calling insert_from_buffer.
13826
13827 * font.c (font_unparse_fcname): Pay attention to the case that
13828 foundry is a null string.
13829
138302008-02-01 Kenichi Handa <handa@m17n.org>
13831
13832 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13833
13834 * font.c (Qunicode_sip): New variable.
13835 (syms_of_font): Declare it as a Lisp symbol.
13836
13837 * font.h (Qunicode_sip): Extern it.
13838
138392008-02-01 Kenichi Handa <handa@m17n.org>
13840
13841 * composite.c (get_composition_id): Pay attention to TAB component.
13842
13843 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13844 TAB. Adjust for the change of s->char2b which always points to
13845 the first element of allocated memory.
13846
13847 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13848
13849 * xdisp.c (handle_composition_prop): Set it->c to the first
13850 non-TAB component.
13851 (fill_composite_glyph_string): Change argument.
13852 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13853 (x_produce_glyphs): Fix handling of left/right padding.
13854
138552008-02-01 Kenichi Handa <handa@m17n.org>
13856
13857 * coding.c (detect_coding_system): Fix for handling off
13858 inhibit_iso_escape_detection. Fix for the case that no coding
13859 system is defined for a specific coding category.
13860
138612008-02-01 Kenichi Handa <handa@m17n.org>
13862
13863 * font.c (font_matching_entity): Delete unused local var.
13864
13865 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13866 opening a font.
13867
13868 * fileio.c (Finsert_file_contents): On recovering a file, assume
13869 Unix-like eol.
13870 (choose_write_coding_system): On auto-saving a file, force
13871 Unix-like eol.
13872
13873 * coding.c (setup_coding_system): Fix setting of
13874 coding->common_flags based on eol_type.
13875 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13876 inherit from it.
13877
138782008-02-01 Kenichi Handa <handa@m17n.org>
13879
13880 * alloc.c (NSTATICS): Increas to 0x600.
13881
138822008-02-01 Kenichi Handa <handa@m17n.org>
13883
13884 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13885 (ftfont_list): Don't check :name property.
13886 (ftfont_match): New function.
13887 (ftfont_pattern_entity): If the pattern doesn't contain
13888 FC_SPACING, don't assume FC_MONO.
13889
13890 * font.h (struct font_driver): New member `match'.
13891 (font_update_drivers): Adjust prototype.
13892
13893 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13894 property of FONT.
13895 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13896 them unconditionally.
13897 (font_matching_entity): New function.
13898 (font_open_by_name): Try font_matching_entity if exact match is
13899 not found.
13900 (font_update_drivers): Delete the arg FONT. Return a list of
13901 actually used backends. Don't free faces, font caches here.
13902 Don't store data in frame parameters. Don't call x_set_font.
13903 (Ffont_spec): Store :name property as is.
13904 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13905 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13906 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13907 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13908 Call font->driver->otf_gsub instead of font_otf_gsub.
13909
13910 * frame.c (x_set_font_backend): Do more works that were done in
13911 font_update_drivers before.
13912
13913 * xfont.c (xfont_match): New function.
13914 (xfont_driver): Set xfont_driver.match to xfont_match.
13915 (xfont_draw): Set font in GC if necessary.
13916
13917 * ftxfont.c (ftxfont_match): New function.
13918 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13919
13920 * xftfont.c (xftfont_match): New function.
13921 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13922
139232008-02-01 Kenichi Handa <handa@m17n.org>
13924
13925 * font.h (struct font): New member scalable.
13926 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13927 (font_otf_gsub): Adjust prototype.
13928
13929 * font.c (font_otf_capability): Fix handling of the default langsys.
13930 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13931 Check the contents of SPEC.
13932 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13933 (check_gstring): New function.
13934 (REPLACEMENT_CHARACTER): New macro.
13935 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13936 glyph codes of GSTRING.
13937 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13938 (font_prepare_composition): Set cmp->glyph_len.
13939 (font_open_entity): Set font->scalable.
13940 (Ffont_get): Handle :otf property.
13941 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13942 functions.
13943 (Fquery_font): Use font->font.full_name.
13944 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13945 Sfont_otf_alternates.
13946
13947 * ftfont.c (ftfont_open): Set font->font.full_name and
13948 font->font.name properly. Fix calculation of font->font.height
13949 and font->min_width.
13950
13951 * ftxfont.c (ftxfont_create_gcs): New function.
13952 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13953 (ftxfont_draw_backgrond): Fix filling region.
13954 (ftxfont_default_fid): New function.
13955 (ftxfont_open): Set xfont->fid to the return value of
13956 ftxfont_default_fid.
13957 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13958 (ftxfont_done_face): Free only GCs that are created by
13959 ftxfont_create_gcs.
13960 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13961
13962 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13963 Clip to src->width, etc (not src->clip_XXX).
13964
13965 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13966 FontBackend frame parameter.
13967
139682008-02-01 Kenichi Handa <handa@m17n.org>
13969
13970 * font.h (struct font_driver_list): New member `on'.
13971 (Fclear_font_cache): EXFUN it.
13972 (font_update_drivers): Extern it.
13973
13974 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13975 (font_list_entities): Check driver_list->on.
13976 (register_font_driver): Initalize `on' member to 0.
13977 (font_update_drivers): New function.
13978 (Fclear_font_cache): Check driver_list->on.
13979
13980 * frame.h (Qfont_backend): Extern it.
13981 (x_set_font_backend): Extern it.
13982
13983 * frame.c (Qfont_backend): New variable.
13984 (frame_parms): New element for font-backend.
13985 (x_set_font_backend): New function.
13986
13987 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13988 FontBackend frame parameter.
13989 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13990 x_set_font_backend.
13991
13992 * xfont.c (xfont_list): Don't try listing by :name property if the
13993 name is not for XLFD.
13994
139952008-02-01 Kenichi Handa <handa@m17n.org>
13996
13997 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13998 (LGLYPH_SET_TO): New macros.
13999 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
14000 element of G is vector or not.
14001 (font_at): Extern it.
14002
14003 * font.c: Include window.h.
14004 (font_lispy_object): New function.
14005 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
14006 end of valid glyph.
14007 (font_close_object): Fix getting (struct font *).
14008 (font_at): New function.
14009 (Ffont_get): If FONT is a font-object, get entity from it.
14010 (Ffont_make_gstring): Initialize elements of glyphs with nil.
14011 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
14012 range check.
14013 (Ffont_at): New function.
14014 (syms_of_font): Defsubr Sfont_at.
14015
14016 * xdisp.c (it_props): Move the entry for Qauto_composed to just
14017 before the entry for Qcomposition.
14018 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
14019 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
14020 the font in gstring.
14021 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
14022 LGLYPH_FORM (g) to detect the end of valid glyph.
14023 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
14024 we are composing with gstring.
14025
14026 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
14027 Check if adjustment is vector or not.
14028
14029 * Makefile.in (font.o): Make it depends on window.h.
14030
140312008-02-01 Kenichi Handa <handa@m17n.org>
14032
14033 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
14034 adjustment is vector or not.
14035
140362008-02-01 Miles Bader <miles@gnu.org>
14037
14038 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
14039
140402008-02-01 Kenichi Handa <handa@m17n.org>
14041
14042 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
14043 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
14044 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
14045
14046 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
14047 (DEVICE_DELTA): Fix typo.
14048 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
14049 LGLYPH format.
14050
14051 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
14052 the change of LGLYPH format.
14053
140542008-02-01 Kenichi Handa <handa@m17n.org>
14055
14056 * ftfont.c (ftfont_list): Fix typo.
14057 (ftfont_build_basic_charsets): Don't include letters with diacritics.
14058
140592008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14060
14061 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
14062
14063 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
14064 xftface_info is non-NULL.
14065
140662008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14067
14068 * ftfont.c (ftfont_list): Move misplaced #endif.
14069
140702008-02-01 Kenichi Handa <handa@m17n.org>
14071
14072 * ftfont.c (ftfont_list): Pay attention to the case that
14073 FC_CAPABILITY is not defined.
14074
140752008-02-01 Kenichi Handa <handa@m17n.org>
14076
14077 * xftfont.c (xftfont_open): Set charset related members to -1.
14078
14079 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
14080 QCname.
14081 (ftfont_open): Set charset related members to -1.
14082
14083 * fontset.c (Votf_script_alist): New variable.
14084 (syms_of_fontset): Initialize it.
14085 (fontset_font): Delete unused variable.
14086
14087 * fontset.h (Votf_script_alist): Extern it.
14088
14089 * font.c (font_find_for_lface): Optimize code.
14090
14091 * font.h (font_close_object, font_merge_old_spec): Extern them.
14092
140932008-02-01 Kenichi Handa <handa@m17n.org>
14094
14095 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
14096 (syms_of_font): Initialize them.
14097 (font_pixel_size): Allow float value in dpi.
14098 (font_prop_validate_type): Delete.
14099 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
14100 Change caller.
14101 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
14102 (font_prop_validate_extra): Delete.
14103 (font_prop_validate_spacing): New function.
14104 (font_property_table): Add elements for all known properties.
14105 (get_font_prop_index): Rename from check_font_prop_name. New
14106 argument FROM. Change caller.
14107 (font_prop_validate): Validate all known properties.
14108 (font_put_extra): Delete argument force. Change caller.
14109 (font_expand_wildcards): Make it static. Fix the way of shrinking
14110 the possible range.
14111 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
14112 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
14113 Change caller.
14114 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
14115 (font_parse_fcname): Delete argument merge. Fix parsing of point
14116 size. Don't validate properties values here. Change caller.
14117 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
14118 (font_open_by_name): Delete unused variable.
14119 (Ffont_spec): Likewise. Validate property values.
14120 (Ffont_match_p): New function.
14121
14122 * font.h (QCscalable): Extern it.
14123 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
14124
14125 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
14126
14127 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
14128 (xfont_list_pattern): New function.
14129 (xfont_list): Use xfont_list_pattern.
14130
141312008-02-01 Kenichi Handa <handa@m17n.org>
14132
14133 * font.h (Flist_fonts): EXFUN it.
14134
141352008-02-01 Jason Rumney <jasonr@gnu.org>
14136
14137 * w32term.c (w32_initialize): Add back smoothing_type and
14138 smoothing_enabled definitions.
14139
141402008-02-01 Kenichi Handa <handa@m17n.org>
14141
14142 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
14143 s->face->font on determining underline position.
14144
141452008-02-01 Kenichi Handa <handa@m17n.org>
14146
14147 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
14148 (font_has_char): Accept font-object too.
14149 (font_find_for_lface): Try at first with a size specified in face.
14150
141512008-02-01 Kenichi Handa <handa@m17n.org>
14152
14153 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
14154 font_open_by_name.
14155
141562008-02-01 Kenichi Handa <handa@m17n.org>
14157
14158 * font.h (QCspacing, QCdpi): Extern them.
14159 (enum font_spacing): New enum.
14160 (FONT_PIXEL_SIZE_QUANTUM): New macro.
14161
14162 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
14163 (QCspacing, QCdpi): New variables.
14164 (syms_of_font): Initialize them.
14165 (font_pixel_size): New function.
14166 (font_put_extra): New function.
14167 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
14168 in FONT_EXTRA.
14169 (font_parse_fcname): Handle enumerated values (e.g. bold).
14170 Fix handling font size. Add QCname property that contains only
14171 unknown properties.
14172 (font_score): Change argument. Change caller. Pay attention to
14173 FONT_PIXEL_SIZE_QUANTUM.
14174 (font_sort_entites, font_list_entities, font_find_for_lface)
14175 (font_open_for_lface, font_open_by_name): Fix handling of font size.
14176 (Ffont_spec): Add QCname property that contains only unknown properties.
14177
14178 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
14179 include weight in listing pattern, instead check weight of each
14180 listed font. Don't include scalable in pattern. Pay attention to
14181 FONT_PIXEL_SIZE_QUANTUM.
14182
141832008-02-01 Kenichi Handa <handa@m17n.org>
14184
14185 * font.c (font_parse_fcname): Fix parsing of point-size.
14186 (font_unparse_fcname): Produce symbolic names for style properties.
14187 (font_list_entities): Handle float size correctly.
14188 (font_open_by_name): Prefer `normal' property values if the name
14189 doesn't specify them.
14190
14191 * fontset.c (Finternal_char_font): Use font_get_name, not
14192 Ffont_xlfd_name.
14193
14194 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
14195 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
14196 pattern. Don't force scalable.
14197
14198 * xftfont.c (xftfont_open): For generating a name, start from
14199 96-byte buffer.
14200
142012008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14202
14203 * frame.h (x_new_fontset2): Fix prototype.
14204
142052008-02-01 Kenichi Handa <handa@m17n.org>
14206
14207 * font.h (struct font_driver): Delete member parse_name.
14208 (font_match_p, font_get_spec, font_parse_fcname)
14209 (font_unparse_fcname): Extern them.
14210 (font_get_name): Adjust prototype.
14211
14212 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
14213 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
14214 (font_expand_wildcards): Fix handling ENCODING field. Avoid
14215 unnecessary checks for weight, slant, and swidth.
14216 (font_parse_fcname): New function.
14217 (font_unparse_fcname): New function.
14218 (font_parse_name): New function.
14219 (font_match_p): New function.
14220 (font_get_name): Change return value to Lisp string.
14221 (font_get_spec): New function.
14222 (Qunspecified, Qignore_defface): Don't extern them.
14223 (font_find_for_lface): Assume that LFACE is fully specified.
14224 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
14225 object, use it for FACE.
14226 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
14227 driver->parse_name.
14228 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
14229
14230 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
14231 prototype.
14232
14233 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
14234 argument F. Don't call Fnew_fontset. Instead, directly call
14235 make_fontset.
14236
14237 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
14238
14239 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
14240 of x_new_fontset2.
14241
14242 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
14243 (Qsans__serif): New variables.
14244 (ftfont_generic_family_list): New variable.
14245 (syms_of_ftfont): Initialize the above variables.
14246 (ftfont_pattern_entity): Delete argument NAME.
14247 (ftfont_list_generic_family): New function.
14248 (ftfont_parse_name): Delete this function.
14249 (ftfont_list): Try generic family only when FcFontList found no font.
14250 (ftfont_list_family): Fix args to FcObjectSetBuild.
14251
14252 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
14253 object in attrs[LFACE_FONT_INDEX].
14254 (set_lface_from_font_name): Cancel all changes for font-backend.
14255 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
14256 function.
14257 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
14258 font object in QCfont attribute.
14259 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
14260 (realize_default_face) [USE_FONT_BACKEND]: Call
14261 set_lface_from_font_and_fontset.
14262
14263 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
14264 "fixed", and signal error here if no suitable font was found.
14265
14266 * xfont.c (xfont_parse_name): Delete this function.
14267
14268 * xftfont.c (xftfont_open): Change coding style of error
14269 handling. Generate fontconfig's fontname pattern.
14270
14271 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
14272 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
14273
14274 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
14275 Both args FONTSET and FONT_OBJECT must be existing ones.
14276
142772008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14278
14279 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
14280
142812008-02-01 Kenichi Handa <handa@m17n.org>
14282
14283 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
14284
14285 * font.h (struct font): Fix typo.
14286
14287 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
14288 XLFD_XXX_INDEX.
14289 (enum xlfd_field_mask): New enum.
14290 (intern_font_field): Changed argument. Change caller. If digits
14291 are followed by non-digits, return a symbol.
14292 (font_expand_wildcards): New function.
14293 (font_parse_xlfd): Fix wildcard handling.
14294 (Ffont_spec): If :name is specified, reflect the info in the other
14295 properties.
14296
14297 * ftfont.c (ftfont_pattern_entity): Fix typo.
14298 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
14299 locale.
14300
143012008-02-01 Kenichi Handa <handa@m17n.org>
14302
14303 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
14304
14305 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
14306 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
14307 registry doesn't specify encoding part.
14308 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
14309 (font_open_by_name): At first try parsing the name.
14310 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
14311 as Lisp symbols.
14312
14313 * fontset.c (reorder_font_vector): Pay attention to the case that
14314 the 3rd element of font_def is nil.
14315 (fontset_font): For the default fontset, append one more fontset
14316 elements for a script-based font specification. Don't add script
14317 attribute on finding a font.
14318 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
14319 font name.
14320 (fontset_ascii_font): If a font can't be opened, return nil.
14321
14322 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
14323 (ftfont_pattern_entity): New function.
14324 (ftfont_get_cache): Assume that freetype_font_cache is already
14325 initialized.
14326 (ftfont_list): Handle the case that a file is specified in font
14327 name. Use ftfont_pattern_entity to generate entities.
14328 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
14329 (syms_of_ftfont): Initialize freetype_font_cache.
14330
14331 * xftfont.c (xftfont_open): Make the font name fontconfig's
14332 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
14333 (xftfont_close): Free font->font.name if not NULL.
14334
14335 * xfont.c (xfont_list): If script is specified for a font, return
14336 null_vector.
14337 (xfont_list_family): Declare argument type.
14338
14339 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
14340 name, set LFACE_FONT (lface) to nil.
14341
14342 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
14343 return Qnil.
14344
143452008-02-01 Kenichi Handa <handa@m17n.org>
14346
14347 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
14348 (standard_args): Add "-enable-font-backend".
14349
143502008-02-01 Kenichi Handa <handa@m17n.org>
14351
14352 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
14353 (struct xftdraw_list, xftdraw_list): Delete them.
14354 (register_xftdraw, check_xftdraw): Delete them.
14355 (xftfont_prepare_face): Don't call register_xftdraw.
14356 (xftfont_done_face): Don't call check_xftdraw.
14357 (xftfont_draw): Get background color only when with_background is
14358 nonzero.
14359
14360 * xfont.c (xfont_encode_char): Fix calculation of char2b.
14361
143622008-02-01 Kenichi Handa <handa@m17n.org>
14363
14364 These changes are for the new font handling codes.
14365
14366 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
14367 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
14368 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
14369 (FONTSRC, FONTOBJ): New variables.
14370 (obj): Add $(FONTOBJ).
14371 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
14372 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
14373 @LIBOTF_LIBS@.
14374 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
14375 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
14376
14377 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
14378
14379 * character.h (Vscript_representative_chars): Extern it.
14380
14381 * character.c (Vscript_representative_chars): New variable.
14382 (syms_of_character): Declare it as a Lisp variable.
14383
14384 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
14385 enable_font_backend is nonzero, accept the composition method
14386 COMPOSITION_WITH_GLYPH_STRING.
14387
14388 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
14389 enumeration COMPOSITION_WITH_GLYPH_STRING.
14390
14391 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
14392 members clip_x, clip_y, clip_width, and clip_height.
14393 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14394
14395 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14396 --enable-font-backend. Call syms_of_font.
14397
14398 * fns.c (assoc_no_quit): New function.
14399
14400 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14401 (face_for_font, new_fontset_from_font)
14402 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14403
14404 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14405 (fontset_font, fontset_ascii, face_for_char)
14406 (make_fontset_for_ascii_face, Ffont_info)
14407 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14408 is nonzero, use font-backend mechanism.
14409 (find_font_encoding): Make it non-static.
14410 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14411 New functions.
14412
14413 * frame.h (struct frame): New members resx and resy.
14414 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14415 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14416
14417 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14418 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14419
14420 * lisp.h (assoc_no_quit): Extern it.
14421
14422 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14423 Through out the file, use FONT_INFO_FROM_FACE instead of
14424 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14425 rif->per_char_metric.
14426 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14427 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14428 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14429 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14430 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14431 nonzero, use font-backend mechanism.
14432 (get_per_char_metric): New function.
14433
14434 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14435 (set_lface_from_font_name)
14436 (set_font_frame_param, free_realized_face)
14437 (prepare_face_for_display, clear_face_gcs)
14438 (Finternal_set_font_selection_order, realize_x_face)
14439 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14440 font-backend mechanism.
14441 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14442 (load_face_font) [USE_FONT_BACKEND]: Abort.
14443 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14444 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14445
14446 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14447 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14448 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14449 nonzero, register all available font drivers. Call
14450 x_default_font_parameter for deciding a font.
14451 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14452
14453 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14454 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14455 (x_set_glyph_string_clipping_exactly)
14456 (x_compute_glyph_string_overhangs)
14457 (x_draw_glyph_string_foreground)
14458 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14459 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14460 enable_font_backend is nonzero, use font-backend mechanism.
14461 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14462
144632008-02-01 Kenichi Handa <handa@m17n.org>
14464
14465 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14466 system_eol_type.
14467 (syms_of_coding): Initialize system_eol_type.
14468
14469 * process.c (Fset_process_coding_system): Inherit system's eol
14470 format if necessary.
14471
144722008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14473
14474 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14475
144762008-02-01 Kenichi Handa <handa@m17n.org>
14477
14478 * coding.c (decode_eol): Pay attention to buffer relocation in
14479 del_range_2.
14480 (decode_coding): Call decode_eol before restoring undo_list.
14481
144822008-02-01 Kenichi Handa <handa@m17n.org>
14483
14484 * charset.c (Fdefine_charset_internal): Fix setting of
14485 emacs_mule_bytes.
14486
144872008-02-01 Kenichi Handa <handa@m17n.org>
14488
14489 * keyboard.c (read_char): Check if C is a character or not before
14490 looking up Vkeyboard_translate_table.
14491
144922008-02-01 Kenichi Handa <handa@m17n.org>
14493
14494 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14495 condition to terminate the loop.
14496
144972008-02-01 Kenichi Handa <handa@m17n.org>
14498
14499 * coding.c (produce_composition): Compare charbuf[i] instead of
14500 args[i] against 0.
14501 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14502
145032008-02-01 Kenichi Handa <handa@m17n.org>
14504
14505 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14506 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14507 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14508 detect_coding.
14509 (emacs_mule_char): Handle old style (Emacs 20) component character
14510 of a composition.
14511 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14512 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14513 composition rule.
14514 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14515
145162008-02-01 Kenichi Handa <handa@m17n.org>
14517
14518 * coding.c (encode_coding_ccl): Allocate destination dynamically
14519 when necessary.
14520
145212008-02-01 Kenichi Handa <handa@m17n.org>
14522
14523 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14524 the loop. When quitted, show a proper error message.
14525
145262008-02-01 Kenichi Handa <handa@m17n.org>
14527
14528 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14529 src->clip_head and src->clip_tail temporarily instead of src->hl.
14530
14531 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14532 character sequence.
14533 (Fccl_execute_on_string): Use ASET, not XSET.
14534
145352008-02-01 Kenichi Handa <handa@m17n.org>
14536
14537 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14538
145392008-02-01 Kenichi Handa <handa@m17n.org>
14540
14541 * coding.c (decode_coding): Fix the condition of terminating the
14542 decoding loop.
14543
145442008-02-01 Kenichi Handa <handa@m17n.org>
14545
14546 * data.c (Faset): On setting a character bigger than 255 in a
14547 unibyte string, signal an error instead of make the string multibyte.
14548
145492008-02-01 Kenichi Handa <handa@m17n.org>
14550
14551 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14552 made by a mapping table.
14553
145542008-02-01 Kenichi Handa <handa@m17n.org>
14555
14556 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14557 not.
14558 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14559 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14560
14561 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14562 s->face is NULL or not.
14563
145642008-02-01 Kenichi Handa <handa@m17n.org>
14565
14566 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14567 (x_draw_glyph_string): Fix drawing of right_overhang and
14568 left_overhang around/on cursor.
14569
14570 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14571
145722008-02-01 Kenichi Handa <handa@m17n.org>
14573
14574 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14575
145762008-02-01 Kenichi Handa <handa@m17n.org>
14577
14578 * coding.c (Fdefine_coding_system_internal)
14579 (Fdefine_coding_system_alias): Avoid a duplicated element in
14580 Vcoding_system_alist.
14581
145822008-02-01 Kenichi Handa <handa@m17n.org>
14583
14584 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14585
14586 * coding.c (Qcoding_system_define_form): New variable.
14587 (syms_of_coding): Intern and staticpro it.
14588 (Fcoding_system_p): Check Qcoding_system_define_form.
14589 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14590
14591 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14592 Fcoding_system_p.
14593 (CHECK_CODING_SYSTEM): If ID is not available, call
14594 Fcheck_coding_system.
14595 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14596 Try also Fcheck_coding_system.
14597
145982008-02-01 Kenichi Handa <handa@m17n.org>
14599
14600 * coding.c (code_conversion_restore): GCPRO arg.
14601
146022008-02-01 Kenichi Handa <handa@m17n.org>
14603
14604 * character.c (lisp_string_width): Check multibyteness of STRING.
14605
146062008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14607
14608 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14609 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14610 (decode_mac_font_name): Use decode_coding_c_string instead of
14611 decode_coding.
14612 (x_load_font): Initialize fontp->fontset to -1. Set
14613 fontp->encoding_type.
14614
146152008-02-01 Kenichi Handa <handa@m17n.org>
14616
14617 * search.c (search_buffer): Give up BM search on case-fold-search
14618 if one of a target character has a case-equivalence of different
14619 byte length even if that target charcter is an ASCII.
14620 (simple_search): Fix calculation of byte length of matched text.
14621 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14622
146232008-02-01 Kenichi Handa <handa@m17n.org>
14624
14625 * coding.c (decode_coding): Fix handling of invalid bytes.
14626
146272008-02-01 Kenichi Handa <handa@m17n.org>
14628
14629 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14630 Unicode characters.
14631
146322008-02-01 Kenichi Handa <handa@m17n.org>
14633
14634 * coding.c (encode_coding_object): If a pre-write-conversion
14635 function makes a new buffer, kill it.
14636
146372008-02-01 Kenichi Handa <handa@m17n.org>
14638
14639 * coding.c (QCascii_compatible_p): New variable.
14640 (syms_of_coding): Initialize it.
14641 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14642 calling string_char.
14643 (record_conversion_result): Add `default:' case.
14644 (coding_charset_list): Delete unused variable `coding_type'.
14645 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14646 property in the plist of the coding system.
14647 (Fcoding_system_put): Check QCascii_compatible_p.
14648
146492008-02-01 Miles Bader <miles@gnu.org>
14650
14651 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14652 removed calculation of frame `f', as it's now used.
14653
146542008-02-01 Kenichi Handa <handa@m17n.org>
14655
14656 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14657 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14658 (UNIDATA): New variable.
14659 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14660 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14661 $(RUN_TEMACS) unconditionally.
14662
146632008-02-01 Kenichi Handa <handa@m17n.org>
14664
14665 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14666 (admindir): New variable.
14667 ($(lispsource)international/charprop.el): New target.
14668
146692008-02-01 Miles Bader <miles@gnu.org>
14670
14671 * character.c (chars-in-region): Remove obsolete function.
14672 (syms_of_character): Remove its initialization.
14673
146742008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14675
14676 * w32select.c (validate_coding_system)
14677 (setup_windows_coding_system): New functions.
14678 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14679 setup_windows_coding_system.
14680 (setup_config, Fw32_get_clipboard_data): Use
14681 validate_coding_system.
14682 (Fx_selection_exists): Move call to setup_config to a place
14683 where signals are allowed.
14684
14685 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14686 (Fcheck_coding_system): Add declarations.
14687
146882008-02-01 Kenichi Handa <handa@m17n.org>
14689
14690 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14691
146922008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14693
14694 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14695 string as the second argument for x_new_fontset.
14696
146972008-02-01 Kenichi Handa <handa@m17n.org>
14698
14699 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14700 (encode_coding_object): Use safe_call instead of call2.
14701
147022008-02-01 Kenichi Handa <handa@m17n.org>
14703
14704 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14705
14706 * Makefile.in (lisp): Include charprop.el.
14707
147082008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14709
14710 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14711 Not sure if it's unnecessary.
14712
147132008-02-01 Steven Tamm <steventamm@mac.com>
14714
14715 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14716 some possibly unnecessary fontset checking code that crashed
14717 when creating a new frame.
14718
147192008-02-01 Kenichi Handa <handa@m17n.org>
14720
14721 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14722 lookup_face.
14723
14724 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14725
14726 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14727
147282008-02-01 Kenichi Handa <handa@m17n.org>
14729
14730 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14731 (coding_charset_list): New function.
14732
14733 * coding.h (coding_charset_list): Extern it.
14734
147352008-02-01 Kenichi Handa <handa@m17n.org>
14736
14737 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14738 concatenation of family and registry.
14739
147402008-02-01 Kenichi Handa <handa@m17n.org>
14741
14742 * character.h (BYTE8_STRING): Fix typo.
14743
14744 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14745 string to multibyte (sync to HEAD).
14746
14747 * casefiddle.c (casify_region): Handle changes in byte-length
14748 using replace_range_2 (sync to HEAD).
14749
147502008-02-01 Andreas Schwab <schwab@suse.de>
14751
14752 * chartab.c (map_char_table): GCPRO table and arg.
14753
147542008-02-01 Kenichi Handa <handa@m17n.org>
14755
14756 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14757 already at limit.
14758
147592008-02-01 Kenichi Handa <handa@m17n.org>
14760
14761 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14762 instead of fast_c_string_match_ignore_case.
14763 (find_font_encoding): Change argument to Lisp_Object. Use
14764 fast_string_match_ignore_case instead of
14765 fast_c_string_match_ignore_case. Change caller.
14766
147672008-02-01 Kenichi Handa <handa@m17n.org>
14768
14769 * xdisp.c (get_next_display_element): In unibyte case, decide to
14770 display in octal form by checking a character by
14771 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14772
14773 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14774
14775 * character.c (unibyte_has_multibyte_table): New variable.
14776
14777 * character.h (unibyte_has_multibyte_table): Extern it.
14778 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14779
147802008-02-01 Kenichi Handa <handa@m17n.org>
14781
14782 * coding.c (encode_coding_iso_2022): Fix handling of charset
14783 annotation.
14784
147852008-02-01 Kenichi Handa <handa@m17n.org>
14786
14787 * coding.c (setup_coding_system): If coding_system is nil, use
14788 Qundecided.
14789 (Fterminal_coding_system): Return nil if terminal coding system is
14790 `undecided'.
14791 (syms_of_coding): Define coding-system `undecided' here. Setup
14792 terminal_coding as `undecided'.
14793
147942008-02-01 Kenichi Handa <handa@m17n.org>
14795
14796 * xdisp.c (message_dolog, set_message_1): Call
14797 unibyte_char_to_multibyte with arg type int.
14798
14799 * lread.c (read1): Fix reading of a char-table.
14800
14801 * print.c (print_object): Include sub char-table in circularities
14802 detection.
14803
148042008-02-01 Kenichi Handa <handa@m17n.org>
14805
14806 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14807 Append the found sequences in car of ARGS instead of prepending.
14808
148092008-02-01 Kenichi Handa <handa@m17n.org>
14810
14811 * fileio.c (report_file_error): Make a unibyte string from
14812 strerror (errorno).
14813 (Fsubstitute_in_file_name): Fix the arg to
14814 unibyte_char_to_multibyte. It is evaluated twice.
14815
148162008-02-01 Kenichi Handa <handa@m17n.org>
14817
14818 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14819
148202008-02-01 Kenichi Handa <handa@m17n.org>
14821
14822 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14823 BOM is not found.
14824 (detect_coding, detect_coding_system): Optimization for ISO-2022
14825 when no 8-bit data is found.
14826
148272008-02-01 Jason Rumney <jasonr@gnu.org>
14828
14829 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14830
148312008-02-01 Kenichi Handa <handa@m17n.org>
14832
14833 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14834 CHARS.
14835
148362008-02-01 Steven Tamm <steventamm@mac.com>
14837
14838 * macterm.c (mac_encode_char): Add charset argument and update
14839 to use encoding_type.
14840 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14841 switch to pure fontset.
14842 (decode_mac_font_name): Temporarily remove decoding.
14843 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14844 (x_load_font): Temporarily remove encoding.
14845
148462008-02-01 Kenichi Handa <handa@m17n.org>
14847
14848 * xfaces.c (Fface_font): If frame is not on a window system,
14849 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14850 refer to face->font.
14851 (split_font_name_into_vector, build_font_name_from_vector)
14852 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14853 when HAVE_WINDOW_SYSTEM is defined.
14854
148552008-02-01 Kenichi Handa <handa@m17n.org>
14856
14857 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14858 (x_produce_glyphs): Fix setting of members of cmp in case
14859 cmp->glyph_len is zero.
14860
14861 * fontset.c (Fset_fontset_font): Fix docstring.
14862 (Ffontset_info): Make it backward compatible. New arg ALL.
14863
148642008-02-01 Kim F. Storm <storm@cua.dk>
14865
14866 * process.c (read_process_output): Grow decoding_buf when needed;
14867 this could cause a crash in allocate_string and compact_small_strings.
14868
148692008-02-01 Kenichi Handa <handa@m17n.org>
14870
14871 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14872
148732008-02-01 Kenichi Handa <handa@m17n.org>
14874
14875 * coding.c (setup_coding_system): Set coding->common_flags
14876 correctly for raw-text.
14877 (consume_chars): On encoding unibyte text by raw-text, don't check
14878 multibyte form.
14879 (encode_coding): On encoding by raw-text, never use translation tables.
14880
14881 * fileio.c (e_write): Short cut for the case of no encoding.
14882
148832008-02-01 Kenichi Handa <handa@m17n.org>
14884
14885 * coding.c (detect_coding, detect_coding_system): Delete unused
14886 variables.
14887
148882008-02-01 Kenichi Handa <handa@m17n.org>
14889
14890 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14891 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14892
148932008-02-01 Kenichi Handa <handa@m17n.org>
14894
14895 * coding.c (Ffind_coding_systems_region_internal): Include
14896 raw-text and no-conversion in the result.
14897
148982008-02-01 Kenichi Handa <handa@m17n.org>
14899
14900 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14901 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14902 FONT_DEF.
14903 (font_def_arg, add_arg, from_arg, to_arg): New args.
14904 (set_fontset_font): Change argument.
14905 (Fset_fontset_font): Fix for the case that TARGET is a script
14906 name and charset name.
14907 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14908
149092008-02-01 Kenichi Handa <handa@m17n.org>
14910
14911 * fontset.c (fontset_font): Rename from fontset_face. Change return
14912 value.
14913 (face_suitable_for_char_p, face_for_char): Adjust for the change
14914 of fontset_font.
14915 (make_fontset_for_ascii_face): Fix setting of the fontset element
14916 for ASCII.
14917 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14918 to get a font name.
14919 (Ffontset_info): Adjust for the change of fontset_font.
14920
14921 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14922
14923 * character.h (LEADING_CODE_LATIN_1_MIN)
14924 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14925
149262008-02-01 Kenichi Handa <handa@m17n.org>
14927
14928 * editfns.c (check_translation): New function.
14929 (Ftranslate_region_internal): Handle M:N mapping.
14930
149312008-02-01 Kenichi Handa <handa@m17n.org>
14932
14933 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14934
149352008-02-01 Kenichi Handa <handa@m17n.org>
14936
14937 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14938 goto invalid_code.
14939 (decode_coding_iso_2022): Fix handling of invalid designation.
14940
14941 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14942 after calling code_conversion_save.
14943
149442008-02-01 Kenichi Handa <handa@m17n.org>
14945
14946 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14947
14948 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14949
14950 * fontset.c: Include "intervals.h".
14951 (fontset_face): Fix comparing of Lisp_Objects.
14952 (free_face_fontset, new_fontset_from_font_name): Fix
14953 Lisp_Object/int mixup.
14954
14955 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14956
14957 * coding.c: Add many prototypes for static functions.
14958 (get_translation_table): Allow max_lookup to be NULL.
14959 (decode_coding, Ffind_coding_systems_region_internal)
14960 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14961 get_translation_table with max_lookup NULL.
14962
149632008-02-01 Kenichi Handa <handa@m17n.org>
14964
14965 * coding.c (get_translation_table): Declare it as Lisp_Object.
14966 (LOOKUP_TRANSLATION_TABLE): New macro.
14967 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14968 instead of CHAR_TABLE_REF.
14969
149702008-02-01 Kenichi Handa <handa@m17n.org>
14971
14972 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14973 annotation data format.
14974 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14975 Change arguments FROM and TO to single argument NCHARS. Change caller.
14976 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14977 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14978 (decode_coding_ccl, decode_coding_charset): Pay attention to
14979 coding->charbuf_used.
14980 (get_translation): New function.
14981 (produce_chars): New arguments translation_table and last_block.
14982 Translate characters here. Return number of carryover chars.
14983 Change caller.
14984 (produce_composition): New argument pos. Change caller.
14985 Adjust for the change of annotation data format.
14986 (produce_charset, produce_annotation): Likewise.
14987 (decode_coding, encode_coding): Don't call translate_chars.
14988 (consume_chars): New arg translation_table. Change caller.
14989 (translate_chars): Delete.
14990 (syms_of_coding): Make translation-table's number of extra slots 2.
14991
149922008-02-01 Kenichi Handa <handa@m17n.org>
14993
14994 * search.c (simple_search): Fix setting this_pos_byte in backward
14995 search.
14996
14997 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14998 byte sequence.
14999 (detect_coding_ccl): Fix setting of the variable valids.
15000
150012008-02-01 Kenichi Handa <handa@m17n.org>
15002
15003 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
15004
15005 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
15006
15007 * editfns.c (Ftranslate_region_internal): Rename from
15008 Ftranslate_region. Accept a char-table in TABLE.
15009 (syms_of_editfns): Defsubr Stranslate_region_internal.
15010
15011 * xfaces.c (set_lface_from_font_name): If a font is specified for
15012 a frame, generate a fontset from the font.
15013 (build_scalable_font_name): If the scalable font is requested for
15014 a specific size, don't change that size.
15015 (try_font_list): Try a scalable font also in the case that a
15016 pattern string is specified.
15017
150182008-02-01 Kenichi Handa <handa@m17n.org>
15019
15020 * xfaces.c (Fface_font): New optional arg CHARACTER.
15021
150222008-02-01 Kenichi Handa <handa@m17n.org>
15023
15024 * charset.h (CHARSET_OFFSET): New macro.
15025
150262008-02-01 Kenichi Handa <handa@m17n.org>
15027
15028 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
15029
15030 * fontset.c (fontset_face): Handle the case that repertory is a
15031 char-table.
15032 (find_font_encoding): Return nil for unknown encoding.
15033 (Fset_fontset_font): Ignore a font of unknown encoding.
15034
150352008-02-01 Kenichi Handa <handa@m17n.org>
15036
15037 * keymap.c (describe_vector): Handle default value of a char table.
15038
15039 * fontset.c (fontset_face): Handle fallback fonts correctly.
15040 (Ffontset_info): Return infomation about fallback fonts.
15041
150422008-02-01 Kenichi Handa <handa@m17n.org>
15043
15044 * fontset.c (FONTSET_DEFAULT): New macro.
15045 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
15046 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
15047 the case that it is nil.
15048 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
15049 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
15050
15051 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
15052 subset or superset.
15053
150542008-02-01 Kenichi Handa <handa@m17n.org>
15055
15056 * emacs.c (main): Call init_charset after syms_of_XXX.
15057
15058 * charset.c (Vcharset_map_directory): Delete.
15059 (Vcharset_map_path): New variable.
15060 (load_charset_map_from_file): Use Vcharset_map_path instead.
15061 (init_charset): Initialize Vcharset_map_path.
15062 (syms_of_charset): Delete declaration of "charset-map-directory",
15063 add declaration of "charset-map-path".
15064
150652008-02-01 Kenichi Handa <handa@m17n.org>
15066
15067 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
15068 ASCII only string.
15069
15070 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
15071
15072 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
15073 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
15074
150752008-02-01 Kenichi Handa <handa@m17n.org>
15076
15077 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
15078
15079 * coding.c (QCmnemonic, QCdefalut_char)
15080 (QCdecode_translation_table, QCencode_translation_table)
15081 (QCpost_read_conversion, QCpre_write_conversion): New variables.
15082 (get_translation_table): Return a list of translation tables if
15083 necessary.
15084 (decode_coding): Call get_translation_table with ENCODEP 0.
15085 (char_encodable_p): If translation_table is non-nil, always call
15086 translate_char.
15087 (Fdefine_coding_system_internal): Accept list of translation
15088 tables as :encode-translation-table and :decode-translation-table.
15089 (Fcoding_system_put): New function.
15090 (syms_of_coding): Declare new symbols. Defsubr
15091 Scoding_system_put.
15092 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
15093 typically JISX0212.
15094
15095 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
15096 when the charset is superset type.
15097
15098 * character.c (translate_char): Accept list of translation tables.
15099
151002008-02-01 Kenichi Handa <handa@m17n.org>
15101
15102 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
15103 (CODING_ATTR_TRANS_TBL): New macro.
15104
15105 * coding.c (get_translation_table): New function.
15106 (translate_chars): Fix the bug of skipping annotation data.
15107 (decode_coding, encode_coding): Utilize get_translation_table.
15108 (char_encodable_p, Funencodable_char_position): Translate char if
15109 necessary.
15110 (Ffind_coding_systems_region_internal)
15111 (Fcheck_coding_systems_region): Setup translation table for encode
15112 in a coding system attribute vector in advance.
15113 (Fdefine_coding_system_internal): Allow a symbol as translation
15114 table. For shift-jis type coding system, allow 4th charset.
15115
151162008-02-01 Kenichi Handa <handa@m17n.org>
15117
15118 * coding.c (decode_coding_sjis): Check the first byte rigidly.
15119
15120 * xdisp.c (get_next_display_element): Pass -1 as POS to
15121 FACE_FOR_CHAR if displaying a C-string.
15122
151232008-02-01 Kenichi Handa <handa@m17n.org>
15124
15125 * composite.c (get_composition_id): Handle xoff and yoff in a
15126 composition rule.
15127
15128 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
15129 (struct composition): New member lbearing and rbearing.
15130
15131 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
15132 (x_get_glyph_overhangs): Handle a composition glyph.
15133 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
15134
15135 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
15136 composition glyph.
15137
151382008-02-01 Kenichi Handa <handa@m17n.org>
15139
15140 * print.c: Include charset.h.
15141 (Vprint_charset_text_property): New variable.
15142 (Qdefault): Extern it.
15143 (PRINT_STRING_NON_CHARSET_FOUND)
15144 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
15145 (print_check_string_result): New variable.
15146 (print_check_string_charset_prop): New function.
15147 (print_prune_charset_plist): New variable.
15148 (print_prune_string_charset): New function.
15149 (print_object): Call print_prune_string_charset if
15150 Vprint_charset_text_property is not t.
15151 (print_interval): Print nothing if interval->plist is nil.
15152 (syms_of_print): Declare Vprint_charset_text_property as a lisp
15153 variable. Init and staticpro print_prune_charset_plist.
15154
151552008-02-01 Kenichi Handa <handa@m17n.org>
15156
15157 * fontset.c (new_fontset_from_font_name): Use the specified font
15158 for all characters in the new fontset.
15159
15160 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15161 OBJECT args.
15162
15163 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
15164 OBJECT args for composition too.
15165
15166 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15167 OBJECT args.
15168
151692008-02-01 Kenichi Handa <handa@m17n.org>
15170
15171 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
15172
15173 * fontset.c (reorder_font_vector): Adjust for the change of
15174 FONT_DEF format.
15175 (fontset_face): New arg id. Change caller.
15176 (face_for_char): New args pos and object.
15177 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
15178 (fs_query_fontset): Check NAME by Fassoc too.
15179 (Fset_fontset_font): Allow non-XLFD font name.
15180 (Ffontset_info): Adjust for the change of FONT_DEF format.
15181
15182 * fontset.h (face_for_char): Adjust prototype.
15183
15184 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
15185 (append_space, extend_face_to_end_of_line)
15186 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15187 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
15188
15189 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
15190 POS and OBJECT args.
15191
15192 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
15193 POS and OBJECT args.
15194
151952008-02-01 Jason Rumney <jasonr@gnu.org>
15196
15197 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
15198 of GlobalAlloc'ed memory.
15199
152002008-02-01 Kenichi Handa <handa@m17n.org>
15201
15202 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
15203
15204 * charset.h (charset_table_used): Delete extern.
15205
15206 * charset.c (charset_table_used): Make it static.
15207 (map_charset_chars): Fix args to c_function with.
15208
15209 * chartab.c (map_sub_char_table_for_charset): Fix args to
15210 c_function with.
15211
15212 * coding.h (enum coding_result_code): Delete
15213 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
15214
15215 * coding.c (Qinsufficient_source, Qinconsistent_eol)
15216 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
15217 (Vlast_code_conversion_error): New variables.
15218 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
15219 (ONE_MORE_BYTE): Record error if any instead of signaling an
15220 error. If non-ASCII multibyte char is found, return the negative
15221 value of the code. All callers changed to check it.
15222 (ONE_MORE_BYTE_NO_CHECK): Likewise.
15223 (record_conversion_result): New function. Change all codes setting
15224 coding->result to call this function.
15225 (detect_coding_utf_8, decode_coding_utf_8)
15226 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
15227 Don't use the local variable incomplete.
15228 (emacs_mule_char): Change the second arg to `const'.
15229 (decode_coding): Fix of flushing out unprocessed data.
15230 (make_conversion_work_buffer): Fix making of a work buffer.
15231 (decode_coding_object): Return coding->dst_object.
15232
15233 * fontset.c (set_fontset_font): Fix args.
15234
15235 * lisp.h (CHARACTERBITS): Define as 22.
15236
15237 * process.c (send_process): Be sure to set coding->src_multibyte.
15238
15239 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
15240
152412008-02-01 Kenichi Handa <handa@m17n.org>
15242
15243 * xdisp.c (handle_auto_composed_prop): Give limit to
15244 Fnext_single_char_property_change.
15245
152462008-02-01 Kenichi Handa <handa@m17n.org>
15247
15248 * composite.c (syms_of_composite): Don't make the composition hash
15249 table weak.
15250
15251 * fontset.c (Fset_fontset_font): Fix docstring.
15252
15253 * lisp.h (detect_coding_system): Adjust prototype.
15254
15255 * fileio.c (kill_workbuf_unwind): Delete this function.
15256 (Finsert_file_contents): Adjust the call of detect_coding_system.
15257 Get conversion_buffer by code_conversion_save. Use the macro
15258 CODING_MAY_REQUIRE_DECODING. After decoding, update
15259 coding_system.
15260
15261 * coding.h (make_conversion_work_buffer): Delete extern.
15262 (code_conversion_save): Extern it.
15263
15264 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
15265 (CODING_GET_INFO): Delete argument eol_type. Change callers.
15266 (decode_coding_utf_8): Don't do eol converion.
15267 (detect_coding_utf_16): Check coding->src_chars, not
15268 coding->src_bytes. Add heuristics for those that have no signature.
15269 (decode_coding_emacs_mule, decode_coding_iso_2022)
15270 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15271 Don't do eol converion.
15272 (adjust_coding_eol_type): Return a new coding system.
15273 (detect_coding): Don't detect eol. Fix for utf-16 detection.
15274 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
15275 each change.
15276 (decode_coding): Pay attention to undo_list. Do eol conversion for
15277 all types of coding-systems (if necessary).
15278 (Vcode_conversion_work_buf_list): Delete it.
15279 (Vcode_conversion_reused_workbuf): Rename from
15280 Vcode_conversion_reused_work_buf.
15281 (Vcode_conversion_workbuf_name): New variable.
15282 (reused_workbuf_in_use): New variable.
15283 (make_conversion_work_buffer): Delete the arg DEPTH.
15284 (code_conversion_restore): Change argument to cons.
15285 (code_conversion_save): Delete the argument BUFFER. Change callers.
15286 (detect_coding_system): New argument src_chars. Change callers.
15287 Fix for utf-16 detection.
15288 (init_coding_once): Don't use ISO_carriage_return.
15289 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
15290 reused_workbuf_in_use.
15291
152922008-02-01 Kenichi Handa <handa@m17n.org>
15293
15294 * keymap.c (store_in_keymap): Pay attention to the case that idx
15295 is a cons specifying a character range.
15296
152972008-02-01 Kenichi Handa <handa@m17n.org>
15298
15299 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
15300 HANDLED_RECOMPUTE_PROPS.
15301
15302 * coding.c (Fdefine_coding_system_internal): Fix checking of
15303 ascii compatibility.
15304
153052008-02-01 Kenichi Handa <handa@m17n.org>
15306
15307 * charset.c (find_charsets_in_text): Delete unused locale variable.
15308 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
15309
15310 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
15311 Resync charset_list to Vemacs_mule_charset_list.
15312
15313 * keymap.c (store_in_keymap): Pay attention to the case that idx
15314 is a cons specifying a character range.
15315
153162008-02-01 Kenichi Handa <handa@m17n.org>
15317
15318 * composite.c (update_compositions): Bind inhibit-read-only, etc
15319 to t before calling remove-list-of-text-properties.
15320
15321 * print.c (print_object): Always print ASCII chars as is.
15322
153232008-02-01 Kenichi Handa <handa@m17n.org>
15324
15325 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
15326
15327 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
15328 is a char table.
15329
153302008-02-01 Kenichi Handa <handa@m17n.org>
15331
15332 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
15333
153342008-02-01 Kenichi Handa <handa@m17n.org>
15335
15336 * xfaces.c (set_lface_from_font_name): Fix for the case that
15337 FONTNAME is not fontset name.
15338
153392008-02-01 Kenichi Handa <handa@m17n.org>
15340
15341 * fns.c (base64_encode_1): Fix previous change.
15342
153432008-02-01 Kenichi Handa <handa@m17n.org>
15344
15345 * fontset.c (set_fontset_font): New function.
15346 (Fset_fontset_font): If a font is specified for a charset, use
15347 map_charset_chars to store the font spec in a fontset.
15348
153492008-02-01 Kenichi Handa <handa@m17n.org>
15350
15351 * fontset.c (fontset_face): Create a fallback fontset on demand.
15352 (make_fontset): Don't create a fallback fontset here.
15353 (free_face_fontset): Free a fallback fontset (if any) too.
15354 (n_auto_fontsets): Delete this variable.
15355 (auto_fontset_alist): New variable.
15356 (new_fontset_from_font_name): Check auto_fontset_alist.
15357 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
15358 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
15359 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
15360 Defsubr Sfontset_list_all.
15361
153622008-02-01 Kenichi Handa <handa@m17n.org>
15363
15364 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
15365
153662008-02-01 Kenichi Handa <handa@m17n.org>
15367
15368 * fontset.c (Fnew_fontset): Check NAME more rigidly.
15369
153702008-02-01 Kenichi Handa <handa@m17n.org>
15371
15372 * editfns.c (Fgoto_char): Fix docstring.
15373
153742008-02-01 Kenichi Handa <handa@m17n.org>
15375
15376 * insdel.c (insert_from_gap): Adjust intervals correctly.
15377
153782008-02-01 Jason Rumney <jasonr@gnu.org>
15379
15380 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
15381 (pfnGetFontUnicodeRanges): New dynamically loaded function.
15382 (w32_initialize): Try to load it.
15383 (x_get_font_repertory): Use it if available.
15384 (w32_encode_char): Add shortcut for unicode output.
15385
15386 * w32fns.c (w32_load_system_font): Default charset to -1.
15387 (x_to_w32_charset): Match all fonts for unicode.
15388 (w32_to_x_charset): New parameter matching. Don't return partial
15389 or wildcard charsets.
15390 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
15391 (w32_codepage_for_font): Return CP_UNICODE for unicode.
15392 (w32_to_x_font): Match charset to real charset.
15393 (enum_font_cb2): Always list unicode versions.
15394
15395 * makefile.w32-in (temacs): Increase EMHEAP.
15396
153972008-02-01 Jason Rumney <jasonr@gnu.org>
15398
15399 * w32term.c (w32_encode_char): New charset parameter.
15400 font_info.encoding becomes encoding_type.
15401 (x_get_font_repertory): New function. Warning: stub only!
15402 (x_new_font): Return quickly if font already set.
15403 (x_new_fontset): fontsetname parameter is Lisp_Object.
15404 Use new fs_query_fontset. Try new_fontset_from_font_name.
15405 Use fontset_name for return value.
15406
15407 * w32term.h: Declare x_get_font_repertory.
15408
15409 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15410 place of find_charset_in_text. Use encode_coding_object in place
15411 of encode_coding.
15412 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15413 decode_coding.
15414
15415 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15416 of x_new_fontset.
15417 (w32_load_system_font): Initialize charset as unicode.
15418 font_info.encoding becomes encoding_type.
15419 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15420 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15421 (syms_of_w32fns): Set get_font_repertory_func.
15422
15423 * w32console.c: Include character.h. Use terminal_encode_buffer
15424 from term.c.
15425 (write_glyphs): Use new version of encode_terminal_code. Use
15426 encode_coding_object in place of encode_coding.
15427
15428 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15429 encoding becomes encoding_type.
15430
15431 * term.c (terminal_encode_buffer): Make externally visible.
15432
15433 * makefile.w32-in: Add character.h dependancies.
15434 (character.o, chartab.o): New targets.
15435
154362008-02-01 Kenichi Handa <handa@m17n.org>
15437
15438 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15439 CODING_ID_EOL_TYPE.
15440
154412008-02-01 Andreas Schwab <schwab@suse.de>
15442
15443 * coding.c (produce_chars): Revert last change.
15444
154452008-02-01 Kenichi Handa <handa@m17n.org>
15446
15447 * charset.h (charset_unicode): Extern it.
15448
15449 * charset.c (string_xstring_p): Check by (C >= 0x100).
15450 (find_charsets_in_text): Change format of the arc CHARSETS. New
15451 arg MULTIBYTE.
15452 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15453 change of find_charsets_in_text.
15454 (Fsplit_char): Fix doc. Never return unknown.
15455
15456 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15457
15458 * coding.c (Fdefine_coding_system_alias): Update
15459 Vcoding_system_list.
15460
15461 * fontset.c (load_font_get_repertory): Pay attention to the case
15462 that ENCODING of a font is specified by a char-table.
15463
15464 * xterm.c (x_get_font_repertory): Handle the case that the
15465 encoding of font is other than Unicode.
15466
154672008-02-01 Kenichi Handa <handa@m17n.org>
15468
15469 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15470 if a character is encodable by the terminal coding system. If
15471 not, produces proper number of `?'s. Update
15472 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15473 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15474
154752008-02-01 Kenichi Handa <handa@m17n.org>
15476
15477 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15478 variables.
15479 (encode_terminal_code): Change argument. Encode multiple
15480 characters at once. Store the result of encoding in
15481 terminal_encode_buffer.
15482 (write_glyphs, insert_glyphs): Adjust for the change of
15483 encode_terminal_code.
15484 (term_init): Initialize terminal_encode_buffer and
15485 terminal_encode_buf_size.
15486
15487 * coding.c (consume_chars): If coding->src_object is nil, don't
15488 check annotation.
15489
154902008-02-01 Kenichi Handa <handa@m17n.org>
15491
15492 * character.c (char_string): Use ASCII_CHAR_P instead of
15493 SINGLE_BYTE_CHAR_P.
15494
154952008-02-01 Kenichi Handa <handa@m17n.org>
15496
15497 * xdisp.c (handle_auto_composed_prop): Check if the last
15498 characters of auto-composed region is newly composed with the
15499 following characters.
15500 (handle_composition_prop): Fix checking of point being inside
15501 composition.
15502
155032008-02-01 Kenichi Handa <handa@m17n.org>
15504
15505 * fns.c (concat): Don't change multibyteness of the result by
15506 concatenating an 8-bit character.
15507
15508 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15509 multibyteness of the result when newelt is an 8-bit character.
15510
155112008-02-01 Dave Love <fx@gnu.org>
15512
15513 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15514 EMACS_INT.
15515
15516 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15517
15518 * xfaces.c (face_numeric_value): Declare dim size_t.
15519 (Finternal_lisp_face_equal_p): Remove unused f.
15520
15521 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15522 (MATRIX_ROW): Remove unused vars.
15523 (draw_glyphs, x_insert_glyphs, fast_find_position)
15524 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15525 byte/char counts.
15526
15527 * regex.c (regex_compile): Remove unused var.
15528
15529 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15530
15531 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15532 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15533
15534 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15535
15536 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15537
15538 * fileio.c (Fwrite_region): Remove unused var.
15539
15540 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15541 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15542
15543 * composite.c (Fremove_list_of_text_properties): Declare.
15544
15545 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15546 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15547 (coding_inherit_eol_type): Remove unused attrs.
15548 (detect_coding): Cast arg of detect_eol.
15549
15550 * charset.c (syms_of_charset): Remove unused var p.
15551 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15552 byte/char counts.
15553
15554 * casetab.c (set_case_table): Remove unused var.
15555
15556 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15557 unused vars.
15558
155592008-02-01 Dave Love <fx@gnu.org>
15560
15561 * xterm.c (x_bitmap_mask): Declare.
15562
155632008-02-01 Dave Love <fx@gnu.org>
15564
15565 * xterm.c (x_term_init): Fix type error.
15566
15567 * lisp.h: Add Funibyte_char_to_multibyte.
15568
15569 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15570 (Fset_coding_system_priority): Doc fix.
15571
15572 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15573
15574 * indent.c (check_composition): Make start and end EMACS_INT.
15575
15576 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15577
15578 * xdisp.c (handle_composition_prop, check_point_in_composition):
15579 Make buffer positions EMACS_INT.
15580
15581 * composite.c (find_composition, run_composition_function)
15582 (update_compositions, Ffind_composition_internal): Make buffer
15583 positions EMACS_INT.
15584
15585 * composite.h (find_composition, update_compositions): Make
15586 position args EMACS_INT.
15587
15588 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15589
15590 * intervals.c (get_property_and_range):
15591 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15592
15593 * unexalpha.c: Don't include varargs.h.
15594
155952008-02-01 Dave Love <fx@gnu.org>
15596
15597 * coding.h (ENCODE_UTF_8): New.
15598
15599 * Makefile.in (gtkutil.o): Depend on coding.h.
15600
15601 * coding.c (Fset_coding_system_priority): Doc fix.
15602
156032008-02-01 Kenichi Handa <handa@m17n.org>
15604
15605 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15606 the case of auto saving.
15607
156082008-02-01 Andreas Schwab <schwab@suse.de>
15609
15610 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15611 `range' from GC.
15612
156132008-02-01 Kenichi Handa <handa@m17n.org>
15614
15615 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15616
156172008-02-01 Kenichi Handa <handa@m17n.org>
15618
15619 * fileio.c (choose_write_coding_system): Return a decided coding system.
15620 (Fwrite_region): Set Vlast_coding_system_used to the return value
15621 of choose_write_coding_system.
15622
156232008-02-01 Kenichi Handa <handa@m17n.org>
15624
15625 * charset.c (Fset_charset_priority): Pay attention to duplicated
15626 arguments.
15627
15628 * coding.c (QCcategory): New variable.
15629 (syms_of_coding): Defsym it. Set all elements of
15630 Vcoding_category_table and their symbol values.
15631 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15632 coding-category-XXX, and coding-category-list.
15633 (Fdefine_coding_system_internal): Add category in the plist.
15634
156352008-02-01 Kenichi Handa <handa@m17n.org>
15636
15637 * callproc.c (Fcall_process): Handle carryover correctly.
15638
15639 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15640 (raw_text_coding_system): Check NILP (coding_system).
15641 (coding_inherit_eol_type): Check NILP (coding_system) and
15642 NILP (parent).
15643 (consume_chars): Fix for the case of raw-text.
15644
15645 * process.c (read_process_output): Handle carryover correctly.
15646
156472008-02-01 Dave Love <fx@gnu.org>
15648
15649 * regex.c (re_search_2): Fix last change.
15650
156512008-02-01 Kenichi Handa <handa@m17n.org>
15652
15653 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15654 target_multibyte. Even in a unibyte case, return a converted
15655 multibyte char.
15656 (GET_CHAR_AFTER): New macro.
15657 (PATFETCH): Translate via multibyte char.
15658 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15659 (SETUP_MULTIBYTE_RANGE): New macro.
15660 (regex_compile): Setup compiled code so that its multibyteness
15661 matches that of a target. Fix the handling of "[X-YZ]" using
15662 SETUP_MULTIBYTE_RANGE.
15663 (analyse_first) <charset>: For filling fastmap for all multibyte
15664 characters, don't check by BASE_LEADING_CODE_P.
15665 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15666 the same as RE_MULTIBYTE_P (bufp) now.
15667 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15668 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15669 (TRANSLATE_VIA_MULTIBYTE): New macro.
15670 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15671 It is the same as RE_MULTIBYTE_P (bufp) now.
15672 <exactn>: Translate via multibyte.
15673 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15674 translate it.
15675 <charset, charset_not>: Fetch a character by
15676 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15677 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15678 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15679 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15680 by GET_CHAR_AFTER.
15681 (bcmp_translate): Likewise.
15682
15683 * search.c (compile_pattern): Check the member target_multibyte,
15684 not the member multibyte of buf.
15685
15686 * lread.c (read1): While reading a string, set force_singlebyte
15687 and force_multibyte correctly.
15688
15689 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15690 up of unibyte_to_multibyte_table.
15691
156922008-02-01 Kenichi Handa <handa@m17n.org>
15693
15694 * coding.c (setup_coding_system): If coding has
15695 post-read-conversion or pre-write-conversion, set
15696 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15697 respectively.
15698 (decode_coding_gap): Run post-read-conversion if any.
15699
15700 * fileio.c (Finsert_file_contents): Even if we read into a
15701 unibyte buffer, check if we must decode the result or not.
15702
157032008-02-01 Kenichi Handa <handa@m17n.org>
15704
15705 * coding.c (make_conversion_work_buffer): Change the work buffer
15706 name to the same one as that of Emacs 21.
15707
157082008-02-01 Kenichi Handa <handa@m17n.org>
15709
15710 * coding.h (make_conversion_work_buffer): Adjust prototype.
15711 (code_conversion_restore): Don't extern it.
15712
15713 * coding.c (detected_mask): Delete unused variable.
15714 (decode_coding_iso_2022): Pay attention to the byte sequence of
15715 CTEXT extended segment, and retain those bytes as is.
15716 (decode_coding_ccl): Delete unused variable `valids'.
15717 (setup_coding_system): Delete unused variable `category'.
15718 (consume_chars): Delete unused variable `category'. Make it work
15719 for non-multibyte case.
15720 (make_conversion_work_buffer): Change argument.
15721 (saved_coding): Delete unused variable.
15722 (code_conversion_restore): Don't check saved_coding->destination.
15723 (code_conversion_save): New function.
15724 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15725 instead of record_unwind_protect.
15726 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15727 (detect_coding_system): Delete unused variable `mask'.
15728 (Fdefine_coding_system_internal): Delete unused variable id.
15729
15730 * fileio.c (kill_workbuf_unwind): New function.
15731 (Finsert_file_contents): On replacing, call
15732 make_conversion_work_buffer with correct args, and call
15733 record_unwind_protect with the first arg kill_workbuf_unwind.
15734
15735 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15736
157372008-02-01 Kenichi Handa <handa@m17n.org>
15738
15739 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15740 (fontset_add): Fix for the case that TO is less than TO1.
15741 (Ffontset_info): Don't use fallback fontset on checking the
15742 default fontset.
15743 (dump_fontset): New function for debugging.
15744
15745 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15746 coding_type is Qcharset.
15747
157482008-02-01 Kenichi Handa <handa@m17n.org>
15749
15750 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15751 (map_char_table): Don't inherit the value from the parent on
15752 initializing VAL. Adjust for the above change.
15753
157542008-02-01 Kenichi Handa <handa@m17n.org>
15755
15756 * coding.c (Qsignature, Qendian): Delete these variables.
15757 (syms_of_coding): Don't initialize them.
15758 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15759 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15760 detect_info->found.
15761 (decode_coding_utf_16): Don't detect BOM here.
15762 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15763 is NOT utf_16_without_bom.
15764 (setup_coding_system): For a coding system of type utf-16, check
15765 if the attribute :endian is Qbig or not (not nil or not), and set
15766 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15767 (detect_coding): If coding type is utf-16 and BOM detection is
15768 required, detect it.
15769 (Fdefine_coding_system_internal): For a coding system of type
15770 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15771
157722008-02-01 Kenichi Handa <handa@m17n.org>
15773
15774 * coding.c (coding_set_source): Fix for the case that the current
15775 buffer is different from coding->src_object.
15776 (decode_coding_object): Don't use the conversion work buffer if
15777 DST_OBJECT is a buffer.
15778
157792008-02-01 Dave Love <fx@gnu.org>
15780
15781 * lread.c (read_emacs_mule_char) [len==2]: Index
15782 emacs_mule_charset correctly.
15783
157842008-02-01 Dave Love <fx@gnu.org>
15785
15786 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15787 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15788 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15789 treated specially.)
15790 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15791 (detected_mask): Remove Big5 bits.
15792
157932008-02-01 Kenichi Handa <handa@m17n.org>
15794
15795 The following changes are to make the font rescaling facility
15796 compatible with Emacs 21.
15797
15798 * xfaces.c (Vface_font_rescale_alist): Rename from
15799 Vface_resizing_fonts.
15800 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15801 (font_rescale_ratio): Rename from font_resizing_ratio.
15802 (split_font_name): Set font->rescale_ratio.
15803 (better_font_p): Pay attention to font->rescale_ratio.
15804 (build_scalable_font_name): Likewise. Change RESX, and RESY
15805 fields.
15806 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15807
158082008-02-01 Kenichi Handa <handa@m17n.org>
15809
15810 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15811 (Qutf_16_le): Remove these variables.
15812 (syms_of_coding): Don't DEFSYM them.
15813 (decode_coding_utf_16): Fix handling of BOM.
15814 (encode_coding_utf_16): Fix handling of BOM.
15815
158162008-02-01 Kenichi Handa <handa@m17n.org>
15817
15818 * fileio.c (Finsert_file_contents): On replacing, before decoding
15819 the file into the work buffer, set point of the work buffer to the end.
15820
158212008-02-01 Dave Love <fx@gnu.org>
15822
15823 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15824
158252008-02-01 Dave Love <fx@gnu.org>
15826
15827 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15828 and fix C types.
15829
158302008-02-01 Kenichi Handa <handa@m17n.org>
15831
15832 * xdisp.c (SKIP_GLYPHS): New macro.
15833 (set_cursor_from_row): Pay attention to string display properties.
15834
15835 * category.c (copy_category_entry): Fix for the case that RANGE
15836 is an integer.
15837
15838 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15839
15840 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15841
158422008-02-01 Kenichi Handa <handa@m17n.org>
15843
15844 * charset.c (Fcharset_id_internal): New function.
15845 (syms_of_charset): Defsubr it.
15846
15847 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15848 with the last arg charset_list acquired from coding.
15849 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15850 the attribute coding_attr_ccl_valids.
15851
15852 * coding.h (enum define_coding_ccl_arg_index): Set the first
15853 member coding_arg_ccl_decoder to coding_arg_max.
15854
15855 * ccl.h (ccl_driver): Adjust prototype.
15856
15857 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15858 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15859 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15860 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15861 last arg Qnil.
15862
158632008-02-01 Kenichi Handa <handa@m17n.org>
15864
15865 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15866 call encode_char.
15867
15868 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15869
158702008-02-01 Dave Love <fx@gnu.org>
15871
15872 * composite.c (syms_of_composite): Make composition_hash_table weak.
15873
158742008-02-01 Kenichi Handa <handa@m17n.org>
15875
15876 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15877 (font_name_registry): Don't extern them.
15878 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15879
15880 * fontset.h (Qfontset): Don't extern it.
15881 (new_fontset_from_font_name): Extern it.
15882
15883 * fontset.c: Give 8 extra slots to fontset objects.
15884 (Qfontset_info): New variable.
15885 (syms_of_fontset): Defsym it.
15886 (FONTSET_FALLBACK): New macro.
15887 (fontset_face): Try also the default fontset.
15888 (make_fontset): Realize a fallback fontset from the default fontset.
15889 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15890 using split_font_name_into_vector and build_font_name_from_vector.
15891 (Fset_fontset_font): Access the elements of font_spec by enum
15892 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15893 name by using split_font_name_into_vector.
15894 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15895 generate a proper font name from the fontset name. Update
15896 Vfontset_alias_alist.
15897 (n_auto_fontsets): New variable.
15898 (new_fontset_from_font_name): New function.
15899 (Ffont_info): Store the information about fonts generated from the
15900 default fontset in the first extra slot of the returned char-table.
15901
15902 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15903 (font_name_registry): Delete function.
15904 (split_font_name_into_vector): New function.
15905 (build_font_name_from_vector): New function.
15906 (font_list): The argument REGISTRY is now a list of registry names.
15907 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15908 specifies an explicit font name, return the name as is. Make a
15909 list of registy names.
15910
15911 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15912 of x_new_fontset.
15913 (Fx_create_frame): Don't call x_new_fontset here. Just use
15914 x_list_fonts to check the existence of fonts.
15915
15916 * xterm.h (x_new_fontset): Adjust prototype.
15917
15918 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15919 string. Use new_fontset_from_font_name to create a fontset from a
15920 font name.
15921
159222008-02-01 Kenichi Handa <handa@m17n.org>
15923
15924 * syntax.c (Vfind_word_boundary_function_table): New name for
15925 Vnext_word_boundary_function_table.
15926 (find-word-boundary-function-table): New name for
15927 next-word-boundary-function-table.
15928
159292008-02-01 Dave Love <fx@gnu.org>
15930
15931 * Makefile.in: Fix some dependencies.
15932
15933 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15934 set it to nil before returning.
15935
15936 * composite.c (update_compositions): Fix type error.
15937
15938 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15939
159402008-02-01 Kenichi Handa <handa@m17n.org>
15941
15942 * xterm.c (x_new_font): Optimize for the case that the font is
15943 already set for the frame.
15944
159452008-02-01 Kenichi Handa <handa@m17n.org>
15946
15947 * chartab.c (char_table_ascii): Check if the char table contents
15948 is sub-char-table or not.
15949 (char_table_set, char_table_set_range): Fix argument to
15950 char_table_ascii.
15951
15952 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15953 (detect_coding_utf_8, detect_coding_utf_16)
15954 (detect_coding_emacs_mule, detect_coding_iso_2022)
15955 (detect_coding_sjis, detect_coding_big5)
15956 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15957 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15958 sequence is valid in this coding system. Change callers.
15959 (MAX_ANNOTATION_LENGTH): New macro.
15960 (ADD_ANNOTATION_DATA): New macro.
15961 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15962 ADD_ANNOTATION_DATA. Change the format of annotation data.
15963 (ADD_CHARSET_DATA): New macro.
15964 (emacs_mule_char): New argument ID. Change callers.
15965 (decode_coding_emacs_mule, decode_coding_iso_2022)
15966 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15967 Produce charset annotation data in coding->charbuf.
15968 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15969 to charset annotation data in coding->charbuf.
15970 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15971 coding->common_flags if the coding system is iso-2022 based and
15972 uses designation.
15973 (produce_composition): Adjust for the new annotation data format.
15974 (produce_charset): New function.
15975 (produce_annotation): Handle charset annotation.
15976 (handle_composition_annotation, handle_charset_annotation): New
15977 functions.
15978 (consume_chars): Handle charset annotation. Utilize the above two
15979 functions.
15980 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15981 buffer, get the deleted text as a string and set
15982 coding->src_object to that string.
15983 (detect_coding, detect_coding_system): Use the new struct
15984 coding_detection_info.
15985
15986 * coding.h (struct coding_detection_info): New structure.
15987 (struct coding_system): Adjust prototype of the member `detector'.
15988 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15989
159902008-02-01 Kenichi Handa <handa@m17n.org>
15991
15992 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15993
159942008-02-01 Dave Love <fx@gnu.org>
15995
15996 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15997 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15998 to new local and nullify apropos_accumulate before returning.
15999 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
16000
160012008-02-01 Kenichi Handa <handa@m17n.org>
16002
16003 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
16004 correctly.
e3eea1fc 16005
aac0c6e3
MR
160062008-02-01 Dave Love <fx@gnu.org>
16007
16008 * fns.c (Flanginfo): Call synchronize_system_time_locale.
16009
160102008-02-01 Kenichi Handa <handa@m17n.org>
16011
16012 The following changes are to make character composition happen
16013 automatically on displaying.
16014
16015 * Makefile.in (lisp, shortlisp): Add composite.elc.
16016
16017 * composite.h (Qauto_composed, Vauto_composition_function)
16018 (Qauto_composition_function): Extern them.
16019
16020 * composite.c (Vcomposition_function_table)
16021 (Qcomposition_function_table): Delete variables.
16022 (Qauto_composed, Vauto_composition_function)
16023 (Qauto_composition_function): New variables.
16024 (run_composition_function): Don't call
16025 compose-chars-after-function.
16026 (update_compositions): Clear `auto-composed' text property.
16027 (compose_chars_in_text): Delete this function.
16028 (syms_of_composite): Staticpro Qauto_composed and
16029 Qauto_composition_function. Declare Vauto_composition_function as
16030 a Lisp variable.
16031
16032 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
16033
16034 * xdisp.c (it_props): Add an entry for Qauto_composed.
16035 (handle_auto_composed_prop): New function.
16036
16037 * xselect.c (selection_data_to_lisp_data): Don't call
16038 compose_chars_in_text.
16039
160402008-02-01 Dave Love <fx@gnu.org>
16041
16042 * keyboard.c (read_char): Modify checking around use of
16043 Vkeyboard_translate_table.
16044
16045 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
16046 and fix C types.
16047
160482008-02-01 Kenichi Handa <handa@m17n.org>
16049
16050 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
16051 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
16052 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
16053 the case that the last byte is '\r' correctly.
16054 (decode_coding): Flush out the unprocessed data correctly.
16055 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
16056
160572008-02-01 Dave Love <fx@gnu.org>
16058
16059 * xterm.c (XTread_socket): Fix changes for defined keysyms.
16060 Add XK_ISO... case.
16061 (xaw_scroll_callback): Revert last change.
16062
160632008-02-01 Kenichi Handa <handa@m17n.org>
16064
16065 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
16066
160672008-02-01 Kenichi Handa <handa@m17n.org>
16068
16069 * xfaces.c (Vface_resizing_fonts): New variable.
16070 (struct font_name): New member `resizing_ratio'.
16071 (font_resizing_ratio): New function.
16072 (split_font_name): Set font->resizing_ratio.
16073 (better_font_p): Pay attention to font->resizing_ratio.
16074 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
16075 RESX, and RESY fields.
16076 (try_alternative_families): Try scalable fonts if
16077 Vscalable_fonts_allowed is not Qt.
16078 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
16079
160802008-02-01 Dave Love <fx@gnu.org>
16081
16082 * xterm.c (xaw_scroll_callback): Cast correctly.
16083
160842008-02-01 Dave Love <fx@gnu.org>
16085
16086 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
16087 (lispy_kana_keys): Comment out.
16088 (make_lispy_event) [XK_kana_A]: Comment out.
16089
16090 * xterm.c (xaw_scroll_callback): Cast call_data.
16091 (XTread_socket): Deal with ASCII keysyms.
16092 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
16093
160942008-02-01 Dave Love <fx@gnu.org>
16095
16096 * xterm.c (Vx_keysym_table): New.
16097 (syms_of_xterm): Initialize it.
16098 (XTread_socket): Use it.
16099 From head: Eliminate incorrect optimization that tried to avoid
16100 decoding the output of X*LookupString.
16101 (x_get_font_repertory): Delete charset declaration.
16102
161032008-02-01 Kenichi Handa <handa@m17n.org>
16104
16105 * coding.c (detect_coding_charset): If only ASCII bytes are found,
16106 return 0.
16107 (Fdefine_coding_system_internal): Setup
16108 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
16109
161102008-02-01 Dave Love <fx@gnu.org>
16111
16112 * coding.c (Fcheck_coding_system): Doc fix.
16113
16114 * editfns.c (Finsert_byte): Return a proper value.
16115
161162008-02-01 Kenichi Handa <handa@m17n.org>
16117
16118 * coding.c (decode_coding): Fix args to translate_chars. Pay
16119 attention to Vstandard_translation_table_for_decode.
16120 (encode_coding): Fix args to translate_chars. Pay attention to
16121 Vstandard_translation_table_for_encode.
16122
16123 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
16124 SINGLE_BYTE_CHAR_P.
16125
16126 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
16127 not by SINGLE_BYTE_CHAR_P.
16128
16129 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
16130 SINGLE_BYTE_CHAR_P.
16131
16132 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
16133 SINGLE_BYTE_CHAR_P.
16134
16135 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
16136 by SINGLE_BYTE_CHAR_P.
16137
16138 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
16139 SINGLE_BYTE_CHAR_P.
16140
161412008-02-01 Dave Love <fx@gnu.org>
16142
16143 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
16144
161452008-02-01 Dave Love <fx@gnu.org>
16146
16147 * fns.c (Flanginfo): Fix typo.
16148
16149 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
16150
161512008-02-01 Kenichi Handa <handa@m17n.org>
16152
16153 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
16154 (detect_coding_emacs_mule, detect_coding_iso_2022)
16155 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
16156 incomplete byte sequence. Don't update *mask when correctly detected.
16157 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
16158 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
16159 (detect_coding, detect_coding_system): Adjust for the changes above.
16160
161612008-02-01 Kenichi Handa <handa@m17n.org>
16162
16163 * character.c (char_string): Rename from
16164 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
16165 (string_char): Rename from string_char.
16166
16167 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
16168 if C is greater than MAX_3_BYTE_CHAR.
16169 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
16170 string_char instead of string_char_with_unification.
16171
161722008-02-01 Dave Love <fx@gnu.org>
16173
16174 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
16175
161762008-02-01 Kenichi Handa <handa@m17n.org>
16177
16178 * keymap.c (push_key_description): Pay attention to force_multibyte.
16179
16180 * regex.c (re_search_2): Fix for the case of unibyte buffer.
16181
161822008-02-01 Dave Love <fx@gnu.org>
16183
16184 * charset.c (define_charset_internal): Rename `supprementary'.
16185
16186 * Makefile.in (lisp, shortlisp): Remove latin-N.
16187
161882008-02-01 Dave Love <fx@gnu.org>
16189
16190 * xfns.c (x_window, x_window): Use use_xim.
16191
16192 * xterm.c (use_xim): Initialize.
16193 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
16194 (x_term_init): Maybe set use_xim.
16195
16196 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
16197
161982008-02-01 Kenichi Handa <handa@m17n.org>
16199
16200 * search.c (search_buffer): Fix case-fold-search of multibyte
16201 characters.
16202 (boyer_moore): Rename the last argument to char_high_bits.
16203
162042008-02-01 Kenichi Handa <handa@m17n.org>
16205
16206 * xdisp.c (display_string): Fix for the case of zero width glyph.
16207
16208 * xfns.c (x_set_font): Change the error message of the case that
16209 x_new_fontset returns Qt.
16210
16211 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
16212 (Finternal_set_lisp_face_attribute): Use signal_error for the
16213 error of invalid fontset.
16214
16215 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
16216 fontset, return Qt.
16217
162182008-02-01 Dave Love <fx@gnu.org>
16219
16220 * unexelf.c (unexec): Make .got handling not SGI-specific.
16221
16222 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
16223
16224 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
16225
16226 * keyboard.c (read_key_sequence): Fix type error.
16227
16228 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
16229 type error.
16230
16231 * fontset.c (fontset_add): Return Lisp_Object.
16232
162332008-02-01 Dave Love <fx@gnu.org>
16234
16235 * charset.h (charset_ordered_list_tick): Declare extern.
16236
162372008-02-01 Kenichi Handa <handa@m17n.org>
16238
16239 The following changes (and some of 2008-02-01 changes of mine) are
16240 for handling syntax, category, and case conversion for unibyte
16241 characters by converting them to multibyte on the fly. With these
16242 changes, we don't have to setup syntax and case tables for unibyte
16243 characters in each language environment.
16244
16245 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
16246 multibyte if necessary.
16247
16248 * bytecode.c (Fbyte_code): Likewise.
16249
16250 * character.h (LEADING_CODE_LATIN_1_MIN)
16251 (LEADING_CODE_LATIN_1_MAX): New macros.
16252 (unibyte_to_multibyte_table): Extern it.
16253 (unibyte_char_to_multibyte): New macro.
16254 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
16255 (CHAR_LEADING_CODE): New macro.
16256 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
16257
16258 * character.c (unibyte_to_multibyte_table): New variable.
16259 (unibyte_char_to_multibyte): Move to character.h and define as macro.
16260 (multibyte_char_to_unibyte): If C is an eight-bit character,
16261 convert it to the corresponding byte value.
16262
16263 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
16264 not 1, signals an error. Update the elements of
16265 unibyte_to_multibyte_table.
16266 (init_charset_once): Initialize unibyte_to_multibyte_table.
16267 (syms_of_charset): Define the charset `iso-8859-1'.
16268
16269 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
16270 as is without converting it to unibyte. In a unibyte buffer,
16271 convert C to multibyte before checking the syntax.
16272
16273 * lisp.h (unibyte_char_to_multibyte): Delete extern.
16274
16275 * minibuf.c (Fminibuffer_complete_word): Use the macro
16276 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
16277
16278 * regex.h (struct re_pattern_buffer): New member target_multibyte.
16279
16280 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
16281 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
16282 that is zero, convert an eight-bit char to multibyte.
16283 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
16284 non-emacs case.
16285 (PATFETCH): Convert an eight-bit char to multibyte.
16286 (HANDLE_UNIBYTE_RANGE): New macro.
16287 (regex_compile): Setup the compiled pattern for multibyte chars
16288 even if the given regex string is unibyte. Use PATFETCH_RAW
16289 instead of PATFETCH in many places. To handle `charset'
16290 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
16291 only for ASCII chars.
16292 (analyse_first) <exactn>: Simplify because the compiled pattern
16293 is multibyte.
16294 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
16295 <charset>: Use CHAR_LEADING_CODE to get leading codes.
16296 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
16297 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
16298 multibyte always 1.
16299 (re_search_2): In emacs, set the locale variable multibyte to 1,
16300 otherwise to 0. New local variable target_multibyte. Check it
16301 to decide the multibyteness of STR1 and STR2. If
16302 target_multibyte is zero, convert unibyte chars to multibyte
16303 before translating and checking fastmap.
16304 (TARGET_CHAR_AND_LENGTH): New macro.
16305 (re_match_2_internal): In emacs, set the locale variable multibyte
16306 to 1, otherwise to 0. New local variable target_multibyte. Check
16307 it to decide the multibyteness of STR1 and STR2. Use
16308 TARGET_CHAR_AND_LENGTH to fetch a character from D.
16309 <charset, charset_not>: If multibyte is nonzero, check fastmap
16310 only for ASCII chars. Call bcmp_translate with
16311 target_multibyte, not with multibyte.
16312 <begline>: Declare the local variable C as `unsigned'.
16313 (bcmp_translate): Change the last arg name to target_multibyte.
16314
16315 * search.c (compile_pattern_1): Don't adjust the multibyteness of
16316 the regexp pattern and the matching target. Set cp->buf.multibyte
16317 to the multibyteness of the regexp pattern. Set
16318 cp->but.target_multibyte to the multibyteness of the matching target.
16319 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
16320 FETCH_STRING_CHAR_ADVANCE.
16321 (Freplace_match): Convert unibyte chars to multibyte.
16322
16323 * syntax.c (char_quoted, back_comment, scan_words)
16324 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
16325 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
16326 unibyte chars to multibyte.
16327 (skip_chars): Delete the arg syntaxp, and move the code for
16328 handling syntaxes to skip_syntaxes. Change callers.
16329 Fix the case that the multibyteness of STRING and the current
16330 buffer doesn't match.
16331 (skip_syntaxes): New function.
16332 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
16333 SINGLE_BYTE_CHAR_P.
16334
163352008-02-01 Kenichi Handa <handa@m17n.org>
16336
16337 * xfaces.c (QCfontset): New variable.
16338 (LFACE_FONTSET): New macro.
16339 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
16340 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
16341 (Finternal_set_lisp_face_attribute)
16342 (Finternal_get_lisp_face_attribute): Handle QCfontset.
16343 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
16344 check also LFACE_FONTSET_INDEX.
16345 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
16346 attrs[LFACE_FONT_INDEX].
16347 (syms_of_xfaces): Intern and staticpro QCfontset.
16348
16349 * dispextern.h (enum lface_attribute_index): New member
16350 LFACE_FONTSET_INDEX.
16351
16352 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
16353
163542008-02-01 Kenichi Handa <handa@m17n.org>
16355
16356 * coding.c (coding_set_destination): Fix coding->destination for
16357 the case converting a region.
16358 (encode_coding_utf_8): Encode eight-bit chars as single byte.
16359 (encode_coding_object): Fix coding->dst_pos and
16360 coding->dst_pos_byte for the case converting a region.
16361
16362 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
16363
16364 * character.h (BYTE8_STRING): New macro.
16365
16366 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
16367
163682008-02-01 Kenichi Handa <handa@m17n.org>
16369
16370 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
16371 characters by octal form.
16372
16373 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16374
16375 * buffer.h (_fetch_multibyte_char_len): Delete extern.
16376 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
16377 _fetch_multibyte_char_len.
16378 (FETCH_CHAR_AS_MULTIBYTE): New macro.
16379
16380 * casetab.c (set_canon, set_identity, shuffle): Simplify.
16381
16382 * casefiddle.c (casify_object): Simplify. Handle the case that
16383 the case conversion change the byte length.
16384 (casify_region): Likewise.
16385
16386 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
16387
16388 * character.c (_fetch_multibyte_char_len): Delete this variable.
16389 (syms_of_character): Setup Vprintable_chars.
16390
16391 * editfns.c (Fchar_equal): Fix for the unibyte case.
16392 (Finsert_byte): New function.
16393 (syms_of_editfns): Defsubr it.
16394
16395 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16396 of direct code 0x3ffff.
16397
16398 * search.c (Freplace_match): Fix for the unibyte case.
16399
164002008-02-01 Kenichi Handa <handa@m17n.org>
16401
16402 * lread.c (safe_to_load_p): Fix the logic.
16403
16404 * syntax.c (scan_words): Don't treat characters belonging to
16405 different scripts as constituting a word.
16406
16407 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16408
16409 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16410
16411 * emacs.c (main): In the case of --unibyte, instead of aborting on
16412 finding non-empty buffer, make it unibyte.
16413
164142008-02-01 Kenichi Handa <handa@m17n.org>
16415
16416 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16417 to create a fontset.
16418
164192008-02-01 Dave Love <fx@gnu.org>
16420
16421 * character.c (Funibyte_char_to_multibyte): Doc fix.
16422
16423 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16424
164252008-02-01 Kenichi Handa <handa@m17n.org>
16426
16427 * fontset.c (fontset_add): Make the type `int'.
16428 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16429
16430 * character.c (unibyte_char_to_multibyte)
16431 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16432 charset_unibyte, not charset_primary.
16433
16434 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16435
16436 * charset.c (charset_unibyte): Rename from charset_primary.
16437 (Funibyte_charset): Rename from Fprimary_charset.
16438 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16439 (syms_of_charset): Adjust for the above changes.
16440
16441 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16442 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16443 it->multibyte_p is zero.
16444
16445 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16446 Delete extern.
16447
164482008-02-01 Kenichi Handa <handa@m17n.org>
16449
16450 * coding.c (Fdefine_coding_system_internal): Fix category setting
16451 for a coding system of type iso-2022.
16452
164532008-02-01 Kenichi Handa <handa@m17n.org>
16454
16455 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16456
164572008-02-01 Kenichi Handa <handa@m17n.org>
16458
16459 * syntax.c (Vnext_word_boundary_function_table): New variable.
16460 (next-word-boundary-function-table): Declare it as a Lisp variable
16461 in syms_of_syntax.
16462 (scan_words): Call functions in Vnext_word_boundary_function_table
16463 if any.
16464
16465 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16466
16467 * fontset.c (fs_load_font): If fontp->charset is not negative,
16468 return fontp without setting its members.
16469
164702008-02-01 Dave Love <fx@gnu.org>
16471
16472 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16473
16474 * m/sparc.h (HAVE_ALLOCA): Delete.
16475
16476 * s/irix6-5.h: Don't include strings.h.
16477 (bcopy, bzero, bcmp): Don't undef.
16478
16479 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16480
16481 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16482 (TIOCSIGSEND): Don't test IRIX6.
16483 (bcopy, bzero, bcmp): Define conditionally.
16484
164852008-02-01 Kenichi Handa <handa@m17n.org>
16486
16487 * buffer.c (Qas, Qmake, Qto): New variables.
16488 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16489 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16490
16491 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16492 we are inserting a process output into a multibyte buffer.
16493
16494 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16495 multibyte_char_to_unibyte.
16496
16497 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16498 by the primary charset, make it eight-bit char.
16499 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16500
16501 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16502 (charset_8_bit__control, charset_8_bit_graphic)
16503 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16504 (define_charset_internal): New function.
16505 (syms_of_charset): Call define_charset_internal for pre-defined
16506 charsets.
16507
16508 * charset.h (charset_8_bit): Extern it.
16509
16510 * coding.c (make_conversion_work_buffer): Adjust for the change
16511 of Fset_buffer_multibyte.
16512 (encode_coding_raw_text): Increment p0 in the loop.
16513
16514 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16515
16516 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16517 for the change of Fset_buffer_multibyte.
16518
16519 * fns.c (Fstring_to_multibyte): New function.
16520 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16521
165222008-02-01 Dave Love <fx@gnu.org>
16523
16524 * xfns.c (x_put_x_image): Declare args.
16525
16526 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16527 (try_font_list): Declare an arg.
16528
16529 * xdisp.c (message2_nolog, set_message): Declare an arg.
16530
16531 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16532
16533 * syntax.c (scan_sexps_forward): Declare an arg.
16534
16535 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16536 Declare an arg.
16537
16538 * lisp.h (Fnew_fontset): Declare.
16539
16540 * keymap.c (push_key_description): Call CHARACTERP correctly.
16541
16542 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16543 (face_for_char): Delete unused vars.
16544 (Fset_fontset_font): Doc fix. Delete unused vars.
16545
16546 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16547
16548 * composite.c (update_compositions): Declare arg.
16549
16550 * cm.c (calccost, cmgoto): Declare args.
16551
16552 * charset.c: Remove `emacs' conditional. Doc fixes.
16553 (map_char_table_for_charset): Declare.
16554
16555 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16556
16557 * ccl.c: Remove `emacs' conditional.
16558
165592008-02-01 Kenichi Handa <handa@m17n.org>
16560
16561 The following changes are to allow specifying multiple font
16562 patterns for a character range (specified by script or charset).
16563
16564 * Makefile.in (abbrev.o): Depend on syntax.h.
16565 (xfaces.o): Depend on charset.h.
16566
16567 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16568 SINGLE_BYTE_CHAR_P.
16569
16570 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16571
16572 * character.h (Vchar_script_table): Extern it.
16573
16574 * character.c (Vscript_alist): Delete.
16575 (Vchar_script_table, Qchar_script_table): New variable.
16576 (syms_of_character): Declare Vchar_script_table as a lisp variable
16577 and initialize it.
16578
16579 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16580 have property char-table-extra-slots, make no extra slot.
16581
16582 * dispextern.h (struct face): Delete member `charset'.
16583 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16584 SINGLE_BYTE_CHAR_P.
16585 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16586 Add prototypes.
16587 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16588 (generate_ascii_font_name): Rename from generate_ascii_font.
16589
16590 * fontset.h (get_font_repertory_func): New prototype.
16591 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16592 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16593
16594 * fontset.c (Qprepend, Qappend): New variables.
16595 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16596 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16597 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16598 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16599 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16600 (load_font_get_repertory): New functions.
16601 (fontset_set): Delete.
16602 (fontset_face): New arg FACE. Return face ID, not face.
16603 Complete re-write to handle new fontset structure. Change caller.
16604 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16605 (face_for_char): Don't call lookup_face.
16606 (make_fontset_for_ascii_face): New arg FACE.
16607 (fs_load_font): New arg CHARSET_ID. Don't check
16608 Vfont_encoding_alist here.
16609 (find_font_encoding): New function.
16610 (list_fontsets): Use STRINGP, not ! NILP.
16611 (accumulate_script_ranges): New function.
16612 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16613 re-written to handle new fontset structure.
16614 (Ffontset_font): Return a copy of element.
16615 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16616 docstring of font-encoding-alist.
16617
16618 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16619 (Fset_fotset_font): Fix arguments to 5.
16620
16621 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16622
16623 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16624 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16625 (highlight_trailing_whitespace): Adjust for the change of
16626 lookup_named_face.
16627
16628 * xfaces.c: Include charset.h.
16629 (load_face_font): Delete argument C. Change caller.
16630 (generate_ascii_font_name): Rename from generate_ascii_font.
16631 (font_name_registry): New function.
16632 (cache_face): Store ascii faces before non-ascii faces in buckets.
16633 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16634 Lookup only ascii faces.
16635 (lookup_non_ascii_face): New function.
16636 (lookup_named_face): Delete argument C. Change caller.
16637 (lookup_derived_face): Delete argument C. Change caller.
16638 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16639 a string, just call font_list with it.
16640 (choose_face_font): Delete arguments FACE and C. New arg
16641 FONT_SPEC. Change caller.
16642 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16643 Change caller.
16644 (realize_non_ascii_face): New function.
16645 (realize_x_face): Call load_face_font here.
16646 (realize_tty_face): Delete argument C. Change caller.
16647 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16648 get a face ID.
16649 (dump_realized_face): Don't print charset of FACE.
16650
16651 * xfns.c (x_set_font): Always call x_new_fontset and
16652 store_frame_parameter.
16653 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16654 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16655
16656 * xterm.h (x_get_font_repertory): Extern it.
16657
16658 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16659 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16660 it->multibyte_p is zero.
16661 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16662 (x_new_fontset): If FONTSETNAME doesn't match any existing
16663 fontsets, create a new one.
16664 (x_get_font_repertory): New function.
16665
166662008-02-01 Kenichi Handa <handa@m17n.org>
16667
16668 * coding.c (Ffind_coding_systems_region_internal): Detect an
16669 ASCII only string correctly.
16670
16671 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16672 version is 0.
16673
166742008-02-01 Kenichi Handa <handa@m17n.org>
16675
16676 * lread.c: Include "coding.h".
16677 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16678 (load_each_byte, unread_char): New variables.
16679 (readchar_backlog): Delete.
16680 (readchar): Return a character unless load_each_byte is nonzero.
16681 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16682 cons. If unread_char is not -1, simply return it.
16683 (unreadchar): Handle the case that readcharfun is
16684 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16685 (read_multibyte): Delete.
16686 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16687 (read_emacs_mule_char): New functions.
16688 (Fload): Even if the file doesn't have the extension ".elc", if
16689 safe_to_load_p returns a positive version number, assume that the
16690 file contains bytecompiled code. If the version is less than 22,
16691 load the file while decoding multibyte sequences by emacs-mule.
16692 (readevalloop): Don't use readchar_backlog.
16693 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16694 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16695 (read_escape): Delete the arg BYTEREP.
16696 (read1): Set load_each_byte to 1 temporarily while handling
16697 #@NUMBER. Don't call read_multibyte.
16698 (read_vector): Call Fread with a cons. If readcharfun is
16699 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16700 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16701 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16702 and Qload_force_doc_strings.
16703
167042008-02-01 Kenichi Handa <handa@m17n.org>
16705
16706 * xdisp.c (face_before_or_after_it_pos): Call
16707 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16708
167092008-02-01 Kenichi Handa <handa@m17n.org>
16710
16711 * character.h (TRAILING_CODE_P): New macro.
16712 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16713 (string_char_with_unification): Fix prototype.
16714 (Vscript_alist): Extern it.
16715
16716 * character.c (Vscript_alist): New variable.
16717 (string_char_with_unification, str_as_unibyte)
16718 (string_escape_byte8): Add `const' to local variables.
16719 (syms_of_character): Declare script-alist as a Lisp variable.
16720
16721 * charset.h (Vcharset_ordered_list): Extern it.
16722 (charset_ordered_list_tick): Extern it.
16723 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16724 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16725 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16726 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16727 (Funify_charset): Adjust for the change of Funify_charset.
16728
16729 * charset.c (charset_ordered_list_tick): New variable.
16730 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16731 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16732 deunify intead of unify a charset.
16733 (string_xstring_p): Add `const' to local variables.
16734 (find_charsets_in_text): Add `const' to arguments and local variables.
16735 (encode_char): Adjust for the change of Funify_charset. Fix
16736 detecting of invalid code.
16737 (Fset_charset_priority): Increment charset_ordered_list_tick.
16738 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16739 and TO_CODE.
16740
16741 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16742 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16743 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16744 (decode_coding_ccl, consume_chars)
16745 (Ffind_coding_systems_region_internal)
16746 (Fcheck_coding_systems_region): Add `const' to local variables.
16747
16748 * print.c (print_object): Use octal form for printing the
16749 contents of a bool vector.
16750
167512008-02-01 Dave Love <fx@gnu.org>
16752
16753 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16754 <version == 20>: Refuse to load.
16755
167562008-02-01 Dave Love <fx@gnu.org>
16757
16758 * fns.c: Move coding.h.
16759 (Qcodeset, Qdays, Qmonths): New.
16760 (concat): Use CHARACTERP instead of INTEGERP.
16761 (Flocale_codeset): Delete.
16762 (Flanginfo): New function.
16763 (syms_of_fns): Change accordingly.
16764
16765 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16766
167672008-02-01 Dave Love <fx@gnu.org>
16768
16769 * casetab.c (init_casetab_once, init_casetab_once): Fix
16770 CHAR_TABLE_SET call.
16771
16772 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16773
16774 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16775
16776 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16777 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16778 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16779
16780 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16781
16782 * coding.c (ENCODE_DESIGNATION, decode_eol)
16783 (make_conversion_work_buffer, code_conversion_restore)
16784 (Fdefine_coding_system_internal): Convert Lisp types.
16785 (code_conversion_restore): Use EQ, not ==.
16786 (Fencode_coding_string): Fix code_convert_string call.
16787
16788 * coding.h (code_convert_region): Fix prototype.
16789
16790 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16791
16792 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16793 (Ffontset_info): Convert Lisp types.
16794
16795 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16796
16797 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16798
16799 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16800
16801 * chartab.c: Include "...h", not <...h> in some cases.
16802
16803 * callproc.c (Fcall_process): Remove unused variables.
16804
168052008-02-01 Dave Love <fx@gnu.org>
16806
16807 * coding.c (Fset_coding_system_priority): Allow null arg list.
16808
168092008-02-01 Dave Love <fx@gnu.org>
16810
16811 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16812 (Fself_insert_and_exit): Use CHARACTERP.
16813
16814 * callproc.c (Fcall_process): Remove unused vars.
16815
16816 * xterm.c (XTread_socket): Add extra dead keysyms.
16817
16818 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16819
16820 * dispextern.h: Remove prototypes for redraw_frame,
16821 redraw_garbaged_frames.
16822
16823 * cmds.c (Fself_insert_command): Use CHARACTERP.
16824
16825 * chartab.c (make_sub_char_table): Remove unused var.
16826 (Fset_char_table_default, Fmap_char_table): Doc fix.
16827
16828 * keymap.c (access_keymap): Remove generic char code.
16829 (push_key_description): Use CHARACTERP.
16830
168312008-02-01 Dave Love <fx@gnu.org>
16832
16833 * charset.c: Doc fixes.
16834 (Funify_charset): Extra checking.
16835
168362008-02-01 Dave Love <fx@gnu.org>
16837
16838 * lread.c: Remove some unused variables.
16839 (safe_to_load_p): If safe, return the magic number version byte.
16840 (Fload): Maybe use load-with-code-conversion.
16841
168422008-02-01 Kenichi Handa <handa@m17n.org>
16843
16844 * category.c (Fmodify_category_entry): Don't modify the contents
16845 of category_set for characters out of the range. Avoid
16846 unnecessary modification.
16847
16848 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16849 Vchar_unify_table. The default value of the table is now nil.
16850
16851 * character.c (syms_of_character): Setup Vchar_width_table for
16852 eight-bit-control and raw-byte chars.
16853
16854 * charset.h (enum define_charset_arg_index): Delete
16855 charset_arg_parents and add charset_arg_subset and
16856 charset_arg_superset.
16857 (enum charset_attr_index): Delete charset_parents and add
16858 charset_subset and charset_superset.
16859 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16860 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16861 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16862 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16863 (CHARSET_SUPERSET): New macros.
16864 (charset_work): Extern it.
16865 (ENCODE_CHAR): Use charset_work.
16866 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16867 (map_charset_chars): Extern it.
16868
16869 * charset.c (load_charset_map): Set the default value of encoder
16870 and deunifier char-tables to nil.
16871 (map_charset_chars): Change argument. Change callers. Use
16872 map_char_table_for_charset instead of map_char_table.
16873 (Fmap_charset_chars): New optional args from_code and to_code.
16874 (Fdefine_charset_internal): Adjust for the change of
16875 `define-charset' (:parents -> :subset or :superset).
16876 (charset_work): New variable.
16877 (encode_char, syms_of_charset): Adjust for the change of
16878 Fdefine_charset_internal.
16879 (Ffind_charset_string): Setup the vector `charsets' correctly.
16880
16881 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16882 the previous change.
16883 (char_table_ref_and_range): Adjust for the above change.
16884 (map_sub_char_table_for_charset): New function.
16885 (map_char_table_for_charset): New function.
16886
16887 * keymap.c (describe_vector): Handle a char-table directly here.
16888 (describe_char_table): Delete.
16889
16890 * lisp.h (map_charset_chars): Delete.
16891
168922008-02-01 Dave Love <fx@gnu.org>
16893
16894 * fns.c (count_combining): Comment out (unused).
16895 (Flocale_codeset): New.
16896 (syms_of_fns): Defsubr it.
16897
16898 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16899 (size_t): Remove.
16900
169012008-02-01 Dave Love <fx@gnu.org>
16902
16903 * Makefile.in (chartab.o): Depend on charset.h.
16904
169052008-02-01 Kenichi Handa <handa@m17n.org>
16906
16907 * character.c (syms_of_character): Set the default value of
16908 Vprintable_chars to Qnil.
16909
169102008-02-01 Dave Love <fx@gnu.org>
16911
16912 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16913
169142008-02-01 Kenichi Handa <handa@m17n.org>
16915
16916 * charset.c (load_charset_map): Handle the case that from < to
16917 correctly.
16918
16919 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16920 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16921 Pay attention to raw-8-bit chars.
16922
169232008-02-01 Kenichi Handa <handa@m17n.org>
16924
16925 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16926 It is not bytecompiled now.
16927
16928 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16929 (charset_jisx0208): New variables.
16930 (Fdefine_charset_internal): Setup them if appropriate.
16931 (init_charset_once): Initialize them to -1.
16932
16933 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16934 (charset_jisx0208): Extern them.
16935
16936 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16937 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16938 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16939 (setup_iso_safe_charsets): Fix arguments to Fassq.
16940 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16941 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16942 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16943 (encode_coding_iso_2022): Change the 1st arg to
16944 ENCODE_ISO_CHARACTER to a variable.
16945
169462008-02-01 Kenichi Handa <handa@m17n.org>
16947
16948 * charset.h (enum define_charset_arg_index): New enums
16949 charset_arg_min_code and charset_arg_max_code.
16950 (struct charset): New member char_index_offset.
16951
16952 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16953 Take charset->char_index_offset into account.
16954 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16955 args[charset_arg_max_code]. Setup charset.char_index_offset.
16956 (syms_of_charset): Fix args to Fdefine_charset_internal.
16957
169582008-02-01 Dave Love <fx@gnu.org>
16959
16960 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16961
169622008-02-01 Dave Love <fx@gnu.org>
16963
16964 * coding.c: Doc fixes.
16965 (Fcoding_system_aliases): Fix return value.
16966 (Qmac): Remove (duplicated) definition.
16967
169682008-02-01 Dave Love <fx@gnu.org>
16969
362654a6
JB
16970 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16971 New functions.
aac0c6e3
MR
16972
16973 * character.c (Fstring): Doc fix.
16974
16975 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16976
362654a6 16977 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
16978 (font-encoding-alist): Doc fix.
16979
169802008-02-01 Dave Love <fx@gnu.org>
16981
16982 * term.c (costs_set): Declare static, non-initialized for pcc.
16983 (encode_terminal_code): Remove unused var.
16984
16985 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16986 for K&R.
16987
16988 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16989
16990 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16991 (suffixes): Move out of make_subsidiaries for K&R.
16992
16993 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16994
16995 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16996
169972008-02-01 Dave Love <fx@gnu.org>
16998
16999 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
17000
17001 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
17002
170032008-02-01 Yong Lu <lyongu@asia-infonet.com>
17004
17005 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
17006
17007 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
17008
170092008-02-01 Kenichi Handa <handa@m17n.org>
17010
17011 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
17012 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
17013
170142008-02-01 Kenichi Handa <handa@m17n.org>
17015
17016 * coding.c (decode_coding_charset): Adjust for the change of
17017 Fdefine_coding_system_internal.
17018 (Fdefine_coding_system_internal): For a coding system of
17019 `charset' type, store a list of charset IDs in
17020 `charset_attr_charset_valids' element of coding attributes.
17021
170222008-02-01 Kenichi Handa <handa@m17n.org>
17023
17024 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
17025 (emacs_mule_char): New arg src. Delete arg `composition'. Change
17026 caller. Handle 2-byte and 3-byte charsets correctly.
17027 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
17028 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
17029 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
17030 (DECODE_EMACS_MULE_21_COMPOSITION): Call
17031 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
17032 sequence.
17033 (decode_coding_emacs_mule): Handle composition correctly. Rewind
17034 `src' and `consumed_chars' correctly before calling emacs_mule_char.
17035 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
17036 and alt&rule composition.
17037 (decode_coding_iso_2022): Handle composition correctly.
17038 (init_coding_once): Setup emacs_mule_bytes for private charsets.
17039
17040 * charset.c (Fdefine_charset_internal): Fix bug for the case of
17041 re-defining a charset. If the charset has :emacs-mule-id, setup
17042 emacs_mule_bytes.
17043 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
17044
170452008-02-01 Kenichi Handa <handa@m17n.org>
17046
17047 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
17048 (encode_coding_big5, encode_coding_charset): If coding requires safe
17049 encoding, produce a character specified by
17050 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
17051
170522008-02-01 Dave Love <fx@gnu.org>
17053
17054 * xterm.c (XSetIMValues): Declare.
17055
17056 * process.c: Conditionally include sys/wait.h, pty.h.
17057
17058 * print.c (print_object): Fix print format for 64-bit systems.
17059
17060 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
17061
17062 * buffer.c (emacs_strerror): Declare.
17063
17064 * fontset.c (Fclear_face_cache): Declare.
17065 (accumulate_font_info): Comment-out (unused).
17066 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
17067 variables.
17068
17069 * character.h (string_escape_byte8): Declare.
17070
17071 * charset.c (load_charset_map, load_charset_map_from_file): Remove
17072 unused vars.
17073 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
17074 (Fmap_charset_chars): Doc fix.
17075
17076 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
17077 (Fset_coding_system_priority, Fset_coding_system_priority)
17078 (Fdefine_coding_system_internal): Doc fix.
17079
170802008-02-01 Dave Love <fx@gnu.org>
17081
17082 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
17083
170842008-02-01 Kenichi Handa <handa@m17n.org>
17085
17086 * character.c (string_escape_byte8): Make multibyte string with
17087 correct size.
17088
17089 * charset.c (Fmake_char): Delete unnecessary code.
17090
170912008-02-01 Kenichi Handa <handa@m17n.org>
17092
17093 * xfns.c (x_encode_text): Allocate coding.destination here, and
17094 call encode_coding_object with dst_object Qnil.
17095
17096 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
17097 multibyte form correctly.
17098
17099 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
17100 against Vfont_encoding_alist.
17101
17102 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
17103 handling of charset list.
17104 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
17105 (decode_coding_object): Move point to coding->dst_pos before
17106 calling post-read-conversion function.
17107 (encode_coding_object): Give correct arguments to
17108 pre-write-conversion. Ignore the return value of
17109 pre-write-conversion function. Pay attention to the case that
17110 pre-write-conversion changes the current buffer. If dst_object is
17111 Qt, even if coding->src_bytes is zero, allocate at least one byte
17112 to coding->destination.
17113
17114 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
17115
17116 * charset.c (Fmake_char): Make it more backward compatible.
17117 (Fmap_charset_chars): Fix docstring.
17118
171192008-02-01 Dave Love <fx@gnu.org>
17120
17121 * coding.c: Doc fixes.
17122 (Fdefine_coding_system_alias): Use names, not symbols, in
17123 coding-system-alist.
17124
171252008-02-01 Kenichi Handa <handa@m17n.org>
17126
17127 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
17128 of calling free_realized_face.
17129
171302008-02-01 Yong Lu <lyongu@asia-infonet.com>
17131
17132 * charset.c (read_hex): Don't treat SPC as a comment starter.
17133 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
17134 (Fdecode_char): Fix typo.
17135
171362008-02-01 Kenichi Handa <handa@m17n.org>
17137
17138 * charset.h (struct charset): New member `code_space_mask'.
17139
17140 * coding.c (coding_set_source): Delete the local variable beg_byte.
17141 (encode_coding_charset, Fdefine_coding_system_internal):
17142 Delete the local variable charset.
17143 (Fdefine_coding_system_internal): Setup
17144 attrs[coding_attr_charset_valids] correctly.
17145
17146 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
17147 member to check if CODE is valid or not.
17148 (Fdefine_charset_internal): Initialize `code_space_mask' member.
17149 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
17150 is within the range of charset->min_code and carset->max_code.
17151
171522008-02-01 Dave Love <fx@gnu.org>
17153
17154 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
17155
17156 * dispextern.h (generate_ascii_font): Fix return type.
17157
17158 * xfaces.c (generate_ascii_font): Fix arg declaration.
17159
17160 * coding.c (coding_inherit_eol_type)
17161 (Fset_terminal_coding_system_internal)
17162 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
17163
171642008-02-01 Kenichi Handa <handa@m17n.org>
17165
17166 * coding.c (decode_coding_charset, encode_coding_charset): Handle
17167 multiple charsets correctly.
17168
171692008-02-01 Kenichi Handa <handa@m17n.org>
17170
17171 * search.c (boyer_moore): Fix handling of multibyte character
17172 translation.
17173
17174 * xdisp.c (display_mode_element): When the variable `elt' is
17175 changed, update `this' and `lisp_string'.
17176
171772008-02-01 Kenichi Handa <handa@m17n.org>
17178
17179 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
17180
17181 * callproc.c (Fcall_process): Be sure to give the current buffer
17182 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
17183
17184 * charset.c (struct charset_map_entries): New struct.
17185 (load_charset_map): Rename from parse_charset_map. New args
17186 entries and n_entries. Change caller.
17187 (load_charset_map_from_file): Rename from load_charset_map.
17188 Change caller. New arg control_flag. Call load_charset_map at
17189 the tail.
17190 (load_charset_map_from_vector): New function.
17191 (Fdefine_charset_internal): Setup charset.compact_codes_p.
17192 (encode_char): If the charset is compact, change a character index
17193 to a code point.
17194
17195 * coding.c (coding_alloc_by_making_gap): Check the case that the
17196 source and destination are the same correctly.
17197 (decode_coding_raw_text): Set coding->consumed_char and
17198 coding->consumed to 0.
17199 (produce_chars): If coding->chars_at_source is nonzero, update
17200 coding->consumed_char and coding->consumed before calling
17201 alloc_destination.
17202 (Fdefine_coding_system_alias): Register ALIAS in
17203 Vcoding_system_alist.
17204 (syms_of_coding): Define `no-conversion' coding system at the tail.
17205
17206 * fileio.c (Finsert_file_contents): Set coding_system instead of
17207 val. If the current buffer is multibyte, always call
17208 decode_coding_gap.
17209
17210 * xfaces.c (try_font_list): Give higher priority to fontset's
17211 family than face's family.
17212
172132008-02-01 Kenichi Handa <handa@m17n.org>
17214
17215 * callproc.c (Fcall_process): Be sure to give the current buffer
17216 to decode_coding_c_string.
17217
17218 * xfaces.c (try_font_list): Give a family specified in a fontset
17219 higher priority than a family specified in a face.
17220
172212008-02-01 Kenichi Handa <handa@m17n.org>
17222
17223 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
17224 Fix arguments to insert_from_buffer.
17225
17226 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
17227
172282008-02-01 Kenichi Handa <handa@m17n.org>
17229
17230 * coding.c (produce_chars): Set the variable `multibytep' correctly.
17231 (decode_coding_gap): Set coding->dst_multibyte correctly.
17232
172332008-02-01 Kenichi Handa <handa@m17n.org>
17234
17235 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
17236 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
17237 (encode_coding_utf_16): Substitute coding->default_char for
17238 non-Unicode characters.
17239 (decode_coding): Don't call record_insert here.
17240 (setup_coding_system): Initialize `surrogate' of
17241 coding->spec.utf_16 to 0.
17242 (EMIT_ONE_BYTE): Fix for multibyte case.
17243
17244 * insdel.c (insert_from_gap): Call record_insert.
17245
172462008-02-01 Kenichi Handa <handa@m17n.org>
17247
17248 * casefiddle.c (casify_region): Fix multibyte case.
17249
17250 * character.c (c_string_width): Add return type `int'.
17251 (char_string_with_unification): Delete arg ADVANCED.
17252
17253 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
17254 (CHAR_STRING): Adjust for the change of char_string_with_unification.
17255 (CHAR_STRING_ADVANCE): Make it do-while statement.
17256
17257 * chartab.c (sub_char_table_set_range): Optimize for the case
17258 DEPTH == 3. Add workaround code for a GCC optimization bug.
17259
17260 * charset.c (parse_charset_map): Remove an unused variable.
17261
17262 * coding.c: Delete unused variables.
17263
17264 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
17265 earlier. If inserted is zero and the coding system doesn't
17266 require flushing, don't call decode_coding_gap.
17267
17268 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
17269
172702008-02-01 Kenichi Handa <handa@m17n.org>
17271
17272 The following changes are for using Unicode as an internal
17273 character model, and use UTF-8 format for buffer/string
17274 representation.
17275
17276 * .gdbinit (xchartable): Adjust for the change of char table structure.
17277 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
17278
17279 * Makefile.in (obj): Add character.o and chartab.o.
17280 (lisp, shortlisp): Remove utf-8.elc.
17281 (*.o): For many files, change dependency on charset.h to
17282 character.h, and add dependency on character.h.
17283 (character.o, chartab.o): New targets.
17284
17285 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
17286 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
17287 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
17288 of "charset.h".
17289
17290 * dired.c, filelock.c: Include "character.h".
17291
17292 * alloc.c: Include "character.h" instead of "charset.h".
17293 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
17294 (syms_of_alloc): Remove defsubr for Smake_char_table.
17295
17296 * buffer.c: Include "character.h" instead of "charset.h", don't
17297 include "coding.h".
17298 (Fset_buffer_multibyte): Adjust for UTF-8.
17299
17300 * buffer.h: EXFUN Fbuffer_live_p.
17301
17302 * callproc.c: Include "character.h" instead of "charset.h".
17303 (Fcall_process): Big change for the new code-conversion APIs.
17304
17305 * casetab.c: Include "character.h" instead of "charset.h".
17306 (set_canon, set_identity, shuffle): Adjust for the new
17307 map_char_table spec.
17308 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
17309 accessing the char table structure.
17310
17311 * chartab.c: New file that implements char table.
17312
17313 * category.c: Include "character.h".
17314 (copy_category_entry): New function.
17315 (copy_category_table): Call map_char_table and copy_category_entry.
17316 (Fmake_category_table): Initialize all top-level slots.
17317 (char_category_set): New function.
17318 (modify_lower_category_set): Delete.
17319 (Fmodify_category_entry): Call char_table_ref_and_range.
17320
17321 * category.h (CATEGORY_SET): Just call char_category_set.
17322
17323 * ccl.c: Include "character.h".
17324 (Qccl, Qcclp): New variables.
17325 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
17326 it's less than 256.
17327 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
17328 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
17329 and DST type.
17330 (ccl_driver): Change types of argument, adjust code accordingly.
17331 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
17332 ccl_driver.
17333 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
17334
17335 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
17336 New members src_multibyte, dst_multibyte, consumed, and produced.
17337 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
17338 (CODING_SPEC_CCL_PROGRAM): New macro.
17339 (ccl_driver): Update prototype.
17340 (Qccl, Qcclp, Fccl_program_p): Extern them.
17341 (CHECK_CCL_PROGRAM): New macro.
17342
17343 * character.c, character.h, chartab.c: New files.
17344
17345 * charset.c: Mostly re-written. Move character and multibyte sequence
17346 handling codes to character.c.
17347
17348 * charset.h: Mostly re-written. Move character and multibyte sequence
17349 handling codes to character.h.
17350
17351 * coding.c, coding.h: Mostly re-written.
17352
17353 * composite.c: Include "character.h" instead of "charset.h".
17354 (CHAR_WIDTH): Move to character.h.
17355 (HASH_KEY, HASH_VALUE): Delete.
17356
17357 * composite.h (enum composition_method): Change order of enumeration
17358 symbols.
17359
17360 * data.c: Include "character.h" instead of "charset.h".
17361 (Faref): Call CHAR_TABLE_REF for a char table.
17362 (Faset): Call CHAR_TABLE_SET for a char table.
17363
17364 * dispextern.h (free_realized_face, check_face_attribytes)
17365 (generate_ascii_font): Extern them.
17366 (free_realized_multibyte_face): Delete extern.
17367
17368 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
17369 table structure.
17370
17371 * editfns.c: Include "character.h" instead of "charset.h".
17372 (Fchar_to_string): Always call CHAR_STRING.
17373
17374 * emacs.c (main): Call init_charset_once, init_charset,
17375 syms_of_chartab, and syms_of_character.
17376
17377 * fileio.c: Include "character.h" instead of "charset.h".
17378 (Finsert_file_contents): Big change for the new code-conversion API.
17379 (choose_write_coding_system, Fwrite_region): Likewise.
17380 (build_annotations_2): Delete.
17381 (e_write): Big change for the new code-conversion API.
17382
17383 * fns.c: Include "character.h" instead of "charset.h".
17384 (copy_sub_char_table): Move to chartab.c.
17385 (Fcopy_sequence): Call copy_char_table for a char table.
17386 (concat): Delete codes calling count_multibyte.
17387 (string_char_to_byte, string_byte_to_char): Adjust for the new
17388 multibyte form.
17389 (internal_equal): Adjust for the change of char table structure.
17390 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
17391 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
17392 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17393 (char_table_translate, optimize_sub_char_table)
17394 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17395 chartab.c.
17396 (char_table_ref_and_index): Delete.
17397 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17398 (Fmd5): Call preferred_coding_system instead of accessing
17399 Vcoding_category_list. Adjust for the new code-conversion API.
17400 (syms_of_fns): Move defsubr for char table related functions to
17401 chartab.c.
17402
17403 * fontset.c: Mostly re-written.
17404
17405 * fontset.h (struct font_info): Change type of the member encoding_type.
17406 (enum FONT_SPEC_INDEX): New enum.
17407 (fontset_font_pattern, fs_load_font): Update prototype.
17408 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17409
17410 * indent.c: Include "character.h" instead of "charset.h".
17411 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17412
17413 * insdel.c: Include "character.h" instead of "charset.h".
17414 (copy_text): Don't refer to Vnonascii_translation_table.
17415 (insert_from_gap): New function.
17416
17417 * keyboard.c: Include "character.h" instead of "charset.h".
17418 (command_loop_1): Never call direct_output_forward_char before
17419 a non-ASCII character.
17420 (read_char): If Vkeyboard_translate_table is a char table, always
17421 translate a character.
17422
17423 * keymap.c: Include "character.h".
17424 (store_in_keymap): Handle the case that IDX is a cons.
17425 (Fdefine_key): Handle the case that KEY is a cons and the car part
17426 is also a cons (range).
17427 (push_key_description): Adjust for the new character code.
17428 (describe_vector): Call describe_char_table for a char table.
17429 (describe_char_table): New function.
17430
17431 * keymap.h (describe_char_table): Extern it.
17432
17433 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17434 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17435 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17436 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17437 Delete.
17438 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17439 structure.
17440 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17441 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17442 (CHARTAB_SIZE_BITS_3): New macros.
17443 (chartab_size): Extern it.
17444 (struct Lisp_Char_Table): Re-design.
17445 (struct Lisp_Sub_Char_Table): New structure.
17446 (HASH_KEY, HASH_VALUE): Move from fns.c.
17447 (CHARACTERBITS): Define as 22.
17448 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17449 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17450 (GC_SUB_CHAR_TABLE_P): New macro.
17451 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17452 (code_convert_string_norecord): Deleted extern.
17453 (init_character_once, syms_of_character, init_charset)
17454 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17455
17456 * lread.c: Include "character.h".
17457 (read_multibyte): New arg NBYTES.
17458 (read_escape): Change the meaning of returned *BYTEREP.
17459 (to_multibyte): Delete.
17460 (read1): Adjust the handling of char table and string.
17461
17462 * print.c: Include "character.h" instead of "charset.h".
17463 (print_string): Convert 8-bit raw bytes to octal form by
17464 string_escape_byte8.
17465 (print_object): Adjust for the new multibyte form. Print 8-bit
17466 raw bytes always in octal form. Handle sub char table correctly.
17467
17468 * process.c: Include "character.h" instead of "charset.h".
17469 (read_process_output, send_process): Adjust for the new
17470 code-conversion API.
17471
17472 * puresize.h (BASE_PURESIZE): Increase.
17473
17474 * regex.c: Include "character.h" instead of "charset.h".
17475 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17476 (regex_compile): Accept a range whose starting and ending
17477 character have different leading bytes.
17478 (analyse_first): Adjust for the above change.
17479
17480 * search.c: Include "character.h" instead of "charset.h".
17481 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17482 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17483
17484 * syntax.c: Include "character.h" instead of "charset.h".
17485 (syntax_parent_lookup): Delete.
17486 (Fmodify_syntax_entry): Accept a cons as CHAR.
17487 (skip_chars): Adjust for the new multibyte form.
17488 (init_syntax_once): Call char_table_set_range instead of directly
17489 accessing the structure of a char table.
17490
17491 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17492 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17493 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17494 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17495
17496 * term.c: Include "buffer.h" and "character.h".
17497 (encode_terminal_code, write_glyphs): Adjust for the new
17498 code-conversion API.
17499 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17500
17501 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17502
17503 * xdisp.c: Include "character.h".
17504 (get_next_display_element): Adjust for the new multibyte form.
17505 (disp_char_vector): Adjust for the new char table structure.
17506 (decode_mode_spec_coding): Adjust for the new structure of
17507 coding system.
17508 (decode_mode_spec): Adjust for the new code-conversion API.
17509
17510 * xfaces.c: Include "character.h" instead of "charset.h".
17511 (load_face_font): Adjust for the change of choose_face_font and
17512 FS_LOAD_FONT.
17513 (generate_ascii_font): New function.
17514 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17515 (set_font_frame_param): Adjust for the change of choose_face_font.
17516 (free_realized_face): Make it public.
17517 (free_realized_faces_for_fontset): Rename from
17518 free_realized_multibyte_face. Free also faces realized for ASCII.
17519 (choose_face_font): Change arguments. Adjust for the change of
17520 fontset_font_pattern and FS_LOAD_FONT.
17521
17522 * xfns.c: Include "character.h".
17523 (x_encode_text): Adjust for the new code-conversion API.
17524
17525 * xselect.c: Don't include "charset.h".
17526 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17527
17528 * xterm.c: Include "character.h".
17529 (x_encode_char): New argument CHARSET. Change caller.
17530 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17531 Call ENCODE_CHAR instead of SPLIT_CHAR.
17532 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17533 CHAR_WIDTH instead of CHARSET_WIDTH.
17534 (XTread_socket): Adjust for the new code-conversion API.
17535 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17536 (x_load_font): Adjust for the change of struct font.
17537
175382008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17539
17540 * xfaces.c (face_at_buffer_position): Remove unused vars.
17541
175422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17543
17544 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17545 Fix overflow checking.
17546
175472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17548
17549 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17550 Cancel previous change.
17551
175522008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17553
17554 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17555 ccl->eight_bit_control. Fix check for buffer overflow.
17556 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17557 (ccl_driver): Initialize extra_bytes to 0.
17558
175592008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17560
17561 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17562 return it ORed with ctrl_modifier.
17563
175642008-01-29 Miles Bader <miles@gnu.org>
17565
17566 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17567
175682008-01-28 Jason Rumney <jasonr@gnu.org>
17569
17570 * w32.c (stat): Don't double check for networked drive.
17571
175722008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17573
17574 * window.c (run_window_configuration_change_hook): New function.
17575 Code extracted from set_window_buffer. Set the selected frame.
17576 (set_window_buffer): Use it.
17577 * window.h (run_window_configuration_change_hook): Declare.
17578 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17579
17580 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17581
175822008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17583
17584 * Makefile.in: Remove references to unused macros.
17585
175862008-01-26 Eli Zaretskii <eliz@gnu.org>
17587
17588 * w32.c (g_b_init_get_sid_sub_authority)
17589 (g_b_init_get_sid_sub_authority_count): New static variables.
17590 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17591 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17592 (init_user_info): Use them to retrieve uid and gid.
17593 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17594 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17595 st_uid and st_gid of the file.
17596
175972008-01-26 Jason Rumney <jasonr@gnu.org>
17598
17599 * w32.c (logon_network_drive): New function.
17600 (stat): Use it.
17601
176022008-01-26 Chong Yidong <cyd@stupidchicken.com>
17603
17604 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17605 invisible text covered with an ellipsis.
17606
176072008-01-25 Richard Stallman <rms@gnu.org>
17608
17609 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17610 jump back to beginning. Move some other initializations after that.
17611 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17612 New variables.
17613 (syms_of_xdisp): Init them.
17614
17615 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17616
17617 * buffer.c (reset_buffer_local_variables):
17618 Implement `permanent-local-hook'.
17619 (Qpermanent_local_hook): New variable.
17620 (syms_of_buffer): Init and staticpro it.
17621
176222008-01-25 Michael Albinus <michael.albinus@gmx.de>
17623
17624 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17625
176262008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17627
17628 * fns.c (Fclrhash): Return TABLE.
17629
176302008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17631
17632 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17633 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17634 is set even without positional changes.
17635 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17636
17637 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17638
176392008-01-23 Jason Rumney <jasonr@gnu.org>
17640
17641 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17642
17643 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17644 the unicode range available in MULE by locale-coding-system.
17645 Improve dbcs lead byte detection. Set event timestamp and modifiers
17646 earlier.
17647
176482008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17649
17650 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17651 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17652 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17653 when used on child processes.
17654
176552008-01-21 Michael Albinus <michael.albinus@gmx.de>
17656
17657 * dbusbind.c (Fdbus_method_return_internal): Rename from
17658 Fdbus_method_return.
17659 (Fdbus_unregister_object): Move to dbus.el.
17660 (Fdbus_call_method, Fdbus_method_return_internal)
17661 (Fdbus_send_signal): Improve debug messages.
17662
176632008-01-20 Martin Rudalics <rudalics@gmx.at>
17664
17665 * undo.c (undo_inhibit_record_point): New variable.
17666 (syms_of_undo): Initialize it.
17667 (record_point): Don't record point when undo_inhibit_record_point
17668 is set.
17669
176702008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17671
17672 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17673
17674 * xdisp.c (Qauto_hscroll_mode): New var.
17675 (syms_of_xdisp): Initialize it.
17676 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17677 window's buffer.
17678 (hscroll_windows): Don't check automatic_hscrolling_p here.
17679
17680 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17681 vscroll if we're setting window-buffer to the value it already has.
17682
176832008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17684
17685 * m/intel386.h: Remove references to XENIX.
17686
176872008-01-17 Andreas Schwab <schwab@suse.de>
17688
17689 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17690 instead of HAVE_X86_64_LIB64_DIR.
17691 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17692
176932008-01-17 Glenn Morris <rgm@gnu.org>
17694
17695 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17696 to HAVE_X86_64_LIB64_DIR.
17697
176982008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17699
17700 * s/irix3-3.h:
17701 * s/irix4-0.h:
17702 * s/386-ix.h:
17703 * s/domain.h:
17704 * s/hpux9-x11r4.h:
17705 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17706
17707 * sysdep.c: Remove code containing references to symbols defined
17708 by unsupported systems.
17709
177102008-01-16 Glenn Morris <rgm@gnu.org>
17711
17712 * coding.c (select-safe-coding-system-function): Doc fix.
17713
177142008-01-15 Glenn Morris <rgm@gnu.org>
17715
17716 * config.in: Revert 2008-01-13 change: this is a generated file.
17717
177182008-01-13 Tom Tromey <tromey@redhat.com>
17719
17720 * lisp.h: Fix typo.
17721
177222008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17723
17724 * m/sequent-ptx.h:
17725 * m/sequent.h:
17726 * s/ptx.h:
17727 * s/ptx4-2.h:
17728 * s/ptx4.h: Remove files for systems no longer supported.
17729
17730 * callproc.c (Fcall_process): Fix previous change.
17731
177322008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17733
17734 * unexsunos4.c: Remove file, system not supported anymore.
17735
17736 * m/mips.h:
17737 * m/intel386.h:
17738 * callproc.c:
17739 * config.in:
17740 * ecrt0.c:
17741 * emacs.c:
17742 * fileio.c:
17743 * frame.c:
17744 * getpagesize.h:
17745 * keyboard.c:
17746 * lread.c:
17747 * process.c:
17748 * puresize.h:
17749 * sysdep.c:
17750 * systty.h:
17751 * syswait.h:
17752 * unexec.c:
17753 * xdisp.c:
17754 * alloc.c: Remove code containing references to symbols defined by
17755 unsupported systems.
17756
177572008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17758
17759 * coding.c (detect_coding_mask): Fix previous change.
17760
177612008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17762
17763 * coding.c (detect_coding_iso2022): New arg
17764 latin_extra_code_state. Allow Latin extra codes only
17765 when *latin_extra_code_state is nonzero.
17766 (detect_coding_mask): If there is a NULL byte, detect the encoding
17767 as UTF-16 or binary. If Latin extra codes exist, detect the
17768 encoding as ISO-2022 only when there's no other proper encoding is
17769 found.
17770
177712008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17772
17773 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17774 #ifdef MAC_OS.
17775
177762008-01-08 Richard Stallman <rms@gnu.org>
17777
17778 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17779
177802008-01-06 Nick Roberts <nickrob@snap.net.nz>
17781
17782 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17783 menu bar in parentheses.
17784
177852008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17786
17787 * m/7300.h:
17788 * m/acorn.h:
17789 * m/alliant-2800.h:
17790 * m/alliant.h:
17791 * m/alliant1.h:
17792 * m/alliant4.h:
17793 * m/altos.h:
17794 * m/amdahl.h:
17795 * m/apollo.h:
17796 * m/att3b.h:
17797 * m/aviion-intel.h:
17798 * m/aviion.h:
17799 * m/celerity.h:
17800 * m/clipper.h:
17801 * m/cnvrgnt.h:
17802 * m/convex.h:
17803 * m/cydra5.h:
17804 * m/delta88k.h:
17805 * m/dpx2.h:
17806 * m/dual.h:
17807 * m/elxsi.h:
17808 * m/f301.h:
17809 * m/gould-np1.h:
17810 * m/gould.h:
17811 * m/i860.h:
17812 * m/ibmps2-aix.h:
17813 * m/ibmrt-aix.h:
17814 * m/ibmrt.h:
17815 * m/irist.h:
17816 * m/is386.h:
17817 * m/isi-ov.h:
17818 * m/mega68.h:
17819 * m/mg1.h:
17820 * m/news-r6.h:
17821 * m/news-risc.h:
17822 * m/news.h:
17823 * m/nh3000.h:
17824 * m/nh4000.h:
17825 * m/ns16000.h:
17826 * m/ns32000.h:
17827 * m/nu.h:
17828 * m/orion.h:
17829 * m/orion105.h:
17830 * m/paragon.h:
17831 * m/pfa50.h:
17832 * m/plexus.h:
17833 * m/pyramid.h:
17834 * m/pyrmips.h:
17835 * m/sh3el.h:
17836 * m/sps7.h:
17837 * m/sr2k.h:
17838 * m/stride.h:
17839 * m/sun1.h:
17840 * m/sun2.h:
17841 * m/sun3-68881.h:
17842 * m/sun3-fpa.h:
17843 * m/sun3-soft.h:
17844 * m/sun3.h:
17845 * m/sun386.h:
17846 * m/symmetry.h:
17847 * m/tad68k.h:
17848 * m/tahoe.h:
17849 * m/targon31.h:
17850 * m/tek4300.h:
17851 * m/tekxd88.h:
17852 * m/tower32.h:
17853 * m/tower32v3.h:
17854 * m/ustation.h:
17855 * m/wicat.h:
17856 * m/xps100.h:
17857 * s/cxux.h:
17858 * s/cxux7.h:
17859 * s/dgux.h:
17860 * s/dgux4.h:
17861 * s/dgux5-4-3.h:
17862 * s/dgux5-4r2.h:
17863 * s/esix.h:
17864 * s/esix5r4.h:
17865 * s/hiuxmpp.h:
17866 * s/hiuxwe2.h:
17867 * s/iris3-5.h:
17868 * s/iris3-6.h:
17869 * s/isc2-2.h:
17870 * s/isc3-0.h:
17871 * s/isc4-0.h:
17872 * s/isc4-1.h:
17873 * s/newsos5.h:
17874 * s/newsos6.h:
17875 * s/osf1.h:
17876 * s/osf5-0.h:
17877 * s/riscix1-1.h:
17878 * s/riscix12.h:
17879 * s/sco4.h:
17880 * s/sco5.h:
17881 * s/sunos4-0.h:
17882 * s/sunos4-1.h:
17883 * s/sunos413.h:
17884 * s/sunos4shr.h:
17885 * s/umax.h:
17886 * s/unipl5-2.h:
17887 * s/xenix.h:
17888 * cxux-crt0.s:
17889 * unexapollo.c:
17890 * unexconvex.c:
17891 * unexenix.c:
17892 * unexsni.c: Remove files for systems no longer supported.
17893
17894 * m/intel386.h: Remove references to unsupported systems.
17895
17896 * w32.c (get_emacs_configuration): Remove reference to i860.
17897
17898 * sysdep.c: Remove dead code.
17899
179002008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17901
17902 * s/rtu.h:
17903 * m/masscomp.h: Remove files. Platform is obsolete.
17904
179052008-01-04 Michael Albinus <michael.albinus@gmx.de>
17906
17907 * dbusbind.c (Fdbus_method_return): New function.
17908 (xd_read_message): Add the serial number to the event.
17909 (Fdbus_register_method): Activate the function.
17910
179112008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17912
17913 * keyboard.c (read_key_sequence): Fix typo.
17914
179152008-01-03 Michael Albinus <michael.albinus@gmx.de>
17916
17917 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17918 (xd_signature, xd_append_arg): Handle element type detection for
17919 empty arrays.
17920 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17921 SDATA () calls; this must be solved more general.
17922 (Fdbus_register_signal): Use SBYTES instead of strlen.
17923
179242008-01-03 Magnus Henoch <magnus@zemdatav>
17925
17926 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17927 unsigned int for byte values (necessary for big-endian platform).
17928 (Fdbus_call_method): Handle the case of no returned arguments.
17929
179302007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17931
17932 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17933
179342007-12-31 Magnus Henoch <mange@freemail.hu>
17935
17936 * dbusbind.c (xd_signature): Signature of variant is just "v".
17937
179382007-12-30 Michael Albinus <michael.albinus@gmx.de>
17939
17940 * dbusbind.c: Fix several errors and compiler warnings.
17941 Reported by Tom Tromey <tromey@redhat.com>.
17942 (XD_ERROR, XD_DEBUG_MESSAGE)
17943 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17944 (xd_append_arg): Part for basic D-Bus types rewritten.
17945 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17946 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17947 appropriate.
17948 (xd_read_message): Return Qnil. Don't signal an error; it is not
17949 useful during event reading.
17950 (Fdbus_register_signal): Signal an error if the check for
17951 FUNCTIONP fails.
17952 (Fdbus_register_method): New function. The implementation is not
17953 complete, the call of the function signals an error therefore.
17954 (Fdbus_unregister_object): New function, renamed from
17955 Fdbus_unregister_signal. The initial check signals an error, if
17956 the object is not well formed.
17957
179582007-12-30 Richard Stallman <rms@gnu.org>
17959
17960 * textprop.c (get_char_property_and_overlay):
17961 Signal error if POSITION is out of range in a buffer.
17962
179632007-12-29 Martin Rudalics <rudalics@gmx.at>
17964
17965 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17966 because the original parameters are in pure storage now.
17967
179682007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17969
17970 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17971
179722007-12-22 Eli Zaretskii <eliz@gnu.org>
17973
17974 * callint.c (syms_of_callint) <command-history>: Add reference to
17975 history-length in the doc string.
17976
179772007-12-17 Jason Rumney <jasonr@gnu.org>
17978
17979 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17980 before passing as wParam.
17981
179822007-12-22 Michael Albinus <michael.albinus@gmx.de>
17983
17984 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17985 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17986 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17987 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17988 as number.
17989 (Fdbus_call_method): Fix docstring.
17990
179912007-12-21 Michael Albinus <michael.albinus@gmx.de>
17992
17993 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17994 New macros.
17995 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17996 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17997 Simplify.
17998 (xd_signature): New function.
17999 (xd_append_arg): Compute also signatures. Major rewrite.
18000 (xd_retrieve_arg): Make debug messages friendly.
18001 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
18002 Check for signatures of arguments.
18003
180042007-12-19 Michael Albinus <michael.albinus@gmx.de>
18005
18006 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
18007 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
18008 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
18009 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
18010 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
18011 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
18012 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
18013 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
18014 (xd_retrieve_value): Remove. Functionality included in ...
18015 (xd_append_arg): New function.
18016 (Fdbus_call_method, Fdbus_send_signal): Apply it.
18017
180182007-12-16 Michael Albinus <michael.albinus@gmx.de>
18019
18020 * dbusbind.c (top): Include <stdio.h>.
18021 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
18022 dbus_message_new_method_call and dbus_message_new_signal.
18023 (Fdbus_register_signal): Rename unique_name to uname.
18024 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
18025 non-existing unique name. Fix typos in matching rule. Return an
18026 object which is useful in Fdbus_unregister_signal.
18027 (Fdbus_unregister_signal): Reimplementation, in order to remove
18028 only the corresponding entry.
18029 (Vdbus_registered_functions_table): Change the order of entries.
18030 Apply these changes in xd_read_message and Fdbus_register_signal.
18031
180322007-12-16 Andreas Schwab <schwab@suse.de>
18033
18034 * fileio.c (Finsert_file_contents): Fix overflow check to not
18035 depend on undefined integer overflow.
18036
180372007-12-14 Jason Rumney <jasonr@gnu.org>
18038
18039 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
18040 for characters above 127.
18041
180422007-12-13 Jason Rumney <jasonr@gnu.org>
18043
18044 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
18045 before dereferencing array.
18046 (lookup_vk_code): Remove zero comparison.
18047
180482007-12-14 Michael Albinus <michael.albinus@gmx.de>
18049
18050 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
18051 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
18052 Use `unsigned int' instead of `uint'.
18053 (xd_read_message, Fdbus_register_signal): Split expressions into
18054 multiple lines before operators "&&" and "||", according to the
18055 GNU Coding Standards.
18056
180572007-12-14 Eli Zaretskii <eliz@gnu.org>
18058
18059 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
18060
180612007-12-12 Juri Linkov <juri@jurta.org>
18062
18063 * buffer.c (Frename_buffer): In interactive spec replace
18064 `read-buffer' with `read-string' that uses `buffer-name-history'
18065 as history, and the current buffer's name as default.
18066
180672007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
18068
18069 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
18070 manipulating the backtrace manually.
18071 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
18072 (struct backtrace, backtrace_list): Remove.
18073 (command_loop_1): Remove dead var `no_direct'.
18074
18075 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
18076 preserve non-built-in buffer-local variables.
18077 (Fkill_all_local_variables): Don't re-create&re-set permanent
18078 buffer-local variables.
18079
180802007-12-09 Juri Linkov <juri@jurta.org>
18081
18082 * buffer.c (Frename_buffer): Change interactive spec from "s" to
18083 Lisp code that uses `read-buffer' with current buffer as default.
18084
180852007-12-08 Michael Albinus <michael.albinus@gmx.de>
18086
18087 * dbusbind.c (xd_read_message): Generate an event for every
18088 registered handler. There might be several handlers registered
18089 for the same signal.
18090 (Fdbus_register_signal): Don't overwrite a registration for the
18091 same signal. Add a new registration if handlers are different.
18092 (Vdbus_registered_functions_table): Rework doc string.
18093
180942007-12-07 Michael Albinus <michael.albinus@gmx.de>
18095
18096 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
18097 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
18098 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
18099 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
18100 Unify argument lists.
18101 (xd_read_message, Fdbus_register_signal): Reorder and extend event
18102 arguments and hash table keys. Use unique name for service.
18103 (Fdbus_unregister_signal): Remove checks.
18104 (Vdbus_registered_functions_table): Fix doc string.
18105
181062007-12-05 Magnus Henoch <mange@freemail.hu>
18107
18108 * process.c (make_process): Initialize pty_flag to 0.
18109
181102007-12-05 Jason Rumney <jasonr@gnu.org>
18111
18112 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
18113 specified XBMs.
18114
181152007-12-05 Richard Stallman <rms@gnu.org>
18116
18117 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
18118
181192007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18120
18121 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
18122 New variable.
18123 (mac_try_close_socket) [MAC_OSX]: New function.
18124 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
18125 Update cfsockets_for_select. Replace invalid CFRunLoop source.
18126
18127 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
18128 Use mac_try_close_socket.
18129
181302007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18131
18132 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
18133 reloc_base.
18134 (copy_dysymtab): Compute relocation base here.
18135 (rebase_reloc_address) [__ppc64__]: New function.
18136 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
18137 changed.
18138
181392007-12-05 Jason Rumney <jasonr@gnu.org>
18140
18141 * w32proc.c (sys_spawnve): Quote args with wildcards.
18142
181432007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18144
18145 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
18146 __objc_* sections.
18147 (unrelocate) [_LP64]: Set relocation base to address of data segment.
18148
181492007-12-05 Michael Albinus <michael.albinus@gmx.de>
18150
18151 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
18152 Move check for Vdbus_registered_functions_table to
18153 xd_read_queued_messages.
18154 (xd_read_queued_messages): Protect xd_read_message calls by
18155 internal_condition_case_1.
18156
181572007-12-04 Michael Albinus <michael.albinus@gmx.de>
18158
18159 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
18160 Qdbus_system_bus and Qdbus_session_bus, respectively.
18161 (Vdbus_intern_symbols): Remove.
18162 (Vdbus_registered_functions_table): New hash table.
18163 (XD_SYMBOL_INTERN_SYMBOL): Remove.
18164 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
18165 Rewrite in order to manage registered functions by hash table
18166 Vdbus_registered_functions_table.
18167
181682007-12-03 Jan Djärv <jan.h.d@swipnet.se>
18169
18170 * xterm.c: Update URL to Window Manager Specification in comment.
18171
181722007-12-02 Michael Albinus <michael.albinus@gmx.de>
18173
18174 * config.in (HAVE_DBUS): Add.
18175
18176 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
18177 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
18178 (obj): Add $(DBUS_OBJ).
18179 (LIBES): Add $(DBUS_LIBS).
18180 (dbusbind.o): New target.
18181
18182 * dbusbind.c: New file.
18183
18184 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
18185
18186 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
18187 (Qdbus_event): New Lisp symbol.
18188 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
18189 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 18190 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
18191
18192 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
18193
181942007-12-01 Richard Stallman <rms@gnu.org>
18195
18196 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
18197
181982007-11-30 Jason Rumney <jasonr@gnu.org>
18199
18200 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
18201 (w32con_reset_terminal_modes): Clear screen buffer.
18202 (w32_face_attributes): Don't use color indexes that are out of range.
18203 Only reverse the default colors.
18204
18205 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
18206 WINDOWSNT.
18207
18208 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
18209
182102007-11-29 Jason Rumney <jasonr@gnu.org>
18211
18212 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
18213 (w32_face_attributes): Use Vtty_defined_color_alist to determine
18214 if the terminal colors are initialized.
18215 (unspecified_fg, unspecified_bg): Remove unused declarations.
18216
182172007-11-29 Andreas Schwab <schwab@suse.de>
18218
18219 * keyboard.c (apply_modifiers): Fix typo.
18220
182212007-11-29 Richard Stallman <rms@gnu.org>
18222
18223 * keymap.c (Fcurrent_local_map): Doc fix.
18224
182252007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
18226
18227 * s/gnu-kfreebsd.h: New file.
18228
182292007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
18230
18231 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
18232 Don't cast redundantly.
18233
18234 * keyboard.c (KEY_TO_CHAR): New macro.
18235 (parse_modifiers, apply_modifiers): Accept integer arguments.
18236 (read_key_sequence): Use them to unify the "shift->unshift" mapping
18237 for chars and symbol keys.
18238 After doing such remapping, apply function-key-map again.
18239
182402007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
18241
18242 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
18243 compiled anymore.
18244
182452007-11-26 Andreas Schwab <schwab@suse.de>
18246
18247 * process.c (list_processes_1): Fix indentation level of the
18248 command column.
18249
182502007-11-23 Andreas Schwab <schwab@suse.de>
18251
18252 * editfns.c (Fformat): Handle %c specially since it requires the
18253 argument to be of type int.
18254
182552007-11-23 Markus Triska <markus.triska@gmx.at>
18256
18257 * emacs.c (main): Call init_editfns before init_process, since
18258 init_process sets Vprocess_connection_type depending on OS release.
18259
182602007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
18261
18262 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
18263 (find_symbol_value): Use do_symval_forwarding.
18264
18265 * data.c (set_internal): Set the value in the `cons-cell' (for
18266 Buffer_Local_values) not only for frame-local variables.
18267
182682007-11-22 Andreas Schwab <schwab@suse.de>
18269
18270 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
18271 values to sprintf.
18272 * keymap.c (Fsingle_key_description): Likewise.
18273 * print.c (print_object): Likewise.
18274
182752007-11-22 Jan Djärv <jan.h.d@swipnet.se>
18276
18277 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
18278 file for image is nil.
18279
182802007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
18281
18282 * term.c: Include stdarg.h.
18283 (fatal): Implement using varargs.
18284 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
18285
182862007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18287
18288 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
18289 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
18290 Update call to buffer_slot_type_mismatch.
18291 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
18292 (buffer_slot_type_mismatch): Update.
18293 * buffer.c (buffer_local_types): Remove.
18294 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
18295 (defvar_per_buffer): Set the type in the buffer_objfwd.
18296
182972007-11-21 Jason Rumney <jasonr@gnu.org>
18298
18299 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
18300 CreateFileMapping returns NULL on failure.
18301
183022007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18303
18304 * search.c (Fset_match_data): Remove the `evaporate' feature.
18305 (unwind_set_match_data): Don't use the `evaporate' feature.
18306
183072007-11-21 Jason Rumney <jasonr@gnu.org>
18308
18309 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
18310
18311 * w32console.c (w32con_write_glyphs): Remove unused variables.
18312
183132007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
18314
18315 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
18316
18317 * s/darwin.h (MULTI_KBOARD): Remove.
18318
18319 * macfns.c (x_create_tip_frame, Fx_create_frame)
18320 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
18321
183222007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
18323
18324 * buffer.c (Fbuffer_local_value): Remove redundant test.
18325 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
18326 than in `current-buffer' to match the comment.
18327 Do the swap using swap_in_global_binding.
18328
18329 * data.c (store_symval_forwarding, set_internal):
18330 * eval.c (specbind): Remove dead code.
18331
18332 * coding.c (detect_coding, Fupdate_coding_systems_internal):
18333 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
18334 Since we do not want to see internal Lisp_*fwd objects here.
18335
183362007-11-18 Jan Djärv <jan.h.d@swipnet.se>
18337
18338 * sysdep.c (init_system_name): Use getaddrinfo if available.
18339
18340 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
18341 (x_scroll_bar_note_movement): start, end, with, height in struct
18342 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
18343
183442007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
18345
18346 * puresize.h (BASE_PURESIZE): Increase to 1190000.
18347
183482007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
18349
18350 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
18351 This undoes Richard's change of 14-Oct-2002.
18352
18353 * alloc.c (allocate_other_vector):
18354 * lisp.h (allocate_other_vector): Remove.
18355
18356 * window.c (struct save_window_data): Move non-lisp data to the end
18357 and make it `int' rather than Lisp_Object.
18358 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
18359 Done wrap/unwrap integer values.
18360 (Fset_window_configuration, compare_window_configurations):
18361 Update use of fields to their new types.
18362
18363 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
18364 Turn integer fields into `int'. Merge x_window_low and x_window_high.
18365 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
18366 (SET_SCROLL_BAR_X_WINDOW): Remove.
18367 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
18368 Access the new x_window field directly.
18369 * xterm.c (x_scroll_bar_create): Use a pseudovector.
18370 Don't wrap/unwrap integers into Lisp_Objects.
18371 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
18372 (x_scroll_bar_report_motion):
18373 Don't wrap/unwrap integers into Lisp_Objects.
18374 (x_term_init): Use SDATA.
18375 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
18376 (x_scroll_bar_set_handle, x_scroll_bar_remove)
18377 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
18378 (x_scroll_bar_report_motion, x_scroll_bar_clear):
18379 * xfns.c (x_set_background_color):
18380 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
18381 Access the new x_window field directly.
18382
18383 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
18384 (allocate_pseudovector): Make non-static.
18385
18386 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
18387 (allocate_pseudovector): Declare.
18388 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
18389
183902007-11-15 Andreas Schwab <schwab@suse.de>
18391
18392 * editfns.c (Fformat): Correctly format EMACS_INT values.
18393 Also take precision into account when formatting an integer.
18394
18395 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18396
183972007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18398
18399 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18400 (syms_of_keyboard): Defsubr it.
18401
18402 * data.c (swap_in_global_binding): Fix longstanding bug where
18403 store_symval_forwarding was not called with the right second argument,
18404 thus causing objfwd-ing from being dropped.
18405
184062007-11-14 Juanma Barranquero <lekktu@gmail.com>
18407
18408 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18409 (Fx_display_pixel_height, Fx_display_planes)
18410 (Fx_display_color_cells, Fx_server_max_request_size)
18411 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18412 (Fx_display_visual_class, Fx_display_save_under):
18413 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18414 (Fx_display_pixel_height, Fx_display_planes)
18415 (Fx_display_color_cells, Fx_server_max_request_size)
18416 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18417 (Fx_display_mm_height, Fx_display_mm_width)
18418 (Fx_display_backing_store, Fx_display_visual_class)
18419 (Fw32_select_font, Fx_display_save_under):
18420 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18421 (Fx_display_pixel_height, Fx_display_planes)
18422 (Fx_display_color_cells, Fx_server_max_request_size)
18423 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18424 (Fx_display_save_under): Fix typos in docstrings.
18425
184262007-11-14 Juanma Barranquero <lekktu@gmail.com>
18427
18428 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18429 corresponding to deleted entries; they are an implementation detail.
18430 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18431 Remove variables.
18432 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18433 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18434 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18435 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18436 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18437 (Fw32_define_rgb_color, Fw32_load_color_file)
18438 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18439 Fix typos in docstrings.
18440 (Fx_server_version): Reflow docstring.
18441 (Fw32_shell_execute): Doc fixes.
18442
184432007-11-13 Juanma Barranquero <lekktu@gmail.com>
18444
18445 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18446 if w32_parse_hot_key returned nil.
18447
184482007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18449
18450 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18451
184522007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 18453
aac0c6e3
MR
18454 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18455
18456 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18457
18458 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18459 Remove W32_SCROLL_BAR_CLICK_EVENT.
18460
18461 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18462 Add MULTIMEDIA_KEY_EVENT.
18463
18464 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18465 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18466 (make_lispy_event) [WINDOWSNT]: Use it to translate
18467 MULTIMEDIA_KEY_EVENT.
18468
18469 * w32term.h (WM_APPCOMMAND): Define if not already.
18470 (GET_APPCOMMAND_LPARAM): Likewise.
18471
18472 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18473 WM_APPCOMMAND.
18474
18475 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18476 (syms_of_w32fns): Export and initialize it.
18477 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18478
184792007-11-09 Chong Yidong <cyd@stupidchicken.com>
18480
18481 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18482 twice.
18483
18484 * xdisp.c (handle_face_prop): Fix last change.
18485
184862007-11-09 Richard Stallman <rms@gnu.org>
18487
18488 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18489 not just for after-strings and before-strings.
18490 Call face_for_overlay_string and pass the overlay to it.
18491 (handle_display_prop): Determine whether property came from an overlay.
18492 Pass OVERLAY arg to handle_single_display_spec.
18493 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18494 (load_overlay_strings): Fill in it->string_overlays.
18495 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18496
18497 * xfaces.c (face_for_overlay_string): Function renamed from
18498 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18499
18500 * dispextern.h (struct it): New elt string_overlays.
18501 New elt from_overlay, also in stack.
18502 Rearrange a few elements.
18503 (face_for_overlay_string): Decl renamed from
18504 face_at_buffer_position_no_overlays, and add argument.
18505
185062007-11-09 Richard Stallman <rms@gnu.org>
18507
18508 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18509 to get the base face for an overlay string.
18510
18511 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18512
18513 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18514
18515 * xdisp.c (handle_stop): Move some code out of loop.
18516
185172007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18518
18519 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18520 Fix conversion from Lisp object to ATSUFontID.
18521
185222007-11-09 Jason Rumney <jasonr@gnu.org>
18523
18524 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18525
185262007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18527
18528 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18529 Don't assume regions are aligned to page boundary.
18530 (print_load_command_name): Add LC_UUID if defined.
18531
185322007-11-09 Richard Stallman <rms@gnu.org>
18533
18534 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18535
185362007-11-07 Jason Rumney <jasonr@gnu.org>
18537
18538 * s/windows95.h: Remove.
18539
185402007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18541
18542 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18543 abort with a message on unhandled store_type values.
18544
185452007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18546
18547 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18548 Remove HAVE_X11R5 and HAVE_X11R4.
18549
185502007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18551
18552 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18553
185542007-11-01 Johan Bockgård <bojohan@gnu.org>
18555
18556 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18557 Don't set s->stippled_p here, since it has already been set by
18558 x_set_glyph_string_gc from x_draw_glyph_string.
18559
185602007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18561
18562 * sunfns.c: Remove file.
18563
18564 * m/sun386.h:
18565 * m/sun2.h:
18566 * m/sparc.h: Remove Sun windows code.
18567
185682007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18569
18570 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18571 (init_keyboard): Set current_kboard's window-system to nil.
18572 (tty_read_avail_input): Typo.
18573 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18574
185752007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18576
18577 * s/usg5-4.h:
18578 * s/usg5-3.h:
18579 * s/ptx.h:
18580 * m/is386.h:
18581 * m/ibmps2-aix.h:
18582 * Makefile.in: Remove all mentions of X10.
18583
18584 * dispnew.c (syms_of_display): Don't mention version 10.
18585
185862007-10-28 Juanma Barranquero <lekktu@gmail.com>
18587
18588 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18589 ($(BLD)/abbrev.$(O)): Remove.
18590
185912007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18592
18593 Rewrite abbrev.c in Elisp.
18594 * image.c (Qcount): Don't declare as extern.
18595 (syms_of_image): Initialize and staticpro `Qcount'.
18596 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18597 * emacs.c (main): Don't call syms_of_abbrev.
18598 * Makefile.in (obj): Remove abbrev.o.
18599 (abbrev.o): Remove.
18600 * abbrev.c: Remove.
18601
186022007-10-26 Martin Rudalics <rudalics@gmx.at>
18603
18604 * window.c (window_min_size_2): Don't count header-line.
18605
186062007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18607
18608 * frame.h (struct frame): Move all bit fields after the first bit
18609 field to take advantage of the available space. Group all the
18610 chars together to reduce wasted space due to padding.
18611
186122007-10-26 Juanma Barranquero <lekktu@gmail.com>
18613
18614 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18615
18616 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18617 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18618 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18619 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18620 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18621 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18622 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18623 (last_marked, mark_object_loop_halt): Make static.
18624
18625 * frame.c (syms_of_frame) <delete-frame-functions>:
18626 Fix typo in docstring.
18627
186282007-10-25 Juanma Barranquero <lekktu@gmail.com>
18629
18630 * w32.c (init_environment): Fix tiny memory leak.
18631 (w32_get_resource): Remove unused variable `ok'.
18632
186332007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18634
18635 Make `window-system' into a keyboard-local variable (rather than
18636 frame-local as done originally by multi-tty).
18637
18638 * keyboard.h (struct kboard): Add Vwindow_system.
18639 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18640 (mark_kboards): Mark Vwindow_system.
18641
18642 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18643 (init_display): Don't set the obsolete `window-system' frame-param.
18644
18645 * xterm.c (x_term_init):
18646 * w32term.c (w32_create_terminal):
18647 * term.c (init_tty): Set Vwindow_system.
18648 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18649 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18650
18651 * xfns.c (Fx_create_frame, x_create_tip_frame):
18652 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18653 * macfns.c (Fx_create_frame):
18654 Don't set the obsolete `window-system' frame-param.
18655
18656 * frame.h (Qwindow_system): Remove.
18657 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18658 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18659
186602007-10-24 Richard Stallman <rms@gnu.org>
18661
18662 * frame.c (x_figure_window_size): For fullscreen case,
18663 set USPosition | PPosition without clobbering rest of window_prompting.
18664
18665 * keyboard.c (Fcurrent_idle_time): Doc fix.
18666
18667 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18668
186692007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18670
18671 * process.c (unwind_request_sigio): Only define if __ultrix__.
18672
18673 * callproc.c (child_setup): Remove spurious *.
18674
18675 * lisp.h (Fget_text_property): Declare.
18676 (have_menus_p): Declare it here rather than in sys-dep header files.
18677 * macterm.h (have_menus_p):
18678 * msdos.h (have_menus_p):
18679 * xterm.h (have_menus_p): Remove.
18680
18681 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18682 (Fmake_variable_frame_local): Just check the variable's const-ness
18683 rather than checking nil or t.
18684
186852007-10-22 Jason Rumney <jasonr@gnu.org>
18686
18687 * w32fns.c: Include math.h.
18688 (w32_abort): Declaration moved to nt/config.nt.
18689
18690 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18691 (abort): Redefinition moved to nt/config.nt.
18692
18693 * m/windowsnt.h: Remove.
18694
186952007-10-22 Juanma Barranquero <lekktu@gmail.com>
18696
18697 * emacs.c (Fdump_emacs): Fix typo in message.
18698 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18699 <installation-directory>: Reflow docstring.
18700
187012007-10-22 Juri Linkov <juri@jurta.org>
18702
18703 * minibuf.c: Allow minibuffer default to be a list of default values.
18704 With empty input use the first element of this list as returned default.
18705 (string_to_object)
18706 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18707 (read_minibuf): If defalt is cons, set histstring to its car.
18708 (Fread_string): If default_value is cons, set val to its car.
18709 (Fread_buffer): If def is cons, use its car.
18710 (Fcompleting_read): If defalt is cons, set val to its car.
18711
187122007-10-21 Michael Albinus <michael.albinus@gmx.de>
18713
18714 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18715
187162007-10-20 Juanma Barranquero <lekktu@gmail.com>
18717
18718 * doc.c (Fdocumentation): Check for advice in all cases.
18719
187202007-10-19 Chong Yidong <cyd@stupidchicken.com>
18721
18722 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18723
187242007-10-19 Richard Stallman <rms@gnu.org>
18725
18726 * doc.c (Fdocumentation): Check for and handle an advised function.
18727
187282007-10-19 Juanma Barranquero <lekktu@gmail.com>
18729
18730 * process.c (Fset_process_filter): Doc fix.
18731
187322007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18733
18734 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18735 which caused key-translation-map to applied repeatedly (thus breaking
18736 double-mode).
18737
187382007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18739
18740 * xselect.c (x_own_selection, x_handle_selection_clear)
18741 (x_clear_frame_selections):
18742 * w32menu.c (list_of_panes, list_of_items):
18743 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18744 * textprop.c (validate_plist, interval_has_all_properties)
18745 (interval_has_some_properties, interval_has_some_properties_list)
18746 (add_properties, text_property_list):
18747 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18748 * minibuf.c (Fassoc_string):
18749 * macselect.c (x_own_selection, x_clear_frame_selections)
18750 (Fx_disown_selection_internal):
18751 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18752 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18753
187542007-10-17 Chong Yidong <cyd@stupidchicken.com>
18755
18756 * process.c: Link to libs for calling res_init() if available.
18757 (Fmake_network_process): Call res_init() before getaddrinfo or
18758 gethostbyname, if possible.
18759
187602007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18761
18762 * lread.c (read1): Set pvectype for char_tables.
18763
18764 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18765 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18766 Add type checks.
18767 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18768
18769 * alloc.c (free_misc): Use XMISCTYPE.
18770 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18771
187722007-10-17 Glenn Morris <rgm@gnu.org>
18773
18774 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18775 (syms_of_minibuf): Add Qcompletion_ignore_case.
18776 * dired.c (Qcompletion_ignore_case): Change to external.
18777 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18778 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18779 (Fread_file_name): Use it rather than intern'ing.
18780
18781 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18782 (Fread_coding_system): Ignore case of user input.
18783
187842007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18785
18786 * xdisp.c (handle_display_prop): Ignore display specs after
18787 replacing one when string text is being replaced.
18788 (handle_single_display_spec): Pretend as if characters with display
18789 property haven't been consumed only when buffer text is being replaced.
18790
187912007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18792
18793 * xfns.c (Fx_create_frame, Fx_display_list):
18794 * window.c (window_fixed_size_p, enlarge_window)
18795 (shrink_window_lowest_first):
18796 * macterm.c (init_font_name_table):
18797 * macfns.c (Fx_create_frame, Fx_display_list):
18798 * lread.c (close_load_descs):
18799 * keyboard.c (read_char_x_menu_prompt):
18800 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18801 * coding.c (code_convert_region_unwind): Test the type of an object
18802 rather than just !NILP before extracting data from it.
18803
18804 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18805
18806 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18807 (XMISCANY): New macro.
18808 (XMISCTYPE): Use it.
18809 (struct Lisp_Misc_Any): New type.
18810 (union Lisp_Misc): Use it.
18811 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18812 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18813 (find_symbol_value, set_internal, default_value, Fset_default)
18814 (Fmake_variable_buffer_local, Fmake_local_variable)
18815 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18816 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18817 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18818 * alloc.c (allocate_buffer): Set the size and tag.
18819 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18820 Use XMISCANY.
18821 (die): Follow the GNU convention for error messages.
18822 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18823 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18824 tag any more.
18825 (set_buffer_internal_1):
18826 * frame.c (store_frame_param):
18827 * eval.c (specbind):
18828 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18829
18830 * doc.c (Fsnarf_documentation): Simplify.
18831
188322007-10-14 Juanma Barranquero <lekktu@gmail.com>
18833
18834 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18835 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18836
188372007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18838
18839 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18840
188412007-10-14 Juanma Barranquero <lekktu@gmail.com>
18842
18843 * eval.c (do_autoload): Don't save autoloads.
18844
18845 * data.c (Ffset): Save autoload of the function being set.
18846
188472007-10-07 John Paul Wallington <jpw@pobox.com>
18848
18849 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18850 parameter before setting up faces.
18851
188522007-10-13 Eli Zaretskii <eliz@gnu.org>
18853
18854 * ccl.c (Fregister_code_conversion_map):
18855 * keyboard.c (append_tool_bar_item): Reformat last change.
18856
18857 * lisp.h (eabs): Rename from `abs'. All callers changed.
18858
188592007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18860
18861 * buffer.c (add_overlay_mod_hooklist):
18862 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18863 * fontset.c (make_fontset):
18864 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18865 (append_tool_bar_item):
18866 * macmenu.c (grow_menu_items):
18867 * w32menu.c (grow_menu_items):
18868 * xmenu.c (grow_menu_items): Use larger_vector.
18869
188702007-10-13 Eli Zaretskii <eliz@gnu.org>
18871
18872 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18873 selected frame'' on MSDOS).
18874
188752007-10-12 Martin Rudalics <rudalics@gmx.at>
18876
18877 * frame.c (Qexplicit_name): New variable.
18878 (x_report_frame_params): Report it in parameter alist.
18879 (syms_of_frame): Intern and staticpro it.
18880
188812007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18882
18883 * macfns.c (x_create_tip_frame): Set terminal for frame.
18884
188852007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18886
18887 * frame.c (Qenvironment): Remove.
18888 (syms_of_frame) <Qenvironment>: Don't initialize.
18889 (Fdelete_frame): Don't treat the `environment' param specially.
18890 * frame.h (Qenvironment): Don't declare.
18891 * callproc.c (set_initial_environment): Don't set unused frame param.
18892
18893 * frame.c (Fframe_with_environment): Remove.
18894 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18895
18896 * lisp.h (Fframe_with_environment): Don't declare.
18897
188982007-10-10 Juanma Barranquero <lekktu@gmail.com>
18899
18900 * indent.c (indent_tabs_mode, last_known_column)
18901 (last_known_column_modified): Make static.
18902 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18903
189042007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18905
18906 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18907
189082007-10-09 Jason Rumney <jasonr@gnu.org>
18909
18910 * w32term.c (x_set_window_size): Disable code that attempts to tell
18911 Lisp code about a size change before it actually happens.
18912
189132007-10-09 Richard Stallman <rms@gnu.org>
18914
18915 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18916 return HANDLED_RETURN.
18917
189182007-10-08 Martin Rudalics <rudalics@gmx.at>
18919
18920 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18921 when there's an unread command event.
18922
18923 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18924 window autoselection act appropriately when leaving selected frame.
18925 (syms_of_frame): Initialize focus_follows_mouse.
18926 * frame.h (focus_follows_mouse): Extern it.
18927 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18928 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18929 * msdos.c (dos_rawgetc): Likewise.
18930 * w32term.c (w32_read_socket): Likewise.
18931 * xterm.c (handle_one_xevent): Likewise.
18932 * xdisp.c (syms_of_xdisp): In doc-string of
18933 mouse-autoselect-window mention focus-follows-mouse.
18934
189352007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18936
18937 * macterm.c (mac_load_query_font): Fix missing return value.
18938 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18939 Add BLOCK_INPUT.
18940
189412007-10-08 Richard Stallman <rms@gnu.org>
18942
18943 * xdisp.c (get_window_cursor_type): Implement documented behavior
18944 for cursor-in-non-selected-windows = t.
18945
189462007-10-08 Jason Rumney <jasonr@gnu.org>
18947
18948 * w32.c (w32_get_resource): Always close registry keys.
18949
189502007-10-08 Jason Rumney <jasonr@gnu.org>
18951
18952 * makefile.w32-in (LIBS): Add COMCTL32.
18953
18954 * w32fns.c (globals_of_w32fns): Init common controls.
18955
189562007-10-08 Richard Stallman <rms@gnu.org>
18957
18958 * image.c (our_memory_buffer): Rename from omfib_buffer.
18959
189602007-10-08 Richard Stallman <rms@gnu.org>
18961
18962 * buffer.c (Foverlays_at): Doc fix.
18963
189642007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18965
18966 * fns.c (Fplist_put): Preserve uneven tail data.
18967
189682007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18969
18970 * termhooks.h (enum event_kind): Remove trailing comma.
18971
18972 * frame.h (enum): Remove trailing comma.
18973
189742007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18975
18976 * w32proc.c (delete_child): Don't terminate threads of zombies.
18977
189782007-10-08 Martin Rudalics <rudalics@gmx.at>
18979
18980 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18981
18982 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18983 last-repeatable-command.
18984 (init_kboard): Initialize Vlast_repeatable_command.
18985 (command_loop_1): Set it to real_this_command unless that was
18986 bound to an input event.
18987 (mark_kboards): Mark it.
18988
189892007-10-08 Richard Stallman <rms@gnu.org>
18990
18991 * eval.c (condition-case): Doc fix.
18992
189932007-10-08 Masatake YAMATO <jet@gyve.org>
18994
18995 * xfaces.c (tty_supports_face_attributes_p): Fix code
18996 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18997 was copied and not edited.
18998
189992007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
19000
19001 Add new `input-decode-map' keymap and use it for terminal
19002 escape sequences.
19003 * keyboard.h (struct kboard): Add Vinput_decode_map.
19004 Remove Vlocal_key_translation_map.
19005 * keyboard.c (read_key_sequence): Add support for input-decode-map.
19006 (init_kboard): Init input-decode-map.
19007 Replace local-key-translation-map back with key-translation-map.
19008 (syms_of_keyboard): Declare input-decode-map.
19009 Remove local-key-translation-map. Update docstrings.
19010 (mark_kboards): Mark Vinput_decode_map.
19011 Don't mark Vlocal_key_translation_map.
19012 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
19013 Replace local-key-translation-map back with key-translation-map.
19014 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
19015 Bind in input-decode-map rather than function-key-map.
19016
19017 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
19018 This was made redundant by the previous introduction of XSETPVECTYPE.
19019
190202007-10-09 Richard Stallman <rms@gnu.org>
19021
19022 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
19023
190242007-09-29 Richard Stallman <rms@gnu.org>
19025
19026 * eval.c (internal_condition_case_2, internal_condition_case_1)
19027 (internal_condition_case): Reenable abort if x_catching_errors ()
19028 to see if that really happens and why.
19029
190302007-10-06 Andreas Schwab <schwab@suse.de>
19031
19032 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
19033
190342007-10-04 Juanma Barranquero <lekktu@gmail.com>
19035
19036 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
19037
190382007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
19039
19040 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
19041
190422007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
19043
19044 * window.h (struct window):
19045 * window.c (struct save_window_data, struct saved_window):
19046 * termhooks.h (struct terminal):
19047 * process.h (struct Lisp_Process):
19048 * frame.h (struct frame):
19049 * buffer.h (struct buffer):
19050 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
19051 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
19052 The size field of (pseudo)vectors is now unsigned.
19053 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
19054
19055 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
19056 Turn `count' into an integer.
19057
19058 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
19059 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
19060 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
19061 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
19062 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
19063
19064 * alloc.c (allocate_pseudovector): New fun.
19065 (ALLOCATE_PSEUDOVECTOR): New macro.
19066 (allocate_window, allocate_terminal, allocate_frame)
19067 (allocate_process): Use it.
19068 (mark_vectorlike): New function.
19069 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
19070 (mark_terminals): Use it.
19071 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
19072 (Fmake_byte_code): Use XSETPVECTYPE.
19073
19074 * frame.c (Fframe_parameters): Minor simplification.
19075
19076 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
19077
19078 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
19079
19080 * buffer.c (Fget_buffer_create, init_buffer_once):
19081 * lread.c (defsubr):
19082 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
19083
19084 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
19085 defined differently in the m/*.h files.
19086 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
19087 (XSETPVECTYPE): New macro.
19088 (XSETPSEUDOVECTOR): Use it.
19089
19090 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
19091 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
19092
19093 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
19094 * lread.c (defvar_per_buffer):
19095 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
19096
19097 * window.c (candidate_window_p): Only consider as visible frames that
19098 are on the same terminal.
19099
19100 * m/ibms390x.h (MARKBIT): Remove unused macro.
19101
191022007-10-01 Juanma Barranquero <lekktu@gmail.com>
19103
19104 * lread.c (Fload): Fix typo in docstring.
19105
191062007-10-01 Michaël Cadilhac <michael@cadilhac.name>
19107
19108 * floatfns.c (Fexpt): Manually check for overflows, so that a power
19109 of a non-zero value can't yield zero.
19110
191112007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
19112
19113 * term.c (term_clear_mouse_face, term_mouse_highlight)
19114 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
19115
19116 * print.c (safe_debug_print): Use XHASH.
19117
19118 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
19119 Lisp elements such as tags.
19120 (XHASH): New macro.
19121 (EQ): Use it.
19122 (SREF, SSET, STRING_COPYIN): Use SDATA.
19123 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
19124
19125 * alloc.c (mark_terminal): Remove left-over declaration.
19126 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
19127 (allocate_vectorlike): Remove type argument. Adjust callers.
19128 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
19129 Only handle the one remaining MEM_TYPE_VECTORLIKE.
19130
19131 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
19132 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
19133 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
19134 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
19135 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
19136 Use them.
19137
19138 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
19139 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
19140 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
19141
191422007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
19143
19144 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
19145 loaded by default.
19146
191472007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
19148
19149 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
19150 on this tty.
19151 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
19152
19153 * term.c (mouse_face_window): Rename from Qmouse_face_window.
19154 Update all users.
19155 (handle_one_term_event): Use Gpm_DrawPointer.
19156 (Fgpm_mouse_start): Rename from Fterm_open_connection.
19157 Signal errors instead of returning nil. Always return nil.
19158 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
19159 Make it a noop if gpm-mouse was not activated.
19160 (syms_of_term): Update names.
19161
191622007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
19163
19164 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
19165 (init_sys_modes): Check that gpm_tty is the current tty.
19166
19167 * alloc.c (allocate_terminal): Set the vector size to only count the
19168 lisp fields. Initialize those to nil.
19169 (mark_object): Don't treat terminals specially.
19170 (mark_terminal): Remove.
19171 (mark_terminals): Use mark_object instead.
19172
19173 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
19174 the GC to the beginning.
19175
19176 * indent.h:
19177 * indent.c: Use EMACS_INT for ints coming from Elisp data.
19178
19179 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
19180
191812007-09-25 Jason Rumney <jasonr@gnu.org>
19182
19183 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
19184
19185 * w32console.c (create_w32cons_output): Remove.
19186
19187 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
19188
19189 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
19190 (reset_sys_modes): Use reset_terminal_modes_hook.
19191
191922007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
19193
19194 * eval.c (do_autoload): Don't output any message.
19195
191962007-09-24 Juri Linkov <juri@jurta.org>
19197
19198 * emacs.c (standard_args): Change priority of "--no-splash"
19199 from 40 to 3. Add "--no-desktop" with the same priority.
19200
192012007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
19202
19203 * alloc.c (gc_sweep): Check cons cell mark bits word by word
19204 and optimize the case where they are all 1.
19205
192062007-09-23 Johannes Weiner <hannes@saeurebad.de>
19207
19208 * lisp.h (abs): Define if not defined.
19209 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
19210 Don't define `abs', since it's defined in lisp.h.
19211
192122007-09-22 Eli Zaretskii <eliz@gnu.org>
19213
19214 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
19215 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
19216 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
19217 (init_tty): Use DEV_TTY instead of "/dev/tty".
19218 [WINDOWSNT]: No need to protect from NAME arg being null.
19219
192202007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
19221
19222 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
19223 up the tty state.
19224
192252007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19226
19227 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
19228 (gpm_tty): Change its type.
19229 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
19230 (gpm_tty): Change its type and initialize it.
19231 (Fterm_open_connection): Check the frame is indeed a tty.
19232 Use the new gpm_tty.
19233 (Fterm_close_connection): Use the new gpm_tty.
19234 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
19235 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
19236
192372007-09-21 Juanma Barranquero <lekktu@gmail.com>
19238
19239 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
19240 underline_color, to draw strike-through.
19241
192422007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19243
19244 * lisp.h (allocate_terminal): Declare.
19245
19246 * window.c (candidate_window_p): Consider frames that are being placed
19247 by the user as somewhere between visible and iconified.
19248 (window_loop): Prefer windows on the current frame.
19249 (Fselect_window): Move the use of select-frame to the beginning so we
19250 can just delegate all the work (it'll call us back anyway).
19251
19252 * frame.c (Qdisplay_environment_variable):
19253 * frame.h (Qdisplay_environment_variable): Delete.
19254
19255 * .gdbinit (xbacktrace): Print the arg's address rather than the value
19256 of the first arg, since that value may be a union.
19257
19258 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
19259 parameter rather than Qdisplay_environment_variable. If all else
19260 fails, look for DISPLAY in initial-environment.
19261
192622007-09-21 Glenn Morris <rgm@gnu.org>
19263
19264 * Makefile.in (emacstool): Remove target.
19265 (lisp, shortlisp): Remove termdev.elc.
19266
192672007-09-21 Markus Triska <markus.triska@gmx.at>
19268
19269 * xterm.c (x_delete_display): Compile session management conditionally.
19270
192712007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
19272
19273 * callproc.c (getenv_internal_1): New function.
19274 (getenv_internal): Use it.
19275 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
19276
19277 * terminal.c (get_terminal): Don't accept ints to represent terminals.
19278 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
19279 (Fset_terminal_parameter): Work with dead terminals as well.
19280 (Fmodify_terminal_parameters): Remove.
19281
19282 * terminal.c (get_terminal): Handle terminals.
19283 Make sure the terminal returned is live.
19284 (create_terminal): Use allocate_terminal.
19285 (mark_terminals): Move to alloc.c.
19286 (delete_terminal): Use terminal->name as liveness status.
19287 NULL out fields after freeing their contents.
19288 Don't deallocate the object.
19289 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
19290 rather than an int.
19291 (Fterminal_live_p): Accept non-integer arguments.
19292 (Fterminal_list): Return terminal objects rather than an ints.
19293
19294 * alloc.c (enum mem_type): New member for `terminal' objects.
19295 (allocate_terminal): New function.
19296 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
19297 Handle terminals.
19298 (mark_terminal): New fun.
19299 (mark_terminals): Move from terminal.c.
19300
19301 * term.c (get_tty_terminal): Don't treat output_initial specially.
19302 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
19303 (delete_tty): Use terminal->name as liveness status.
19304
19305 * termhooks.h (struct terminal): Make it into a pseudovector.
19306 Remove `deleted' replaced by checking `name's nullness.
19307
19308 * print.c (print_object): Handle terminals.
19309
19310 * lisp.h (enum pvec_type): New `terminal' pseudovector.
19311 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
19312
19313 * frame.c (make_terminal_frame):
19314 * keyboard.c (tty_read_avail_input):
19315 * w32term.c (x_delete_terminal):
19316 * xfns.c (Fx_create_frame, x_create_tip_frame):
19317 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
19318
193192007-09-20 Glenn Morris <rgm@gnu.org>
19320
19321 * process.c (Fmake_network_process): Doc fix.
19322
193232007-09-19 Jason Rumney <jasonr@gnu.org>
19324
19325 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
19326
193272007-09-19 Michaël Cadilhac <michael@cadilhac.name>
19328
19329 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
19330 Fix a C warning regarding variable constness.
19331
19332 * xterm.c (handle_one_xevent): Fix a C warning.
19333
193342007-09-18 Jason Rumney <jasonr@gnu.org>
19335
19336 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
19337
193382007-09-17 Jan Djärv <jan.h.d@swipnet.se>
19339
19340 * gtkutil.c (gdpy_def): New variable.
19341 (xg_initialize): Initialize gdpy_def.
19342 (xg_display_close): If no other display exists, set gdpy_def to a
19343 new connection.
19344
193452007-09-16 Jan Djärv <jan.h.d@swipnet.se>
19346
19347 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
19348 when we have no file name for the icon.
19349 (xg_tool_bar_expose_callback): Remove.
19350 (xg_create_tool_bar): Don't connect expose signal to
19351 xg_tool_bar_expose_callback.
19352 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
19353
193542007-09-16 Andreas Schwab <schwab@suse.de>
19355
19356 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
19357 values instead of zapping them.
19358
193592007-09-14 Glenn Morris <rgm@gnu.org>
19360
19361 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
19362 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
19363 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
19364 scope and rename to omfib_buffer for clarity.
19365 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
19366
193672007-09-14 Kenichi Handa <handa@m17n.org>
19368
19369 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
19370
193712007-09-13 Jason Rumney <jasonr@gnu.org>
19372
19373 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
19374
19375 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
19376
19377 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
19378 (mac_term_init): Call here instead, passing rif.
19379
193802007-09-13 Glenn Morris <rgm@gnu.org>
19381
19382 * s/hpux.h: No longer define `static' as nothing.
19383
193842007-09-13 Johan Bockgård <bojohan@gnu.org>
19385
19386 * callint.c (Fcall_interactively): Remove unused var `fun'.
19387
193882007-09-12 Romain Francoise <romain@orebokech.com>
19389
19390 * window.c (prefer_window_split_horizontally, display_buffer):
19391 Revert 2007-09-08 change.
19392
193932007-09-12 Glenn Morris <rgm@gnu.org>
19394
19395 * alloca.c: Remove file.
19396 * Makefile.in (alloca): Do not undef.
19397 (allocaobj, alloca.o): Remove.
19398 (otherobj): Remove allocaobj.
19399 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19400 * regex.c (C_ALLOCA): Remove all references and code that was only
19401 used when this was defined.
19402 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19403 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19404 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19405
19406 * Makefile.in (SOURCES, unlock, relock): Delete.
19407
19408 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19409 (menu_grab_callback): All uses changed.
19410
19411 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19412 (x_reply_selection_request): All uses changed.
19413
194142007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19415
19416 * lread.c (load_warn_old_style_backquotes): Change message to look
19417 better when it appears in the middle of byte-compiler messages.
19418
194192007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19420
19421 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19422
19423 * xterm.c (x_create_terminal): Add comment.
19424
19425 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19426
194272007-09-10 Richard Stallman <rms@gnu.org>
19428
19429 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19430
194312007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19432
19433 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19434 (DEFUN): Document `intspec', use it instead of `prompt'.
19435
19436 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19437
19438 * data.c (Finteractive_form): If the interactive specification starts
19439 with a `(', use it as a Lisp form.
19440
19441 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19442 name and file modes.
19443
19444 * callint.c (Fcall_interactively): Comment fixes.
19445
194462007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19447
19448 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19449 and compiled functions.
19450
194512007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19452
19453 * window.c (prefer_window_split_horizontally): New variable.
19454 (display_buffer): Consider splitting window horizontally depending
19455 on prefer_window_split_horizontally.
19456
194572007-09-08 Eli Zaretskii <eliz@gnu.org>
19458
19459 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19460
194612007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19462
19463 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19464
19465 * frame.c (x_set_frame_parameters): Check number is positive before
19466 using XFASTINT.
19467
19468 * window.c (freeze_window_start): Don't presume selected_window holds
19469 a window object.
19470 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19471
194722007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19473
19474 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19475
194762007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19477
19478 * window.c (Vsplit_window_preferred_function): New var.
19479 (Fdisplay_buffer): Use it.
19480 (syms_of_window): Export, and initialize it.
19481
194822007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19483
19484 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19485
194862007-09-06 Glenn Morris <rgm@gnu.org>
19487
19488 * gtkutil.c (menu_grab_callback) <cnt>:
19489 * xselect.c (x_reply_selection_request) <cnt>: Move static
19490 variable to file scope.
19491
194922007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19493
19494 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19495 consistent values of selected_frame and selected_window.
19496
194972007-09-04 Jason Rumney <jasonr@gnu.org>
19498
19499 * w32console.c (initialize_w32_display): Zero unused hooks.
19500
195012007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19502
19503 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19504 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19505
195062007-09-04 Jason Rumney <jasonr@gnu.org>
19507
19508 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19509 in w32console.c. Set up input. Remove XXX comments that have been
19510 confirmed as correct.
19511
19512 * s/ms-w32.h (MULTI_KBOARD): Define.
19513
19514 * w32console.c (one_and_only_w32cons): Remove.
19515 (initialize_w32_display): Take terminal argument.
19516
19517 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19518 initialize_w32_display.
19519 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19520
19521 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19522
19523 * keyboard.c (discard_mouse_events): Discard it.
19524 (make_lispy_event): Translate it to a lisp event.
19525 (lispy_wheel_names): Add wheel-left and right events.
19526 (syms_of_keyboard): Enlarge wheel_syms.
19527
19528 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19529 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19530
19531 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19532
19533 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19534 from WM_MOUSEHWHEEL.
19535 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19536
19537 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19538 terminal.
19539
19540 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19541 keyboard for the terminal.
19542
195432007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19544
19545 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19546 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19547 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19548 and resume-tty-function to resume-tty-hook.
19549 (Fsuspend_tty, Fresume_tty): Use new names.
19550
195512007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19552
19553 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19554 if it starts with "n:".
19555
195562007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19557
19558 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19559
195602007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19561
19562 * frame.h:
19563 * frame.c (Qterm_environment_variable): Remove.
19564 (syms_of_frame): Don't init and staticpro it.
19565
19566 * callproc.c (getenv_internal): Remove special case for $TERM.
19567
19568 * callproc.c (Vinitial_environment): New variable.
19569 (set_initial_environment): Initialize it.
19570 (syms_of_callproc): Declare it.
19571 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19572 TERM under which a process runs is never related to the TERM in which
19573 Emacs is running.
19574
195752007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19576
19577 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19578 * s/darwin.h: ... do it here.
19579
195802007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19581
19582 * lisp.h (set_initial_environment): Rename from set_global_environment.
19583
19584 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19585 removed by mistake on the multi-tty branch.
19586
19587 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19588 (Fmodify_frame_parameters): Return a value.
19589
19590 * image.c (png_load): Comment-out var only used in commented-out code.
19591
19592 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19593 before passing it to mark_object.
19594
19595 * xfaces.c (internal_resolve_face_name): Return a value.
19596 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19597
19598 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19599 (x_icon): Comment-out var only used in commented-out code.
19600
196012007-08-29 Romain Francoise <romain@orebokech.com>
19602
19603 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19604 QUIT hasn't been provided.
19605
196062007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19607
19608 * callproc.c (child_setup, getenv_internal): Use the
19609 display-environment-variable and term-environment-variable frame params.
19610 (set_initial_environment): Initialise Vprocess_environment.
19611
19612 * config.in: Disable multi-keyboard support on a mac.
19613
19614 * frame.c (Qterm_environment_variable)
19615 (Qdisplay_environment_variable): New variables.
19616 (syms_of_frame): Intern and staticpro them.
19617 (Fmake_terminal_frame): Disable output method test.
19618
19619 * frame.h: Declare them here.
19620
19621 * macfns.c (x_set_mouse_color): Get rif from the frame.
19622 (x_set_tool_bar_lines): Don't use updating_frame.
19623 (mac_window): Add 2 new parameters for consistency with other systems.
19624 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19625 frame parameters following what is done in X11 and w32. Don't use
19626 FRAME_MAC_DISPLAY_INFO.
19627 (Fx_open_connection, start_hourglass): Remove window-system check.
19628 (x_create_tip_frame): Get the keyboard from the terminal.
19629
19630 * macmenu.c: Reorder includes.
19631 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19632
19633 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19634 terminal parameter.
19635 (x_clear_frame): Add a frame parameter.
19636 (note_mouse_movement): Get rif from the frame.
19637 (mac_term_init): Initialize the terminal.
19638 (mac_initialize): Make static and move terminal initialization ...
19639 (mac_create_terminal): ... to this new function.
19640
19641 * macterm.h (struct mac_display_info): Add terminal.
19642 (mac_initialize): Delete declaration.
19643
19644 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19645
19646 * sysdep.c: Comment out text after #endif.
19647
19648 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19649 is defined. Better initialize ttys in windows. Use terminal
19650 specific mouse_position_hook.
19651
19652 * termhooks.h (union display_info): Add mac_display_info.
19653
19654 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19655 Set the default minibuffer frame, window_system and the rest of the
19656 frame parameters following what is done in X11.
19657
19658 * w32term.c (w32_initialize): Make static.
19659
19660 * xselect.c (x_handle_selection_clear): Only access
19661 terminal->kboard when MULTI_KBOARD is defined.
19662
19663 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19664 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19665
196662007-08-29 Jason Rumney <jasonr@gnu.org>
19667
19668 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19669 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19670
19671 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19672 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19673
19674 * keyboard.c (restore_kboard_configuration): Only define when
19675 MULTI_KBOARD defined.
19676
19677 * makefile.w32-in: Update dependancies from Makefile.in.
19678 (OBJ1): Add terminal.$(O)
19679
19680 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19681 Don't define function body.
19682 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19683
19684 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19685
19686 * w32.c (request_sigio, unrequest_sigio): Remove.
19687
19688 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19689 (w32con_clear_frame, w32con_clear_end_of_line)
19690 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19691 (w32con_delete_glyphs, w32con_set_terminal_window)
19692 (scroll_line, w32_sys_ring_bell): Add frame arg.
19693 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19694 Add terminal arg.
19695 (PICK_FRAME): Remove.
19696 (w32con_write_glyphs): Use frame specific terminal coding.
19697 (one_and_only_w32cons): New global variable.
19698 (initialize_w32_display): Use it for storing hooks.
19699 (create_w32cons_output): New function.
19700
19701 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19702 arg a frame.
19703
19704 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19705 Set window_system.
19706 (x_set_tool_bar_lines): Don't use updating_frame.
19707 (Fx_create_frame): Set terminal and ref count.
19708 (Fx_open_connection): Remove window-system check.
19709
19710 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19711
19712 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19713 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19714 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19715 Add frame arg.
19716 (x_delete_terminal, w32_create_terminal): New functions.
19717 (w32_term_init): Create a terminal.
19718 (w32_initialize): Move terminal specific initialization to
19719 w32_create_terminal.
19720
19721 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19722 (w32_clear_rect, w32_clear_area): Use background from frame.
19723 (w32_display_info): Add terminal.
19724 (w32_sys_ring_bell, x_delete_display): Declare here.
19725
19726 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19727
19728 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19729
197302007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19731
19732 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19733 Fix get_named_tty calls for the controlling tty.
19734
197352007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19736
19737 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19738
197392007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19740
19741 * term.c (tty_insert_glyphs): Add missing first parameter.
19742
197432007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19744
19745 * buffer.c (Fbuffer_list, Fbury_buffer):
19746 Take frame->buried_buffer_list into account.
19747
19748 * cm.c (current_tty): New variable, for cmputc().
19749 (cmputc): Use it.
19750 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19751 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19752 (cmgoto): Add tty parameter. Pass it on to calccost().
19753 Use emacs_tputs() instead of tputs().
19754
19755 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19756 tputs().
19757 (current_tty): New variable, for cmputc().
19758 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19759
19760 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19761 (internal_condition_case, internal_condition_case_1)
19762 (internal_condition_case_2): Don't abort when x_catching_errors.
19763
19764 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19765 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19766 prevent crashes caused by bogus longjmps in read_char.
19767
19768 * keymap.h (Fset_keymap_parent): Add EXFUN.
19769
19770 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19771 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19772 Remove redundant definition.
19773
19774 * macfns.c (x_set_mouse_color, x_make_gc):
19775 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19776
19777 * w32term.c (x_free_frame_resources):
19778 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19779 (w32_initialize): Use the accessor macros for terminal characteristics.
19780
19781 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19782 Use the accessor macros for terminal characteristics.
19783 * msdos.c (internal_terminal_init): Use the accessor macros for
19784 terminal characteristics.
19785 (ScreenVisualBell, internal_terminal_init):
19786 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19787
19788 * termopts.h (no_redraw_on_reenter): Declare.
19789
19790 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19791 (mark_terminals, mark_ttys): Declare.
19792 (Fgarbage_collect): Call them.
19793 (mark_object): Mark buried_buffer_list.
19794
19795 * prefix-args.c: Include stdlib.h for exit.
19796
19797 * syssignal.h: Add comment.
19798
19799 * indent.c: Include stdio.h.
19800
19801 * window.h (Vinitial_window_system): Declare.
19802 (Vwindow_system): Delete declaration.
19803
19804 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19805
19806 * image.c (lookup_image): Don't initialize `c' until the xasserts
19807 have been run.
19808
19809 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19810 FRAME_FOREGROUND_PIXEL.
19811
19812 * print.c (print_preprocess): Don't lose print_depth levels while
19813 iterating.
19814
19815 * widget.c (update_from_various_frame_slots):
19816 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19817
19818 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19819 frames.
19820 (window_internal_height): Remove bogus make_number call.
19821 (init_window_once): Call make_terminal_frame with two zero parameters.
19822
19823 * fileio.c (Fread_file_name): Update comment.
19824
19825 * callint.c (Fcall_interactively):
19826 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19827 Make sure it is correctly unwound.
19828
19829 * xsmfns.c (x_session_close): New function.
19830
19831 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19832 Delete declarations.
19833
19834 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19835 (x_output): Remove background_pixel and foreground_pixel fields.
19836 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19837 (x_delete_device, x_session_close): Declare.
19838
19839 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19840 (read_filtered_event): Call `read_char' with a local
19841 `wrong_kboard_jmpbuf'.
19842
19843 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19844 Don't call single_kboard_state. Use FRAME_RIF.
19845
19846 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19847 systems.
19848
19849 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19850 (Fframe_with_environment, Fset_input_meta_mode)
19851 (Fset_quit_char): EXFUN.
19852 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19853 (init_sys_modes, reset_sys_modes): Update prototypes.
19854 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19855
19856 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19857 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19858 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19859 Delete declarations.
19860 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19861 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19862 New declarations.
19863
19864 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19865 already does that during init_display(). Call syms_of_keymap
19866 before syms_of_keyboard. Call `syms_of_terminal'.
19867 Call set_initial_environment, not set_process_environment.
19868 (shut_down_emacs): Call reset_all_sys_modes() instead of
19869 reset_sys_modes().
19870
19871 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19872 (internal_resolve_face_name, resolve_face_name_error): New functions.
19873 (resolve_face_name): Protect against loops and errors thrown by Fget.
19874 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19875 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19876
19877 * scroll.c: Replace CURTTY() with local variables throughout the
19878 file (where applicable).
19879 (calculate_scrolling, calculate_direct_scrolling)
19880 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19881 characteristics.
19882
19883 * keymap.c (Vfunction_key_map): Remove.
19884 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19885 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19886 (Vkey_translation_map): Remove.
19887 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19888 (Fdescribe_buffer_bindings)
19889 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19890 Update for terminal-local key-translation-map.
19891
19892 * Makefile.in (callproc.o): Update dependencies.
19893 (lisp, shortlisp): Add termdev.elc.
19894 (obj): Add terminal.o.
19895 (terminal.o): Add dependencies.
19896 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19897 (data.o, fns.o): Add termhooks.h dependency.
19898 (SOME_MACHINE_LISP): Add dnd.elc.
19899 (minibuf.o): Fix typo.
19900 Update dependencies.
19901
19902 * data.c (do_symval_forwarding, store_symval_forwarding)
19903 (find_symbol_value): Use the selected frame's keyboard, not
19904 current_kboard.
19905
19906 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19907 Vwindow_system.
19908
19909 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19910 Fmenu_bar_open.
19911 (syms_of_xmenu): Update defsubr.
19912 (mouse_position_for_popup, Fx_popup_menu)
19913 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19914 (set_frame_menubar, free_frame_menubar)
b97439ce 19915 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
19916 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19917 an X frame.
19918
19919 * xselect.c (x_own_selection): Abort if not an X frame.
19920 (some_frame_on_display): Check if it is an X frame.
19921 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19922
19923 * coding.c: Include frame.h and termhooks.h.
19924 (terminal_coding, keyboard_coding): Delete.
19925 (Fset_terminal_coding_system_internal)
19926 (Fset_keyboard_coding_system_internal)
19927 (Fkeyboard_coding_system)
19928 (Fterminal_coding_system): Add a terminal parameter.
19929 Get terminal_coding from the terminal.
19930 (init_coding_once): Don't call setup_coding_system here.
19931
19932 * dispextern.h (set_scroll_region, turn_off_insert)
19933 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19934 (tty_clear_end_of_line, tty_setup_colors)
19935 (delete_tty, updating_frame)
19936 (produce_special_glyphs, produce_glyphs, write_glyphs)
19937 (insert_glyphs): Remove.
19938 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19939 (tty_turn_off_highlight, get_tty_size): Add declaration.
19940 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19941
19942 * frame.h (enum output_method): Add output_initial.
19943 (struct x_output): Delete.
19944 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19945 Access foreground_pixel and background_pixel directly from the frame.
19946 (tty_display): Delete.
19947 (struct frame): Add buried_buffer_list, foreground_pixel,
19948 background_pixel and terminal. Delete kboard.
19949 (union output_data): Add tty.
19950 (FRAME_KBOARD): Get the kboard from the terminal.
19951 (FRAME_INITIAL_P): New macro.
19952 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19953 (Qterm_environment_variable, Qdisplay_environment_variable)
19954 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19955 New declarations.
19956
19957 * termchar.h (tty_output, tty_display_info): New structures.
19958 (tty_list): Declare.
19959 (FRAME_TTY, CURTTY): New macros.
19960 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19961 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19962 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19963 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19964
19965 * callproc.c: Include frame.h and termhooks.h, for terminal
19966 parameters.
19967 (add_env): New function.
19968 (child_setup): Use it.
19969 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19970 (getenv_internal): Fix get_terminal_param call.
19971 (Fgetenv_internal, egetenv): Update doc.
19972 (syms_of_callproc): Initialize Vprocess_environment to nil.
19973 Register and initialize them. Remove obsolete defvars. Update doc
19974 strings.
19975 (child_setup): Handle Vlocal_environment_variables.
19976 (getenv_internal): Add terminal parameter.
19977 Handle Vlocal_environment_variables.
19978 (Fgetenv_internal): Add terminal parameter.
19979 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19980 environment in a frame (not terminal) parameter. Update doc strings.
19981 (set_initial_environment): Rename from set_global_environment.
19982 Store Emacs environment in initial frame parameter.
19983
19984 * xdisp.c (redisplay_internal): Update references to
19985 `previous_terminal_frame'.
19986 (display_mode_line, Fformat_mode_line): Replace calls to
19987 `push_frame_kboard' with `push_kboard'.
19988 (get_glyph_string_clip_rects): Add extra parentheses and
19989 braces to prevent compiler warnings.
19990 (calc_pixel_width_or_height): Add xassert to check that the
19991 frame is alive. Don't call `lookup_image' on a termcap frame.
19992 (message2_nolog, message3_nolog, redisplay_internal)
19993 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19994 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19995 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19996 (Fx_display_pixel_width, Fx_display_pixel_height)
19997 (Fx_display_planes, Fx_display_color_cells)
19998 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19999 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
20000 (Fx_display_backing_store, Fx_display_visual_class)
20001 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
20002 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
20003
20004 * xfns.c (x_set_foreground_color x_set_background_color)
20005 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
20006 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20007 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
20008 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
20009 terminal that is being deleted.
20010 (Fx_create_frame): Use `store_frame_param' to set `window-system'
20011 frame parameter, and make sure it overrides any user-supplied setting.
20012 (Fx_close_connection, Fx_synchronize): Unify argument names with
20013 the rest of the DEFUNs.
20014
20015 * dispnew.c (Fsend_string_to_terminal): Update call to
20016 `get_tty_terminal'.
20017 (Fredraw_frame, Fsend_string_to_terminal)
20018 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
20019 FRAME_TERMCAP_P and FRAME_TTY.
20020 (window_change_signal): Don't believe width/height values that are
20021 impossibly small.
20022 (Vinitial_window_system): Rename from Vwindow_system.
20023 (termscript, Wcm, rif): Delete.
20024
20025 * termhooks.h (struct terminal): New struct containing the
20026 previously global text display hooks and new members NAME,
20027 DELETED and PARAM_ALIST.
20028 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
20029 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
20030 (FRAME_RIF): New macros.
20031 (get_terminal_param, get_device): New declarations.
20032 (termscript): Delete declaration.
20033
20034 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
20035 (XTflash, x_free_frame_resources, x_scroll_bar_create)
20036 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
20037 FRAME_FOREGROUND_PIXEL.
20038 (x_fully_uncatch_errors): Disable definition.
20039 (x_scroll_bar_expose): Fix reference to foreground pixel.
20040 (XTread_socket): Disable loop on all X displays.
20041 (x_delete_terminal): Don't set terminal->deleted and let
20042 delete_terminal delete the frames on the terminal.
20043 (x_delete_display): Doc update to reflect changes in
20044 delete_terminal.
20045 (x_display_info) <terminal>: Move member earlier in the struct.
20046 (deleting_tty): Remove old variable.
20047 (Fsuspend_tty): Call clear_tty_hooks.
20048 (Fresume_tty, init_tty): Call set_tty_hooks.
20049 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
20050 errors on X frames.
20051 (x_catch_errors_unwind): Abort if x_error_message is NULL.
20052 (handle_one_xevent): Initialize `f' to NULL.
20053 (x_delete_terminal, x_create_terminal): New functions.
20054 (XTset_terminal_modes, XTreset_terminal_modes)
20055 (XTread_socket, x_connection_closed, x_term_init)
20056 (x_term_init, x_delete_display): Add terminal parameter.
20057 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
20058 X connections.
20059
20060 * frame.c: Include termchar.h.
20061 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
20062 (Qwindow_system, Qenvironment, Qterm_environment_variable)
20063 (Qdisplay_environment_variable): New vars.
20064 (Fframep): Deal with output_initial.
20065 (Fframe-live-p): Doc fix.
20066 (Fwindow-system): New function.
20067 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
20068 (make_terminal_frame): Don't create frames on a terminal that is
20069 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20070 (store_frame_param): Check for found_for_frame before calling XFRAME.
20071 (Fmake_terminal_frame): Handle NULL tty names correctly.
20072 (syms_of_frame): Enhance doc string of `default-frame-alist'.
20073 (Fdelete_frame): Remove unused variable `count'. Don't allow other
20074 frames to refer to a deleted frame in their 'environment parameter.
20075 (Fframe_with_environment): New function.
20076 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
20077 (get_future_frame_param): New function.
20078 (Fmake_terminal_frame): Use it.
20079 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
20080
20081 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
20082 * sysdep.c (reset_sys_modes): Update for renames.
20083
20084 * keyboard.c (tty_read_avail_input): New function.
20085 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
20086 (syms_of_keyboard): Defsubr them.
20087 (Fset_input_meta_mode, Fset_quit_char): New functions.
20088 (Fset_input_mode): Split to above functions.
20089 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
20090 parameter. Use it in call to `read_char'.
20091 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
20092 Set wrong_kboard_jmpbuf correctly in recursive calls.
20093 Use current_kboard to access Vkeyboard_translate_table.
20094 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
20095 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
20096 Update longjmp invocations. Remember the original current_kboard,
20097 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
20098 changes it. Comment out unnecessary calls to
20099 `record_single_kboard_state' and `any_kboard_state'.
20100 Update recursive calls.
20101 (wrong_kboard_jmpbuf): Remove global variable.
20102 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
20103 Handle deleted interrupted_kboards correctly; that is a legal
20104 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
20105 and read_char calls. Abort if interrupted_kboard died in read_char.
20106 (any_kboard_state, single_kboard_state)
20107 (push_frame_kboard): Remove function.
20108 (pop_kboard): Switch out of single_kboard mode if the kboard has
20109 been deleted. Remove unused variable. Help debugging by not
20110 changing current_kboard unnecessarily. Set current_kboard to the
20111 kboard of the selected frame when the stored kboard object has
20112 been deleted before pop_kboard.
20113 (temporarily_switch_to_single_kboard): Change first parameter to a
20114 frame pointer. Throw an error when caller wants to change kboards
20115 while in single_kboard mode. Don't push_kboard if we weren't in
20116 single kboard state. Don't pop_kboard if we popped into any
20117 kboard state.
20118 (restore_kboard_configuration): Abort if pop_kboard changed the
20119 kboard in single_kboard mode. Call pop_kboard only after setting
20120 up single_kboard mode.
20121 (Frecursive_edit): Switch to single_kboard mode only in nested
20122 command loops.
20123 (cmd_error, command_loop, command_loop_1, timer_check):
20124 Comment out unnecessary call to `any_kboard_state' and
20125 `record_single_kboard_state'.
20126 (delete_kboard): Exit single_kboard mode if we have just deleted
20127 that kboard. Use FRAME_KBOARD.
20128 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
20129 `fatal_error_signal'.
20130 (record_single_kboard_state): Don't push_kboard if we weren't in
20131 single kboard state. Don't pop_kboard if we popped into any
20132 kboard state.
20133 (push_frame_kboard): Rename to push_kboard.
20134 (kbd_buffer_get_event): Use FRAME_TERMINAL.
20135 (read_avail_input): Read input from all terminals.
20136 (mark_kboards): Also mark Vkeyboard_translate_table.
20137 (kbd_buffer_store_event_hold): Simplify condition.
20138 (read_key_sequence): Reinitialize fkey and keytran at each replay.
20139 (Vkeyboard_translate_table): Move to struct kboard.
20140 (init_kboard): Initialize Vkeyboard_translate_table.
20141 (syms_of_keyboard): Use DEFVAR_KBOARD to define
20142 Vkeyboard_translate_table. Update doc strings. Update docs of
20143 local-function-key-map and function-key-map.
20144
20145 * terminal.c: New file.
20146
20147 * term.c: Include errno.h.
20148 (Vring_bell_function, device_list, initial_device)
20149 (next_device_id, ring_bell, update_begin, update_end)
20150 (set_terminal_window, cursor_to, raw_cursor_to)
20151 (clear_to_end, clear_frame, clear_end_of_line)
20152 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
20153 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
20154 (syms_of_term): Move their initialization to terminal.c.
20155 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
20156 (Ftty_display_color_cells)
20157 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
20158 (clear_tty_hooks, set_tty_hooks)
20159 (init_tty, maybe_fatal): New functions.
20160 (Ftty_type): Return nil if terminal is not on a tty instead of
20161 throwing an error. Doc update.
20162 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
20163 Doc update. Initialize new subrs and variables.
20164 (delete_tty): Use terminal->deleted.
20165 (tty_set_terminal_modes): Rename from set_terminal_modes.
20166 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
20167 (set_scroll_region): Rename to `tty_set_scroll_region'.
20168 (turn_on_insert): Rename to `tty_turn_on_insert'.
20169 (turn_off_insert): Rename to `tty_turn_off_insert'.
20170 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
20171 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
20172 (toggle_highligh): Rename to `tty_toggle_highlight'.
20173 (background_highlight): Rename to `tty_background_highlight'.
20174 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
20175 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
20176 (tty_set_scroll_region, tty_background_highlight)
20177 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
20178 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
20179 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
20180 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
20181 Add static modifier.
20182 (tty_reset_terminal_modes, tty_set_terminal_window)
20183 (tty_set_scroll_region, tty_background_highlight)
20184 (tty_highlight_if_desired, tty_cursor_to)
20185 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
20186 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
20187 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
20188 renames.
20189
201902007-08-28 Jan Djärv <jan.h.d@swipnet.se>
20191
20192 * keyboard.c: Qrtl is new.
20193 (parse_tool_bar_item): Handle :rtl keyword.
20194 (syms_of_keyboard): Intern :rtl keyword.
20195
20196 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
20197
20198 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
20199 so no Lisp code is executed.
20200 (file_for_image, find_rtl_image): New functions.
20201 (xg_get_image_for_pixmap): Use file_for_image.
20202 (update_frame_tool_bar): If direction is RTL, use RTL image if
20203 defined. Use Gtk stock images if defined.
20204
202052007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20206
20207 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
20208 for nonexistent or zero-width glyph in composition glyph.
20209
202102007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
20211
20212 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
20213
20214 * xdisp.c (Finvisible_p): New function.
20215 (syms_of_xdisp): defsubr it.
20216
202172007-08-24 Juanma Barranquero <lekktu@gmail.com>
20218
20219 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
20220 Doc fixes.
20221
202222007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20223
20224 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
20225
202262007-08-24 Martin Rudalics <rudalics@gmx.at>
20227
20228 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
20229 whether decoding has modified buffer contents.
20230
202312007-08-24 Jason Rumney <jasonr@gnu.org>
20232
20233 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
20234 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
20235 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
20236 (init_svg_functions) [HAVE_NTGUI]: New function.
20237 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
20238 (svg_load_image): Use them.
20239 (svg_load_image) [HAVE_NTGUI]: Implement background.
20240
202412007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20242
20243 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
20244 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
20245 (LIBX): Remove @RSVG_LIBS@.
20246 (LIBES): Add $(RSVG_LIBS).
20247
20248 * image.c (svg_load_image): Blend with specified background if exists.
20249 Use IMAGE_BACKGROUND. Add Mac OS Support.
20250
20251 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
20252 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
20253 Remove macros.
20254 [MAC_OSX] (socket_callback): Do nothing.
20255 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
20256 ReceiveNextEvent.
20257 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
20258 socket_callback.
20259 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
20260
202612007-08-22 Glenn Morris <rgm@gnu.org>
20262
20263 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
20264
202652007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
20266
20267 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
20268
20269 * image.c: Add support for SVG images. Some additional comments
20270 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
20271 (svg_image_p): New function to test for SVG image.
20272 (svg_load): New function to load SVG image.
20273 (svg_load_image): New function, helper for svg_load.
20274 (Qsvg): New Lisp_object.
20275 (svg_keyword_index): New enum.
20276 (svg_format): New static `image_keyword' struct.
20277 (svg_type): New static `image_type' struct.
20278 (librsvg/rsvg.h): Include it.
20279
202802007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
20281
20282 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
20283
202842007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
20285
20286 * lread.c (Qold_style_backquotes): New var.
20287 (syms_of_lread): Init and staticpro it.
20288 (load_warn_old_style_backquotes): New fun.
20289 (Fload): Use them to warn about old style backquotes.
20290 (end_of_file_error, Fload): Remove unused vars.
20291
20292 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
20293
20294 * lread.c (Vold_style_backquotes): New var.
20295 (syms_of_lread): Init and export it to Elisp.
20296 (read1): Set it when we find an old-style (back)quote.
20297
202982007-08-22 Jason Rumney <jasonr@gnu.org>
20299
20300 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
20301
203022007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
20303
20304 * puresize.h (BASE_PURESIZE): Increase to 1140000.
20305
203062007-08-19 Richard Stallman <rms@gnu.org>
20307
20308 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
20309
203102007-08-19 Andreas Schwab <schwab@suse.de>
20311
20312 * alloc.c (pure): Round PURESIZE up.
20313
203142007-08-17 Jan Djärv <jan.h.d@swipnet.se>
20315
20316 * xterm.c (handle_one_xevent): Remove check that mouse click is in
20317 active frame.
20318
203192007-08-16 Richard Stallman <rms@gnu.org>
20320
20321 * eval.c (Fcommandp): Add parens to clarify.
20322
20323 * minibuf.c (Fall_completions): Use enum for type of table.
20324
20325 * emacs.c (USAGE2): Improve text.
20326
203272007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
20328
20329 * term.c (tty_default_color_capabilities): Declare static
20330 variables in file scope, to avoid HPUX compiler problem.
20331
203322007-08-13 Jan Djärv <jan.h.d@swipnet.se>
20333
20334 * gtkutil.c (update_frame_tool_bar): Use -1 as index
20335 to gtk_toolbar_insert.
20336
203372007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
20338
20339 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
20340
20341 * insdel.c (reset_var_on_error): New fun.
20342 (signal_before_change, signal_after_change):
20343 Use it to reset (after|before)-change-functions to nil in case of error.
20344 Bind inhibit-modification-hooks to t.
20345 Don't bind (after|before)-change-functions to nil while they run.
20346
203472007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20348
20349 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
20350 filling pixmap with stippled background.
20351
203522007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20353
20354 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
20355 Don't use invisible frame as parent window for repositioning.
20356
203572007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
20358
20359 * print.c (new_backquote_output): Rename from old_backquote_output.
20360 (print): Inverse its logic (according to its name) so as to match the
20361 behavior of new_backquote_flag in lread.c.
20362
203632007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20364
20365 * gmalloc.c (posix_memalign): New function.
20366
20367 * macterm.c (frame_highlight, frame_unhighlight): Don't call
20368 ActivateControl/DeactivateControl here.
20369 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
20370 frame-notice-user-settings is non-nil.
20371 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
20372 for kEventParamFMFontStyle.
20373 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
20374 mac_pass_command_to_system and mac_pass_control_to_system here.
20375 (XTread_socket): Call ActivateControl/DeactivateControl here.
20376 (XTread_socket) [TARGET_API_MAC_CARBON]:
20377 Check mac_pass_command_to_system and mac_pass_control_to_system here.
20378 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
20379 for window repositioning.
20380
203812007-08-08 Glenn Morris <rgm@gnu.org>
20382
20383 * Replace `iff' in doc-strings and comments.
20384
203852007-08-07 Chong Yidong <cyd@stupidchicken.com>
20386
20387 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
20388
203892007-08-07 Martin Rudalics <rudalics@gmx.at>
20390
20391 * fileio.c (Finsert_file_contents): Run format-decode and
20392 after_insert_file_functions on entire buffer when REPLACE is
20393 non-nil and inhibit modification_hooks and point_motion_hooks.
20394 For consistency, run after_insert_file_functions iff something
20395 got inserted. Move signal_after_change and update_compositions
20396 after code running after_insert_file_functions. Make sure that
20397 undo_list doesn't record intermediate steps of the decoding process.
20398
203992007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20400
20401 * emacs.c (main)
20402 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20403 Call malloc_enable_thread on interactive startup.
20404
20405 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20406 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20407 [USE_PTHREAD]: Conditionalize with it.
20408 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20409 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20410 New functions.
20411
204122007-08-06 Chong Yidong <cyd@stupidchicken.com>
20413
20414 * xdisp.c (redisplay_window): When restoring original buffer
20415 position, make sure it is still valid.
20416
20417 * image.c (png_load): Ignore png-supplied background color.
20418
204192007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20420
20421 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20422 Use kCFAbsoluteTimeIntervalSince1970.
20423
20424 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20425 New variable.
20426 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20427 event loop should be quit.
20428 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20429 Quit dialog event loop if quit_dialog_event_loop is set.
20430
20431 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20432 (Selection): New typedef. Use instead of ScrapRef.
20433 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20434 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20435 (mac_clear_selection): Rename from clear_scrap.
20436 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20437 scrap_has_target_type. All uses changed.
20438 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20439 (mac_selection_has_target_p): New functions.
20440 (mac_put_selection_value): Rename from put_scrap_string.
20441 (mac_get_selection_value): Rename from get_scrap_string.
20442 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20443 (put_scrap_private_timestamp, scrap_has_target_type)
20444 (get_scrap_private_timestamp): Remove functions.
20445 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20446 (x_own_selection, x_get_local_selection):
20447 Use mac_valid_selection_value_p.
20448 (x_own_selection): Don't use put_scrap_private_timestamp.
20449 Record OWNERSHIP-INFO into Vselection_alist instead.
20450 (x_get_local_selection): Don't check type if request is local.
20451 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20452 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20453
204542007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20455
20456 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20457 add comment explaining why.
20458
204592007-08-03 Richard Stallman <rms@gnu.org>
20460
20461 * fileio.c (Fvisited_file_modtime): Use make_time.
20462
204632007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20464
20465 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20466 build.
20467
204682007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20469
20470 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20471
204722007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20473
20474 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20475
204762007-07-30 Richard Stallman <rms@gnu.org>
20477
20478 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20479
204802007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20481
20482 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20483
204842007-07-28 Nick Roberts <nickrob@snap.net.nz>
20485
20486 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20487 remote default-directory.
20488
20489 * buffer.c (mode-line-format): Update doc string.
20490
204912007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20492
20493 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20494 scroll bar gap.
20495 (x_scroll_bar_create): Set bar->fringe_extended_p.
20496 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20497 on frame edge. Check fringe background extension. Don't clear
20498 extended fringe background area.
20499
20500 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20501 (w32_fill_area): Enclose multiple statements with do ... while (0).
20502
20503 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20504 Extend fringe background to scroll bar gap.
20505 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20506 Set bar->fringe_extended_p.
20507 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20508 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20509 background extension. Don't clear extended fringe background area.
20510
20511 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20512 New member fringe_extended_p.
20513
205142007-07-25 Glenn Morris <rgm@gnu.org>
20515
20516 * Relicense all FSF files to GPLv3 or later.
20517
20518 * COPYING: Switch to GPLv3.
20519
205202007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20521
20522 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20523
20524 * data.c (Finteractive_form): Check for the presence of an
20525 `interactive-form' symbol property more thoroughly.
20526
20527 * data.c (Finteractive_form): Use an `interactive-form' property if
20528 present, analogous to the function-documentation property.
20529
205302007-07-24 Jason Rumney <jasonr@gnu.org>
20531
20532 * w32fns.c (x_real_positions): Get real position from OS instead of
20533 calculating it.
20534
205352007-07-23 Jason Rumney <jasonr@gnu.org>
20536
20537 * filelock.c (current_lock_owner): Allow for @ sign in username.
20538
205392007-07-22 Nick Roberts <nickrob@snap.net.nz>
20540
20541 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20542 remote default-directory.
20543
20544 * buffer.c (mode-line-format): Describe above case in doc string.
20545
205462007-07-20 Eli Zaretskii <eliz@gnu.org>
20547
20548 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20549 Define if not defined.
20550
205512007-07-18 Jason Rumney <jasonr@gnu.org>
20552
20553 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20554
205552007-07-18 Richard Stallman <rms@gnu.org>
20556
20557 * data.c (Fsetq_default): Doc fix.
20558
20559 * eval.c (Fsetq): Doc fix.
20560
205612007-07-18 Juanma Barranquero <lekktu@gmail.com>
20562
20563 * coding.c (Ffind_operation_coding_system):
20564 * eval.c (For, Fand): Doc fixes.
20565 Reported by Johan Bockgård.
20566
205672007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20568
20569 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20570
20571 * xterm.h: Declare x_ewmh_activate_frame.
20572
20573 * xterm.c (x_ewmh_activate_frame): New function.
20574 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20575
205762007-07-17 Martin Rudalics <rudalics@gmx.at>
20577
20578 * window.c (Fdisplay_buffer): If largest or LRU window is the
20579 only window, split it even if it is not eligible for splitting.
20580 This restores the original behavior broken by the 2007-07-15
20581 change.
20582
205832007-07-17 Glenn Morris <rgm@gnu.org>
20584
20585 * abbrev.c (abbrev_check_chars): New function.
20586 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20587 Call abbrev_check_chars to check abbrev characters are word
20588 constituents. Doc fix.
20589
205902007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20591
20592 * process.c (Fstart_process, Fmake_network_process)
20593 (read_process_output): Fix up last changes.
20594
205952007-07-16 Eli Zaretskii <eliz@gnu.org>
20596
20597 * makefile.w32-in (clean): Don't delete *~.
20598
205992007-07-16 Andreas Schwab <schwab@suse.de>
20600
20601 * window.c (Fdisplay_buffer): Use NILP.
20602 (Fset_window_scroll_bars): Likewise.
20603
206042007-07-15 Martin Rudalics <rudalics@gmx.at>
20605
20606 * window.c (window_min_size_2): New function.
20607 (window_min_size_1, size_window, Fdisplay_buffer)
20608 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20609 windows without mode- or header-lines when window-min-height is
20610 too small.
20611 (size_window): Reset nodelete_p after testing it, following an
20612 earlier note by Kim F. Storm.
20613 (display_buffer): Do not set split_height_threshold to twice the
20614 value of window_min_height to avoid changing the value of a
20615 customizable variable. Rather explicitly check whether the
20616 height of the window that shall be splitted is at least as large
20617 as split_height_threshold.
20618 (Fwindow_full_width_p): New defun.
20619 (syms_of_window): Defsubr it.
20620
20621 * window.h: Add EXFUN for Fwindow_full_width_p.
20622
206232007-07-14 Jason Rumney <jasonr@gnu.org>
20624
20625 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20626
206272007-07-14 Richard Stallman <rms@gnu.org>
20628
20629 * eval.c (maybe_call_debugger): New function.
20630 (find_handler_clause): Use maybe_call_debugger.
20631 Call it when the handler says `debug'.
20632 Eliminate DEBUGGER_VALUE_PTR.
20633 (Fsignal): Eliminate debugger_value.
20634 (Qdebug): New variable.
20635 (syms_of_eval): Initialize it.
20636
206372007-07-14 Juanma Barranquero <lekktu@gmail.com>
20638
20639 * eval.c (Fprogn):
20640 * keyboard.c (Ftrack_mouse):
20641 * print.c (Fwith_output_to_temp_buffer):
20642 * window.c (Fsave_window_excursion): Doc fix.
20643
206442007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20645
20646 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20647
206482007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20649
20650 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20651 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20652 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20653 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20654 Remove unused encoding_carryover.
20655 * process.c: Adjust all functions accordingly.
20656
206572007-07-12 Richard Stallman <rms@gnu.org>
20658
20659 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20660
206612007-07-11 Jason Rumney <jasonr@gnu.org>
20662
20663 * makefile.w32-in (LIBS): Include OLE32.
20664
20665 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20666 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20667
206682007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20669
20670 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20671 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20672 from a Lisp_Object into a bare pointer.
20673 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20674 Adjust the code correspondingly.
20675
20676 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20677
20678 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20679 (term_show_mouse_face): Remove unused var `j'.
20680 (handle_one_term_event): Remove unused vars `i' and `j'.
20681 Don't cast return value of ttyname since it's not necessary.
20682
206832007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20684
20685 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20686 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20687
20688 * fns.c (map_char_table): Use an array of int for `indices' rather than
20689 an array of Lisp_Objects (which are only ever integers anyway).
20690 (Fmap_char_table): Update caller.
20691 * lisp.h: Update prototype.
20692 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20693 * fontset.c (Ffontset_info):
20694 * casetab.c (set_case_table): Update callers.
20695
20696 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20697
20698 * keymap.c (struct accessible_keymaps_data)
20699 (struct where_is_internal_data): New structures.
20700 (accessible_keymaps_1, where_is_internal_1): Use them to change
20701 interface to adhere to the one used by map_keymap.
20702 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20703 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20704
20705 * keymap.h (map_keymap_function_t): More informative prototype.
20706
207072007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20708
20709 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20710 (looking_at_1): Don't change search_regs and last_thing_searched
20711 if `inhibit-changing-match-data' is non-nil.
20712 (string_match_1, search_buffer, set_search_regs): Likewise.
20713 (syms_of_search): Add Lisp level definition for
20714 `inhibit-changing-match-data' and set it to nil.
20715 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20716 start and end of the match, instead of using values in search_regs.
20717
207182007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20719
20720 * minibuf.c (Fcompleting_read): New value `confirm-only'
20721 for `require-match'.
20722
207232007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20724
20725 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20726 part of the 2007-06-27 change to syms_of_fileio.
20727
207282007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20729
20730 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20731 Check WINDOWP before using XWINDOW. Consolidate return statements.
20732
207332007-06-27 Richard Stallman <rms@gnu.org>
20734
20735 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20736
207372007-06-27 Juanma Barranquero <lekktu@gmail.com>
20738
20739 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20740
207412007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20742
20743 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20744 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20745 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20746 (_free_internal, memalign): Use them.
20747 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20748 Initialize to PTHREAD_MUTEX_INITIALIZER.
20749 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20750 (morecore_nolock): Rename from morecore. All uses changed.
20751 Use only nolock versions of internal allocation functions.
20752 (_malloc_internal_nolock, _realloc_internal_nolock)
20753 (_free_internal_nolock): New functions created from
20754 _malloc_internal, _realloc_internal, and _free_internal.
20755 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20756 Copy hook value to automatic variable before its use.
20757 (memalign): Copy hook value to automatic variable before its use.
20758
207592007-06-26 Kenichi Handa <handa@m17n.org>
20760
20761 * coding.c (Ffind_operation_coding_system): Docstring improved.
20762 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20763
207642007-06-25 David Kastrup <dak@gnu.org>
20765
20766 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20767 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20768 cater for additional parameter.
20769
20770 * keymap.h: Adjust number of parameters to `current-active-maps'.
20771
20772 * doc.c (Fsubstitute_command_keys): Adjust call of
20773 `current-active-maps'.
20774
207752007-06-25 David Kastrup <dak@gnu.org>
20776
20777 * callint.c (Fcall_interactively): Make the parsing of interactive
20778 specs somewhat more readable.
20779
207802007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20781
20782 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20783 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20784 if extended background has already been filled.
20785
207862007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20787
20788 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20789 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20790
20791 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20792 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20793 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20794 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20795 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20796 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20797 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20798 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20799 Run timers during dialog popup.
20800 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20801
208022007-06-21 Jason Rumney <jasonr@gnu.org>
20803
20804 * image.c (convert_mono_to_color_image): Swap fore and background.
20805
208062007-06-20 Jason Rumney <jasonr@gnu.org>
20807
20808 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20809 (w32_free_bdf_font): Unmap memory not handle.
20810
208112007-06-20 Sam Steingold <sds@gnu.org>
20812
20813 * gmalloc.c (__morecore): Fix the declaration to comply with the
20814 definition.
20815
208162007-06-20 Juanma Barranquero <lekktu@gmail.com>
20817
20818 * w32term.c (w32_delete_display): Remove leftover declaration.
20819 (w32_define_cursor, w32_initialize): Make static.
20820
20821 * w32.c (_wsa_errlist): Fix typo in error message.
20822 (init_environment): Ignore any environment variable from the
20823 registry having a null value.
20824
208252007-06-20 Glenn Morris <rgm@gnu.org>
20826
20827 * Makefile.in (LIBGIF): Default to -lgif.
20828
208292007-06-17 Jason Rumney <jasonr@gnu.org>
20830
20831 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20832 unicode strings.
20833
208342007-06-16 Juanma Barranquero <lekktu@gmail.com>
20835
20836 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20837 Fix typo in docstring.
20838
208392007-06-16 Eli Zaretskii <eliz@gnu.org>
20840
20841 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20842 and their keybindings.
20843
208442007-06-15 Chong Yidong <cyd@stupidchicken.com>
20845
20846 * composite.c (update_compositions): Fix last fix.
20847
208482007-06-14 Jason Rumney <jasonr@gnu.org>
20849
20850 * w32.c (get_process_times_fn): New function pointer.
20851 (globals_of_w32): Intialize it if present in kernel32.dll.
20852 (w32_get_internal_run_time): New function.
20853
20854 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20855
208562007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20857
20858 * composite.c (update_compositions): Check the validness of
20859 compositions.
20860
208612007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20862
20863 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20864 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20865
20866 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20867 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20868
20869 * macgui.h (USE_MAC_TOOLBAR): New define.
20870
20871 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20872 Return immediately unless popup is activated.
20873
20874 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20875 background to scroll bar gap.
20876 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20877 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20878 scroll bars on frame edge. Check fringe background extension.
20879 Don't clear extended fringe background area.
20880 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20881 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20882 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20883 [USE_MAC_TOOLBAR]: New macros.
20884 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20885 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20886 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20887 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20888 [USE_MAC_TOOLBAR]: New functions.
20889 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20890 manually if previous repositioning has failed.
20891 (mac_handle_keyboard_event): Use precomputed event kind.
20892 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20893 as tool bar item click. Handle mouse movement over tool bar items.
20894
20895 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20896 toolbar_win_gravity.
20897 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20898 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20899 Add externs.
20900
20901 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20902 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20903
209042007-06-14 Chong Yidong <cyd@stupidchicken.com>
20905
20906 * image.c (search_image_cache): Remove unused variable.
20907
209082007-06-13 Chong Yidong <cyd@stupidchicken.com>
20909
20910 * xfns.c, xmenu.c: Link to xaw3d if available.
20911
209122007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20913
20914 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20915 frame_foreground and frame_background.
20916
20917 * image.c (lookup_image): Save frame foreground and background colors.
20918 (search_image_cache): Check if saved and current frame colors match.
20919
209202007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20921
20922 * regex.c (regex_compile): Remove the `regnum' counter.
20923 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20924
209252007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20926
20927 * term.c: Include intervals.h to declare Fget_text_property.
20928
209292007-06-10 Jason Rumney <jasonr@gnu.org>
20930
20931 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20932
209332007-06-08 Juanma Barranquero <lekktu@gmail.com>
20934
20935 * callint.c (Fcall_interactively):
20936 * editfns.c (Fdelete_and_extract_region):
20937 * fileio.c (Fread_file_name):
20938 * fns.c (Fmapconcat):
20939 * keyboard.c (cmd_error_internal):
20940 * keymap.c (Fkey_description):
20941 * lread.c (openp):
20942 * minibuf.c (read_minibuf):
20943 * search.c (wordify):
20944 * sunfns.c (sel_read):
20945 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20946 * xfns.c (x_default_scroll_bar_color_parameter):
20947 * xmenu.c (menu_help_callback):
20948 * xselect.c (Fx_get_atom_name):
20949 * xterm.c (x_term_init): Use empty_unibyte_string.
20950
209512007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20952
20953 * alloc.c (init_strings): Initialize canonical empty strings.
20954 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20955 canonical empty string when the requested size is 0.
20956
20957 * emacs.c (empty_unibyte_string): Rename from empty_string.
20958 (empty_multibyte_string): New canonical empty string.
20959 (syms_of_emacs): Don't initialize empty_string.
20960
20961 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20962 string, if appropriate.
20963 (empty_unibyte_string, empty_multibyte_string): New externs.
20964 (empty_string): Remove extern.
20965
20966 * lread.c (syms_of_lread): Use empty_unibyte_string.
20967
209682007-06-07 Jason Rumney <jasonr@gnu.org>
20969
20970 * s/ms-w32.h: Don't define HAVE_TZNAME.
20971
20972 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20973
209742007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20975
20976 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20977
20978 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20979 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20980
20981 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20982 Don't call next handler.
20983 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20984 Remove argument. Install handler to application.
20985 (set_frame_menubar): Don't change deep_p.
20986 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20987 FRAME_OUTER_TO_INNER_DIFF_Y.
20988 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20989 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20990 [HAVE_DIALOGS]: New macros.
20991 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20992 Use them.
20993 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20994
20995 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20996 init_service_handler. All callers changed. Return OSStatus value.
20997
20998 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20999 All callers changed so as not to call SetPortWindowPort.
21000 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
21001 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
21002 mac_draw_string_common.
21003 (mac_draw_image_string_qd): Likewise.
21004 (mac_draw_string_common): Use them. Add INLINE.
21005 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
21006 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
21007 GetGlobalMouse.
21008 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
21009 and FRAME_OUTER_TO_INNER_DIFF_Y.
21010 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
21011 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
21012 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
21013 repositioning window to mac_handle_window_event.
21014 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
21015 saving window location to mac_handle_window_event
21016 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
21017 (install_menu_target_item_handler): Remove argument in extern.
21018 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
21019 Also accept command events.
21020 (do_keystroke): New function created from XTread_socket.
21021 (init_command_handler): Remove functions.
21022 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
21023 and save window location by kEventWindowShowing and kEventWindowHiding
21024 handlers here. Don't call next handler for window state change and
21025 focus events.
21026 (mac_handle_application_event, mac_handle_keyboard_event)
21027 [TARGET_API_MAC_CARBON]: New functions.
21028 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
21029 kEventWindowShowing and kEventWindowHiding events. Move installation
21030 of mouse, font, text input and menu target item handlers to
21031 install_application_handler.
21032 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
21033 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
21034 New function.
21035 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
21036 Register it.
21037 (XTread_socket) [TARGET_API_MAC_CARBON]:
21038 Consolidate SendEventToEventTarget calls.
21039 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
21040 Move application activation handler to mac_handle_application_event.
21041 Move keyboard handler to mac_handle_keyboard_event.
21042 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
21043 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
21044 init_command_handler. Call install_application_handler.
21045
21046 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
21047 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
21048
210492007-06-07 Glenn Morris <rgm@gnu.org>
21050
21051 * emacs.c (main): Use `emacs-copyright' in --version output.
21052
210532007-06-06 Chong Yidong <cyd@stupidchicken.com>
21054
21055 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
21056
210572007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21058
21059 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
21060
21061 * macgui.h: Replace WindowPtr with WindowRef.
21062
21063 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21064 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21065 Replace ControlHandle with ControlRef.
21066 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
21067
21068 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21069 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21070 Replace ControlHandle with ControlRef.
21071 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
21072 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
21073
21074 * macterm.h (struct scroll_bar): Rename member control_handle_low
21075 and control_handle_high to control_ref_low and control_ref_high.
21076 All uses changed.
21077 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
21078 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
21079 respectively. All uses changed.
21080 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
21081 (install_window_handler, remove_window_handler): Replace WindowPtr
21082 with WindowRef in externs.
21083
210842007-06-05 Juanma Barranquero <lekktu@gmail.com>
21085
21086 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
21087
210882007-06-03 Nick Roberts <nickrob@snap.net.nz>
21089
21090 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
21091
21092 * frame.c (Fmouse_position, Fmouse_pixel_position):
21093 Condition on HAVE_GPM too.
21094
21095 * term.c (term_mouse_highlight): Remove unused variables.
21096 (Fterm_open_connection): Set gpm_zerobased to 1.
21097 (term_mouse_movement, term_mouse_click, handle_one_term_event):
21098 Use zero based co-ordinates.
21099 (handle_one_term_event): Report a drag as mouse movement too.
21100
21101 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
21102
211032007-06-03 Chong Yidong <cyd@stupidchicken.com>
21104
21105 * image.c (search_image_cache): New function. Require background
21106 color match if background color is unspecified in the image spec.
21107 (uncache_image, lookup_image): Use it.
21108
211092007-06-01 Juanma Barranquero <lekktu@gmail.com>
21110
21111 * window.c (Fshrink_window): Reflow docstring.
21112
211132007-06-02 Chong Yidong <cyd@stupidchicken.com>
21114
21115 * Version 22.1 released.
21116
211172007-06-01 Richard Stallman <rms@gnu.org>
21118
21119 * xfns.c (x_encode_text): Add GCPRO.
21120
211212007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21122
21123 * xfns.c (x_set_name_internal): Save encoded name before
21124 x_encode_text in case string data is relocated.
21125
211262007-05-31 Richard Stallman <rms@gnu.org>
21127
21128 * buffer.c (syms_of_buffer): Doc fix.
21129
211302007-05-30 Nick Roberts <nickrob@snap.net.nz>
21131
21132 * sysdep.c (init_sys_modes): Add rather than replace with
21133 O_NONBLOCK.
21134
21135 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
21136 term_mouse_moveto.
21137
21138 * termhooks.h (term_mouse_moveto): New extern.
21139
21140 * term.c (mouse_face_window): Rename...
21141 (Qmouse_face_window): ...to this.
21142 (term_show_mouse_face, term_clear_mouse_face)
21143 (term_mouse_highlight): Use Qmouse_face_window.
21144 (term_mouse_moveto): New function.
21145 (term_mouse_position): Make it work.
21146 (syms_of_term): Uncomment assignment to mouse_position_hook.
21147 Staticpro Qmouse_face_window.
21148
211492007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21150
21151 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
21152 around current_column call.
21153
211542007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
21155
21156 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
21157 * xdisp.c (next_element_from_buffer):
21158 * window.c (delete_window):
21159 * term.c (term_mouse_highlight):
21160 * msdos.c (getdefdir):
21161 * macterm.c (mac_create_bitmap_from_bitmap_data)
21162 (init_font_name_table):
21163 * fns.c (Fsxhash):
21164 * data.c (Fmake_local_variable):
21165 * ccl.c (ccl_driver): Likewise.
21166
211672007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21168
21169 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
21170 Call mac_wakeup_from_rne on window size change.
21171
211722007-05-25 Chong Yidong <cyd@stupidchicken.com>
21173
21174 * image.c (uncache_image): Fix typo.
21175
211762007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
21177
21178 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
21179
211802007-05-22 Richard Stallman <rms@gnu.org>
21181
21182 * xterm.c (x_connection_closed): Remove NO_RETURN.
21183
211842007-05-22 Martin Rudalics <rudalics@gmx.at>
21185
21186 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
21187
211882007-05-21 Chong Yidong <cyd@stupidchicken.com>
21189
21190 * image.c (uncache_image): New function.
21191 (Fimage_refresh): New function.
21192
211932007-05-20 Jan Djärv <jan.h.d@swipnet.se>
21194
21195 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
21196
211972007-05-20 Nick Roberts <nickrob@snap.net.nz>
21198
21199 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
21200 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
21201
212022007-05-20 Nick Roberts <nickrob@snap.net.nz>
21203
21204 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
21205 conditional on [HAVE_GPM_H].
21206
212072007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
21208
21209 * syntax.c (skip_chars): Update syntax-table only after we checked that
21210 the new location is valid.
21211
212122007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21213
21214 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
21215 mac_get_window_bounds.
21216
212172007-05-20 Nick Roberts <nickrob@snap.net.nz>
21218
21219 * Makefile.in (LIBGPM): Allow it to be set from configure.
21220 If set then link Emacs with it.
21221
21222 * config.in: Regenerate.
21223
21224 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
21225 New externs.
21226
21227 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
21228 Include gpm.h.
21229 (handle_one_term_event, term_gpm): New externs.
21230
21231 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
21232 and allow it to be interrupted by SIGIO.
21233
21234 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
21235 (wait_reading_process_output): Wait on gpm_fd too.
21236 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
21237 (add_gpm_wait_descriptor_called_flag): New variable.
21238 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
21239
21240 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
21241 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
21242 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
21243 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
21244 (make_lispy_event): Add case GPM_CLICK_EVENT.
21245 (read_avail_input): Handle mouse input.
21246
21247 * term.c (write_glyphs_with_face): New function.
21248 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
21249 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
21250 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
21251 (mouse_face_face_id, term_gpm, pos_x, pos_y)
21252 (last_mouse_x, last_mouse_y): New variables.
21253 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
21254 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
21255 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
21256 (Fterm_close_connection): New functions.
21257 (term_init): Initialise mouse_face_window.
21258
212592007-05-19 Chong Yidong <cyd@stupidchicken.com>
21260
21261 * xdisp.c (redisplay_window): If first window line is a
21262 continuation line, recompute the new window start instead of
21263 recentering.
21264
212652007-05-18 Glenn Morris <rgm@gnu.org>
21266
21267 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
21268 Suggested by Alfred M. Szmidt <ams@gnu.org>.
21269
212702007-05-17 Glenn Morris <rgm@gnu.org>
21271
21272 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
21273
212742007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21275
21276 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
21277 dead key repeat and up events.
21278
212792007-05-14 Chong Yidong <cyd@stupidchicken.com>
21280
21281 * image.c (pbm_load): Check image size for monochrome pbm.
21282
212832007-05-13 Chong Yidong <cyd@stupidchicken.com>
21284
21285 * xterm.c (XTread_socket): Revert last change.
21286
212872007-05-12 Chong Yidong <cyd@stupidchicken.com>
21288
21289 * image.c (pbm_load): Correctly check image size for greyscale pbm.
21290
21291 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
21292
212932007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21294
21295 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
21296 mixup (YAILOM).
21297
212982007-05-07 Andreas Schwab <schwab@suse.de>
21299
21300 * keymap.c (Flookup_key): Fix typo in last change.
21301
213022007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21303
21304 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
21305 mapping for unibyte strings.
21306
213072007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21308
21309 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
21310 (Fx_popup_dialog) [MAC_OSX]: Likewise.
21311
213122007-04-29 Richard Stallman <rms@gnu.org>
21313
21314 * insdel.c (replace_range): For undo, record insertion first.
21315
213162007-04-29 Andreas Schwab <schwab@suse.de>
21317
21318 * lisp.h (VECSIZE): Use OFFSETOF.
21319
213202007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21321
21322 * xdisp.c (try_window_reusing_current_matrix): Fix number of
21323 disabled lines.
21324
213252007-04-28 Richard Stallman <rms@gnu.org>
21326
21327 * lread.c (read_escape): In a string, \s is always space.
21328
213292007-04-27 Jan Djärv <jan.h.d@swipnet.se>
21330
21331 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
21332
21333 * gtkutil.c (xg_update_menubar, create_menus): Create empty
21334 submenu for menu bar items.
21335
21336See ChangeLog.10 for earlier changes.
21337
21338;; Local Variables:
21339;; coding: utf-8
21340;; add-log-time-zone-rule: t
aac0c6e3
MR
21341;; End:
21342
e3eb1dae 21343 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
21344
21345 This file is part of GNU Emacs.
21346
21347 GNU Emacs is free software: you can redistribute it and/or modify
21348 it under the terms of the GNU General Public License as published by
21349 the Free Software Foundation, either version 3 of the License, or
21350 (at your option) any later version.
21351
21352 GNU Emacs is distributed in the hope that it will be useful,
21353 but WITHOUT ANY WARRANTY; without even the implied warranty of
21354 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21355 GNU General Public License for more details.
21356
21357 You should have received a copy of the GNU General Public License
21358 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21359
21360;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40