(command-line-1): Use orig-argi to check for ignored X and NS options.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
4b00d3b1
YM
12010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
4 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
5 windows above internal border.
6
7 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
8 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
9 windows above internal border.
10
11 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
12 tool bar windows specially.
13
14 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
15
16 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
17 specially.
18 (XTflash): Take account of menu bar height.
19
20 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
21 specially.
22
5075d853
JD
232010-01-08 Jan Djärv <jan.h.d@swipnet.se>
24
25 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
26 also be true before we can return early (bug #5339).
27
474217c8
CY
282010-01-06 David Reitter <david.reitter@gmail.com>
29
30 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
31 (Fns_display_usable_bounds): Rewrite, computing bounds properly
32 (Bug#3233).
33
c0e6d47d
JD
342010-01-06 Jan Djärv <jan.h.d@swipnet.se>
35
d0cf45b7
JD
36 * font.c (font_open_entity): Enable chache and call cached_font_ok
37 for the driver if defined.
38 (QCuser_spec): New symbol.
39 (font_spec_from_name): Save name as user-spec.
40 (font_load_for_lface): Keep user-spec instead of name.
41 (font_open_by_name): Save name as user-spec.
42 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 43 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
44
45 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
46 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
47 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
48
49 * font.h (struct font_driver): Add cached_font_ok.
50
c0e6d47d
JD
51 * xterm.c (x_clear_frame): Queue draw for scroll bars.
52
7c583cd8
JD
532010-01-05 Jan Djärv <jan.h.d@swipnet.se>
54
55 * xterm.c (x_new_font): Move code for setting rows/cols before
56 resizing ...
57 (x_set_window_size): ... to here. bug #2568.
58
59 * gtkutil.c (xg_clear_under_internal_border): New function.
60 (xg_frame_resized, xg_frame_set_char_size): Call
61 xg_clear_under_internal_border.
62 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 63
03f77f0a
CY
642010-01-05 Chong Yidong <cyd@stupidchicken.com>
65
66 * keyboard.c (read_key_sequence): Catch keyboard switch after
67 making a new tty frame (Bug#5095).
68
2a1ef5be
KH
692010-01-05 Kenichi Handa <handa@m17n.org>
70
71 * fontset.c (fontset_find_font): Fix getting the frame pointer.
72
e3eb1dae
SM
732010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
74
75 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
76 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
77 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
78
777013f2
MA
792010-01-03 Michael Albinus <michael.albinus@gmx.de>
80
81 * dbusbind.c (xd_add_watch): Improve debug message.
82 (xd_remove_watch): Improve debug message. If DATA is the session
83 bus, unset D-Bus session environment.
84 (Fdbus_init_bus): Pass the bus as argument to
85 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 86
8932b1c2
CY
872010-01-01 Chong Yidong <cyd@stupidchicken.com>
88
87231e2c
CY
89 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
90
4801c5fa
CY
91 * lread.c (syms_of_lread): Make it clearer that these are the
92 names of loaded files (Bug#5068).
93
8932b1c2
CY
94 * eval.c (run_hook_with_args): Handle the case where the global
95 value has the obsolete single-function form (Bug#5026).
96
11e3c684
CY
972009-12-27 Chong Yidong <cyd@stupidchicken.com>
98
99 * minibuf.c (Fall_completions): Minor optimization.
100
5b28ce35
EZ
1012009-12-26 Eli Zaretskii <eliz@gnu.org>
102
5ce6e4f4
JB
103 * .gdbinit (pgx): Fix display of composite glyphs.
104 Display cmp.from and cmp.to as well.
105 (pitx): Fix last change.
5b28ce35 106
bcffff46
KH
1072009-12-25 Kenichi Handa <handa@m17n.org>
108
109 * composite.h (composition_adjust_point): Update prototype.
110
111 * composite.c (composition_reseat_it): Don't make a composition
112 spanning over point.
113 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
114 composable characters.
115 (composition_adjust_point): New arg NEW_PT. Callers changed.
116
117 * keyboard.c (command_loop_1): Force redisplay if the last point
118 was within a composition.
119 (adjust_point_for_property): Don't adjust point for automatic
120 composition when called after buffer modification.
121
3f670e9a
EZ
1222009-12-19 Eli Zaretskii <eliz@gnu.org>
123
5ce6e4f4
JB
124 * .gdbinit (pitx): Don't use enum names, use their values.
125 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
126 (pgx): Don't use enum names, use their values.
127 (pitmethod): New helper command.
128 (pitx): Use it to display iteration method.
129 (pgrowit): New command.
130
ad903955
EZ
131 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
132
3f670e9a
EZ
133 Update dependencies in Makefile.in.
134
135 * Makefile.in (alloc.o): Depend on termhooks.h.
136 (atimer.o): Depend on blockinput.h.
137 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
138 and frame.h.
139 (callint.o): Depend on systime.h, coding.h, and composite.h.
140 (callproc.o): Depend on buffer.h.
141 (casefiddle.o): Don't depend on charset.h.
142 (casetab.o): Depend on character.h.
143 (ccl.o): Depend on composite.h.
144 (chartab.o): Depend on ccl.h.
145 (cm.o): Depend on dispextern.h.
146 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
147 (coding.o): Don't depend on $(INTERVALS_H).
148 (composite.o): Don't depend on dispextern.h explicitly (it's in
149 $(INTERVALS_H)). Depend on ccl.h.
150 (data.o): Depend on systime.h, coding.h, composite.h,
151 dispextern.h, font.h, and ccl.h.
152 (dired.o): Depend on composite.h.
153 (dispnew.o): Depend on coding.h. Don't depend explicitly on
154 composite.h (it's in $(INTERVALS_H)).
155 (doc.o): Depend on systime.h, coding.h, and composite.h.
156 (editfns.o): Don't depend explicitly on dispextern.h.
157 (emacs.o): Depend on frame.h and coding.h.
158 (eval.o): Depend on coding.h, composite.h, and xterm.h.
159 (fileio.o): Depend on frame.h and commands.h. Don't depend
160 explicitly on dispextern.h.
161 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
162 composite.h.
163 (fns.o): Don't depend on termhooks.h.
164 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
165 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
166 coding.h, $(INTERVALS_H), window.h, xterm.h.
167 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
168 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
169 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
170 fontset.h, ccl.h, and ftfont.h.
171 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
172 (gtkutil.o): Depend on dispextern.h and composite.h.
173 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
174 termhooks.h, and ccl.h.
175 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
176 (intervals.o): Depend on systime.h and coding.h.
177 (keyboard.o): Depend on composite.h and coding.h.
178 (keymap.o): Depend on coding.h and frame.h.
179 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
180 (macros.o): Depend on systime.h, coding.h, and composite.h.
181 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
182 and atimer.h.
183 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
184 dispextern.h explicitly.
185 (print.o): Depend on termhooks.h, coding.h, and ccl.h. Don't
186 depend explicitly on dispextern.h and composite.h.
187 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
188 (regex.o): Don't depend on charset.h.
189 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
190 (search.o): Don't depend explicitly on composite.h.
191 (sound.o): Depend on atimer.h and systime.h.
192 (syntax.o): Don't depend explicitly on composite.h.
193 (sysdep.o): Depend on coding.h and composite.h.
194 (term.o): Depend on xterm.h and buffer.h.
195 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
196 (textprop.o): Don't depend on dispextern.h explicitly.
197 (undo.o): Depend on dispextern.h.
198 (window.o): Depend on coding.h and termhooks.h. Don't depend on
199 dispextern.h and composite.h explicitly.
200 (xdisp.o): Depend on ccl.h.
201 (xfaces.o): Depend on coding.h and ccl.h.
202 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
203 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
204 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
205 ftfont.h.
206 (xgselect.o): New dependency.
207 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
208 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
209 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
210 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
211 (xsmfns.o): Depend on frame.h and dispextern.h.
212 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
213 sysselect.h.
214
7a6f7fea
AS
2152009-12-19 Andreas Schwab <schwab@linux-m68k.org>
216
217 * font.c (Fclear_font_cache): Pass correct cache argument to
218 font_clear_cache.
219
f4c21026
AS
2202009-12-16 Andreas Schwab <schwab@linux-m68k.org>
221
222 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
223 twice.
224
f7ab0997
CY
2252009-12-15 Chong Yidong <cyd@stupidchicken.com>
226
227 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
228 calling file-remote-p. Reported by Jim Meyering.
229
fa8e045a
MA
2302009-12-15 Michael Albinus <michael.albinus@gmx.de>
231
232 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 233 avoid compiler warnings. (Bug #5217)
fa8e045a 234
a63dba42
KH
2352009-12-14 Kenichi Handa <handa@m17n.org>
236
237 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
238 in 8-bit encoding.
239
5ce6e4f4 2402009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
241
242 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
243 tooltip windows.
244
223e5fc6
JD
2452009-12-13 Jan Djärv <jan.h.d@swipnet.se>
246
36acb2a7
JD
247 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
248 Xatom_net_window_type.
249
250 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
251 Xatom_net_window_type.
252
b8f00677
JD
253 * xterm.c (my_log_handler): New function.
254 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 255 so we can filter out buggy messages. (Bug #5120).
b8f00677 256
e5f0bc9a
JD
257 * xterm.c (xg_scroll_callback): Parameter list changed,
258 use parameter GtkScrollType to determine scroll/line/page.
259 Only allow dragging if a button < 4 is grabbed (bug #5177).
260 (xg_end_scroll_callback): New function.
261 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
262 xg_create_scroll_bar.
263
264 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
265 (scroll_end_callback): Remove.
266 (xg_create_scroll_bar): Add parameter end_callback, bind it to
267 button-release-event. Replace value-changed event with change-value,
268 bug #5177,
269 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
270 bug #5177.
271
272 * gtkutil.h (XG_LAST_SB_DATA): Remove.
273 (xg_create_scroll_bar): Add GCallback end_callback.
274
223e5fc6
JD
275 * xftfont.c (QClcdfilter): New variable.
276 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
277 (syms_of_xftfont): Initialize QClcdfilter.
278
3c055b77
JD
2792009-12-12 Jan Djärv <jan.h.d@swipnet.se>
280
281 * xsettings.c (struct xsettings): Add member seen.
282 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 283 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
284 (apply_xft_settings): Only update Xft settings with what member seen
285 indicates as new.
286
05fe33ff
EZ
2872009-12-12 Eli Zaretskii <eliz@gnu.org>
288
289 * dispextern.h (struct text_pos): Use EMACS_INT;
290 (struct glyph): Use EMACS_INT for charpos.
291 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
292 region_beg_charpos, region_end_charpos,
293 redisplay_end_trigger_charpos, and also for
294 iterator_stack_entry.end_charpos and
295 iterator_stack_entry.stop_charpos.
296
e8d7886a
JD
2972009-12-12 Jan Djärv <jan.h.d@swipnet.se>
298
5ce6e4f4 299 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
300 (xg_create_scroll_bar): Call scroll_end_callback on button release
301 event (bug #5177).
302 (xg_event_is_for_scrollbar): != replaced with ==.
303
d0db2ec8
KH
3042009-12-12 Kenichi Handa <handa@m17n.org>
305
306 * ftfont.c (struct ftfont_info): New member matrix.
307 (ftfont_open): Setup xftfont_info->matrix.
308 (MFLTFontFT): New member matrix.
309 (FLOOR, CEIL, ROUND): New macros.
310 (ftfont_get_metrics): Handle matrix transformation.
311 (ftfont_shape_by_flt): New arg matrix. Callers changed.
312
313 * xftfont.c (struct xftfont_info): New member matrix.
314 (xftfont_open): Setup xftfont_info->matrix.
315
3162009-12-10 Kenichi Handa <handa@m17n.org>
317
318 * xdisp.c (append_space_for_newline): Consider face-remapping.
319
2cc7b62f
AS
3202009-12-09 Andreas Schwab <schwab@linux-m68k.org>
321
b87dd913
AS
322 * xsettings.c: Include "keyboard.h".
323
eba5eb94
AS
324 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
325
2cc7b62f
AS
326 Fix implicit function declarations.
327 * cmds.c: Include "frame.h".
328 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
329 * frame.h: Move declaration of delete_frame outside of
330 HAVE_WINDOW_SYSTEM.
331
a4ef73c8
CY
3322009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
333
334 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
335
336 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
337 GTK builds.
338
944a300c
AS
3392009-12-07 Andreas Schwab <schwab@linux-m68k.org>
340
341 * unexelf.c (unexec): Don't search for .data twice.
342
022eef62
CY
3432009-12-05 Chong Yidong <cyd@stupidchicken.com>
344
426ac949
CY
345 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
346 if push failed.
347 (handle_line_prefix): Set avoid_cursor_p here. Check return value
348 of push_display_prop (Bug#5000).
349
022eef62
CY
350 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
351 value of font_list_entities (Bug#5085).
352
be95bee9
JB
3532009-12-04 Juanma Barranquero <lekktu@gmail.com>
354
355 Fix `string-to-number' to deal consistently with integers and floats.
356 * lread.c (isfloat_string): New argument ignore_trailing to accept all
357 trailing characters, not just whitespace.
358 (read1): Pass new arg 0 to keep old behavior.
359 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
360 trailing chars, as it is already done for integers. Doc fixes.
361 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
362
24c2d7ce
EZ
3632009-12-04 Eli Zaretskii <eliz@gnu.org>
364
365 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>: Delete
366 unused enumeration value.
367
7e694795
EZ
3682009-12-03 Eli Zaretskii <eliz@gnu.org>
369
370 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
371
84b31826
SM
3722009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
373
374 * process.c (Fmake_network_process): Fix up the tests for
375 "connectionless socket", so they DTRT for seqpacket sockets as well.
376
f00c449b
SM
3772009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
378
379 * process.c (Qseqpacket): New symbol.
380 (HAVE_SEQPACKET): New macro.
381 (Fmake_network_process): Accept new :type `seqpacket'.
382 (init_process): Add `seqpacket' feature when applicable.
383 (syms_of_process): Initialize Qseqpacket.
384
8096a0ff
YM
3852009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
386
387 * font.c (font_load_for_lface, font_open_by_name): Don't store name
388 if entity is Qnil.
389
3e0de07f
SM
3902009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
391
392 * print.c (print_preprocess): Preprocess the key_and_value table of
393 hashtables, even tho they're "hidden" (bug#5082).
394
abeafb2a
JD
3952009-11-29 Jan Djärv <jan.h.d@swipnet.se>
396
397 * frame.c (frame_make_pointer_invisible)
398 (frame_make_pointer_visible): Declare f before statements.
399
4bf47195
EZ
4002009-11-28 Eli Zaretskii <eliz@gnu.org>
401
402 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
403 omitted dependencies on lisp.h.
404
c525b3f2
JD
4052009-11-27 Jan Djärv <jan.h.d@swipnet.se>
406
ece2d4ed
JD
407 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
408 is NULL.
409
410 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
411
412 * frame.c (frame_make_pointer_invisible)
3e0de07f 413 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
414 frame.
415
c525b3f2
JD
416 * search.c (simple_search): Remove warning by making *p const.
417
2f00e299
DN
4182009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
419
420 * xdisp.c (power_letter): Remove duplicate const.
421
084b049b
JD
4222009-11-25 Jan Djärv <jan.h.d@swipnet.se>
423
a1fadc6f
JD
424 * term.c (delete_tty): Remove check for last terminal (bug#4970).
425
5ce6e4f4 426 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
427 defaults (bug #5025).
428
28259cac
SM
4292009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
430
431 * insdel.c (adjust_markers_for_delete): Move it in the
432 right direction! (bug#4803)
433
e8e14166
YM
4342009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
435
436 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
437
438 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
439
86677b58
GM
4402009-11-24 Glenn Morris <rgm@gnu.org>
441
442 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
443
581e51e8
JD
4442009-11-23 Jan Djärv <jan.h.d@swipnet.se>
445
cfc86c7a
JD
446 * Makefile.in: Must create deps for ecrt0.o in its rule.
447
581e51e8
JD
448 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
449 because that is what Gtk+ font dialog understands.
450
451 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
452 of Fcopy_sequence.
453 (font_open_by_name): Put name given into QCname for font-object returned.
454
455 * frame.c (x_set_font): Save original font name as frame parameter
456 font-parameter.
457
458 * xsettings.c (set_default_xft_settings): New function.
459 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
460 is found.
461
8b264ecb
AS
4622009-11-22 Andreas Schwab <schwab@linux-m68k.org>
463
464 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
465 searching backwards through multibyte buffer.
466
872870b2
JD
4672009-11-21 Jan Djärv <jan.h.d@swipnet.se>
468
469 * xterm.c: #include xgselect.h.
470 (x_initialize): Call xgselect_initialize.
471
472 * xsettings.c (something_changedCB): C++ comments => C comments.
473 (init_gconf): Do not deal with any GLib file descriptors, xg_select
474 does that now.
475
476 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
477 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
478 (scroll_bar_button_cb): Remove.
5ce6e4f4 479 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
480 event.
481 (xg_create_scroll_bar): Don't bind button-press-event and
482 button-release-event.
483
484 * process.c: Include xgselect.h if defined (USE_GTK) ||
485 defined (HAVE_GCONF).
486 (wait_reading_process_output): Call xg_select for the same condition.
487
488 * xgselect.c (xg_select): New function to better integrate with
489 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
490
491 * xgselect.h: New file, declare xg_select, xgselect_initialize.
492
493 * Makefile.in (XOBJ): Add xgselect.o.
494
62a6e103
AS
4952009-11-21 Andreas Schwab <schwab@linux-m68k.org>
496
497 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Remove
498 ignored second argument. All callers changed.
499 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
500 (RE_STRING_CHAR_AND_LENGTH): Likewise.
501 * xdisp.c (string_char_and_length): Likewise.
502
b0ca0f33
DN
5032009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
504
505 * xterm.c (x_new_font):
506 * print.c (print_object):
507 * cmds.c (Fself_insert_command): Move declarations before statements.
508
dd5a6279
CY
5092009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
510
511 * s/cygwin.h: Remove unneeded linker flags.
512
4a8e097d
JD
5132009-11-20 Jan Djärv <jan.h.d@swipnet.se>
514
0d1d0d26
JD
515 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
516
517 * xsettings.h: Declare xsettings_get_system_font.
518
519 * xsettings.c (xsettings_get_system_font): New function.
520 (init_gconf): No use initiating gconf unless we have Xft also.
521 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
522 HAVE_GCONF.
523
4a8e097d
JD
524 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
525 add a blank entry so it doesn't collapse into nothing.
526
8ab1650e
SM
5272009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
528
529 * lread.c (Funintern): Comment out last change.
530
82c602f0
RS
5312009-11-19 Richard Stallman <rms@gnu.org>
532
533 * lread.c (Funintern): Error if symbol is t or nil.
534
87e32266
SM
5352009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
536
537 * insdel.c (make_gap_larger): Don't make as many assumptions about the
538 representation of Lisp integers.
539 Reported by MJ Chan <mjchan.inbox@gmail.com>.
540
1b9ac145
AS
5412009-11-17 Andreas Schwab <schwab@linux-m68k.org>
542
543 * lisp.h: Remove declaration of Ffont_get_system_font.
544 * xfns.c: Move include of "xsettings.h".
545 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
546
dfb3c4c6
JD
5472009-11-17 Jan Djärv <jan.h.d@swipnet.se>
548
87e32266
SM
549 * xsettings.c (something_changedCB, Ffont_get_system_font):
550 Check use_system_font.
dfb3c4c6
JD
551 (syms_of_xsettings): DEFVAR font-use-system-font.
552
9370c1d8
AS
5532009-11-17 Andreas Schwab <schwab@linux-m68k.org>
554
25fe851a
AS
555 * xfns.c (x_default_font_parameter): Remove dead assignment.
556
9370c1d8
AS
557 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
558
637fa988
JD
5592009-11-17 Jan Djärv <jan.h.d@swipnet.se>
560
87e32266 561 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 562 not have FC_LCD_*. #define them if not there.
a6eb20d8 563
87e32266 564 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 565
637fa988
JD
566 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
567
568 * xterm.c (handle_one_xevent): Call xft_settings_event for
569 ClientMessage, PropertyNotify and DestroyNotify.
570 (x_term_init): If we have XFT, get DPI from Xft.dpi.
571 Call xsettings_initialize.
572
573 * xftfont.c (xftfont_fix_match): New function.
574 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
575 Call xftfont_fix_match after XftFontMatch.
576
577 * xfont.c (xfont_driver): Initialize all members.
578
87e32266
SM
579 * xfns.c (x_default_font_parameter):
580 Try font from Ffont_get_system_font.
637fa988
JD
581 Do not get font from x_default_parameter if we got one from
582 Ffont_get_system_font.
87e32266 583 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
584
585 * w32font.c (w32font_driver): Initialize all members.
586
587 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
588
589 * lisp.h: Declare syms_of_xsettings.
590
87e32266
SM
591 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
592 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
593
594 * ftfont.c (ftfont_filter_properties): New function.
595
596 * frame.c (x_set_font): Remove unused variable lval.
597
87e32266 598 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
599
600 * font.c (font_put_extra): Don't return if val is nil, it means
601 boolean option is off.
602 (font_parse_fcname): Collect all extra properties in extra_props
603 and call filter_properties for all drivers with extra_props and
604 font as parameter.
87e32266
SM
605 (font_open_entity): Do not use cache, it does not pick up new
606 fontconfig settings like hinting.
637fa988
JD
607 (font_load_for_lface): If spec had a name in it, store it in entity.
608
609 * emacs.c (main): Call syms_of_xsettings
610
611 * config.in: HAVE_GCONF is new.
612
613 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
614 xsettings.o is new.
615
5a942932
KH
6162009-11-17 Kenichi Handa <handa@m17n.org>
617
618 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
619 back to the default font in case that no suitable font is found.
620
b7c7a4d1
SM
6212009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
622
623 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
624 Suggested by Chad Brown <yandros@mit.edu>.
625 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
626
072f1e39
JD
6272009-11-16 Jan Djärv <jan.h.d@swipnet.se>
628
629 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
630
5d1e70a2
AS
6312009-11-14 Andreas Schwab <schwab@linux-m68k.org>
632
87e32266 633 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 634
a53cfbe5
JD
6352009-11-14 Jan Djärv <jan.h.d@swipnet.se>
636
473a99b7
JD
637 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
638 has a parent.
639
a53cfbe5 640 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 641 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
642
643 * config.in: Generated (AUTO_DEPEND).
644
f04bb9b2
MA
6452009-11-13 Michael Albinus <michael.albinus@gmx.de>
646
b7c7a4d1 647 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
648 Vdbus_registered_functions_table, because it contains also
649 properties. Fix docstring.
b7c7a4d1 650 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 651
8f11f7ec
SM
6522009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
653
654 * alloc.c (mark_object): Don't reprocess marked strings.
655 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
656 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
657
8a605fe8
KH
6582009-11-13 Kenichi Handa <handa@m17n.org>
659
8f11f7ec 660 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
661 semantics of Vword_combining_categories.
662 (Vword_combining_categories): Describe the slight change of the
663 semantics.
664
241c4680
EZ
6652009-11-13 Eli Zaretskii <eliz@gnu.org>
666
667 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
668
669 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
670
5d58e44c
SM
6712009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
672
673 * xdisp.c (syms_of_xdisp): Fix typo in last change.
674
5e13f9d3
JB
6752009-11-12 Juanma Barranquero <lekktu@gmail.com>
676
677 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
678
cf54c754
DR
6792009-11-11 David Reitter <david.reitter@gmail.com>
680
681 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
682 variables to fix 2009-11-09 change.
683
a4ada374
DN
6842009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
685
91433552
DN
686 * process.c (ifflag_def): Make flag_sym constant.
687 (Fnetwork_interface_info): Use a constant pointer.
688 (ifflag_table):
689 * xfns.c (cursor_bits):
690 * xdisp.c (power_letter):
691 * termcap.c (speeds, esctab):
692 * sysdep.c (baud_convert):
693 * keyboard.c (lispy_accent_codes, modifier_names):
694 * image.c (xbm_format, xpm_format, pbm_format, png_format)
695 (jpeg_format, tiff_format, gif_format, svg_format)
696 (interlace_start, interlace_increment, gs_format):
697 * gtkutil.c (separator_names):
698 * fringe.c (swap_nibble):
699 * fns.c (base64_value_to_char, base64_char_to_value):
700 * fileio.c (make_temp_name_tbl):
701 * coding.c (suffixes): Make constant.
702
f4265f6c
DN
703 * frame.c (make_initial_frame):
704 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
705 build_string.
706 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
707
04420943
DN
708 * s/freebsd.h:
709 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
710
0a5d24ae
DN
711 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
712 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
713
a4ada374
DN
714 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
715 * xterm.c (syms_of_xterm):
716 * xfaces.c (syms_of_xfaces):
717 * xdisp.c (syms_of_xdisp):
718 * lread.c (syms_of_lread):
719 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
720 build_string.
91433552 721
a4ada374
DN
722 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
723
af98fc7f
SM
7242009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
725
8ab1650e 726 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 727
e90292a9
JD
7282009-11-10 Jan Djärv <jan.h.d@swipnet.se>
729
730 * keyboard.h: Declare timer_check.
731
732 * keyboard.c (timer_check_2): New function that does what the old
733 timer_check did.
734 (timer_check): Call timer_check_2 until -1 or a non-zero time is
735 returned, i.e. don't return -1 with timers pending.
736
737 * process.c: Remove extern declaration of timer_check.
738
739 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
740 even if timer_check returned -1.
741
af98fc7f
SM
742 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
743 xg_dialog_data.
e90292a9
JD
744 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
745 the event loop.
746 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
747 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
748 Destroy the dialog after xg_dialog_run.
749
045b83c0
SM
7502009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
751
752 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
753
1fb99a3a
JD
7542009-11-10 Jan Djärv <jan.h.d@swipnet.se>
755
756 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
757
04e452cb
JB
7582009-11-09 Juanma Barranquero <lekktu@gmail.com>
759
760 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
761
ef7417fd
SM
7622009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
763
764 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
765 w32menu.c, and nsmenu.m.
766 Simplify the obsolete case where position is nil.
767 (cleanup_popup_menu): New function, moved from nsmenu.m.
768 (struct skp): Remove slot `notreal'.
769 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
770 adjust callers.
771 (single_menu_item): Adjust call to parse_menu_item.
772 (syms_of_menu): Defsubr x-popup-menu.
773 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
774 (keymap_panes): Don't export any more.
775 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
776 (xmenu_show): Declare.
777 * keyboard.c (parse_menu_item): Remove arg `notreal'.
778 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
779 * keyboard.h (parse_menu_item): Update declaration.
780 * xmenu.c (Fx_popup_menu): Remove.
781 (syms_of_xmenu): Don't defsubr x-popup-menu.
782 * w32menu.c (Fx_popup_menu): Remove.
783 (syms_of_w32menu): Don't defsubr x-popup-menu.
784 * nsmenu.m (cleanup_popup_menu): Remove.
785 (ns_menu_show): Rename from ns_popup_menu and remove all the code
786 moved to menu.c's Fx_popup_menu.
787 (Fx_popup_menu): Remove.
788 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
789 menu_items (it's done in menu.c already).
790
424d6179
SM
7912009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
792
793 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
794 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
795
c0df13a6 7962009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
797
798 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 799 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
800 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
801 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
802
2de9f71c
SM
8032009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
804
805 Let integers use up 2 tags to give them one extra bit and thus double
806 their range.
807 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
808 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
809 New macros.
810 (enum Lisp_Type): Use them. Give explicit values.
811 (Lisp_Type_Limit): Remove.
812 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
813 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
814 Pay attention to USE_2_TAGS_FOR_INTS.
815 (INTEGERP): Use LISP_INT_TAG_P.
816 * fns.c (internal_equal): Simplify the default case.
817 (sxhash): Use case_Lisp_Int.
818 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
819 any more.
820 (Ftype_of): Use case_Lisp_Int.
821 (store_symval_forwarding): Take into account the fact that Ints can
822 now have more than one tag.
823 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
824 buffer_slot_type_mismatch):
825 * xfaces.c (face_attr_equal_p):
826 * print.c (print_object):
827 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
828 Use case_Lisp_Int.
829
323637a2
EZ
8302009-11-06 Eli Zaretskii <eliz@gnu.org>
831
7ac65b38
EZ
832 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
833
323637a2
EZ
834 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
835 warning.
836
e511451f
JD
8372009-11-06 Jan Djärv <jan.h.d@swipnet.se>
838
839 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
840
841 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
842
843 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
844 ButtonPressRelease and MotionNotify (bug#4870).
845
5e2327cf
DN
8462009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
847
5adc433e
DN
848 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
849
d67b4f80
DN
850 * xterm.c (syms_of_xterm):
851 * xselect.c (syms_of_xselect):
852 * xmenu.c (syms_of_xmenu):
853 * xfns.c (syms_of_xfns):
854 * xfaces.c (syms_of_xfaces):
855 * xdisp.c (syms_of_xdisp):
856 * window.c (syms_of_window):
857 * w32fns.c (syms_of_w32fns):
858 * undo.c (syms_of_undo):
859 * textprop.c (syms_of_textprop):
860 * terminal.c (syms_of_terminal):
861 * syntax.c (syms_of_syntax):
862 * sound.c (syms_of_sound):
863 * search.c (syms_of_search):
864 * print.c (syms_of_print):
865 * minibuf.c (syms_of_minibuf):
866 * macros.c (syms_of_macros):
867 * keymap.c (syms_of_keymap, initial_define_key)
868 (initial_define_lispy_key):
869 * keyboard.c (syms_of_keyboard):
870 * insdel.c (syms_of_insdel):
871 * image.c (syms_of_image):
872 * fringe.c (syms_of_fringe):
873 * frame.c (syms_of_frame):
874 * fontset.c (syms_of_fontset):
875 * fns.c (syms_of_fns):
876 * fns.c (syms_of_fns):
877 * fileio.c (syms_of_fileio):
878 * fileio.c (syms_of_fileio):
879 * eval.c (syms_of_eval):
880 * doc.c (syms_of_doc):
881 * dispnew.c (syms_of_display):
882 * dired.c (syms_of_dired):
883 * dbusbind.c (syms_of_dbusbind):
884 * data.c (syms_of_data):
885 * composite.c (syms_of_composite):
886 * coding.c (syms_of_coding):
887 * cmds.c (syms_of_cmds):
888 * charset.c (define_charset_internal, syms_of_character):
889 * ccl.c (syms_of_ccl):
890 * category.c (syms_of_category, init_category_once):
891 * casetab.c (syms_of_casetab):
892 * casefiddle.c (syms_of_casefiddle):
893 * callint.c (syms_of_callint):
894 * bytecode.c (syms_of_bytecode):
895 * buffer.c (keys_of_buffer, syms_of_buffer):
896 * alloc.c (syms_of_alloc):
897 * process.c (syms_of_process, init_process):
898 * lread.c (syms_of_lread, init_obarray):
899 * font.c (build_style_table):
900 * emacs.c (syms_of_emacs, main): Replace calls to intern with
901 intern_c_string, calls to make_pure_string with
902 make_pure_c_string. Use pure_cons instead of Fcons.
903
5e2327cf
DN
904 * process.c (socket_options): Make it const.
905 (set_socket_option, init_process): Use a const pointer.
906
907 * lread.c (intern_c_string): New function.
908 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
909 (defvar_int): Uset it. Make the name const char*.
910
911 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
912 (defvar_int): Update prototypes.
913 (DEFUN, EXFUN): Support for prototypes is now required.
914 (intern_c_string): New prototype.
915 (struct Lisp_Subr): Make symbol_name constant.
916
917 * font.c (struct table_entry): Remove unused member. Make NAMES
918 constant.
919 (weight_table, slant_table, width_table): Make constant.
920
921 * emacs.c (struct standard_args): Make name and longname constant.
922
923 * character.h (DEFSYM): Use intern_c_string.
924
a56eaaef
DN
9252009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
926
927 * alloc.c (make_pure_c_string): New function.
928
929 * eval.c (Fautoload): Purecopy all arguments.
930
f6a07420
KH
9312009-11-05 Kenichi Handa <handa@m17n.org>
932
933 * fileio.c (Finsert_file_contents): Be sure set coding-system of
934 the buffer in case of replace.
935
5d28d4b1
DN
9362009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
937
938 * puresize.h (BASE_PURESIZE): Increase to 1620000.
939
b349d111
SM
9402009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
941
d528b1ce
SM
942 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
943 when applicable (bug#4851).
944
b349d111
SM
945 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
946 (P_): Support for prototypes is now required.
947
c38eb027
CY
9482009-10-31 Chong Yidong <cyd@stupidchicken.com>
949
950 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
951 (Bug#4827).
952
0405f8d9
EZ
9532009-10-30 Eli Zaretskii <eliz@gnu.org>
954
d528b1ce 955 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 956
ca0a881a
DN
9572009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
958
959 * puresize.h (BASE_PURESIZE): Increase to 1470000.
960
d528b1ce
SM
961 * lread.c (Fload): Purecopy the file name when building
962 Vpreloaded_file_list.
ca0a881a 963
47e0e0e4
JR
9642009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
965
966 * w32fns.c (syms_of_w32fns): Change default value of
967 w32-scroll-lock-modifier to nil. (Bug#2827)
968
057bce6f
JB
9692009-10-26 Juanma Barranquero <lekktu@gmail.com>
970
782a943e 971 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 972
242bc74c
AS
9732009-10-26 Andreas Schwab <schwab@redhat.com>
974
975 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
976
522d013a
JB
9772009-10-26 Juanma Barranquero <lekktu@gmail.com>
978
979 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
980 For delta < 0, skip check that only makes sense when the mini-window
981 is going to be enlarged. (Bug#4534)
982
18060980
CY
9832009-10-25 Chong Yidong <cyd@stupidchicken.com>
984
985 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
986 string in menu maps (Bug#4471).
987
fec8f0fe
CY
9882009-10-24 Chong Yidong <cyd@stupidchicken.com>
989
990 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
991 FRAME_NS_VIEW on terminal frames (Bug#4765).
992
10d66ec0
AS
9932009-10-24 Andreas Schwab <schwab@linux-m68k.org>
994
1cae01f7
AS
995 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
996 DBUS_TYPE_UINTnn separately to get proper sign extension.
997
58a12889
AS
998 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
999 can properly handle unsigned types.
d528b1ce 1000 (make_uid, make_gid): Remove.
58a12889 1001
987c9327
AS
1002 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
1003 types again.
1004
522d013a 1005 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
1006 (system_process_attributes): Likewise.
1007
905a9ed3
DN
10082009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
1009
1010 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
1011
1012 * eval.c (Fautoload): Purecopy the filename. Simplify.
1013
1014 * category.c (Fdefine_category): Purecopy docstring.
1015
a599b3e8
AS
10162009-10-23 Andreas Schwab <schwab@linux-m68k.org>
1017
7b792fc9
AS
1018 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
1019
a599b3e8
AS
1020 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
1021
b35ac83e
CY
10222009-10-23 Chong Yidong <cyd@stupidchicken.com>
1023
1024 * window.c (Fwindow_edges, Fwindow_pixel_edges)
1025 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
1026 (Bug#4775).
1027
e8903e00
SM
10282009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
1029
1030 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
1031 (init_fileio_once):
1032 * lisp.h (init_fileio_once): Remove.
1033 * emacs.c (main): Don't call init_fileio_once.
1034
8f43cbf3
DN
10352009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
1036
1037 * puresize.h (BASE_PURESIZE): Increase to 1430000.
1038
26898943
AS
10392009-10-21 Andreas Schwab <schwab@linux-m68k.org>
1040
1041 * doprnt.c (doprnt): Fix overflow check.
1042
5c646d5a
JD
10432009-10-21 Jan Djärv <jan.h.d@swipnet.se>
1044
3132a7ea
JD
1045 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
1046
5c646d5a
JD
1047 * xterm.h (x_wait_for_event): Declare it.
1048
1049 * xterm.c (pending_event_wait): New variable.
1050 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
1051 see pending_event_wait.eventtype.
1052 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
1053 (x_new_font): Call change_frame_size with new rows/columns before we
1054 try to resize the frame.
5c646d5a 1055 (x_wait_for_event): New function.
d528b1ce
SM
1056 (x_set_window_size_1): Don't change gravity unless change_gravity
1057 is set.
5c646d5a
JD
1058 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
1059 don't change frame size, instead wait for the ConfigureNotify.
1060 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
1061 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
1062 (x_initialize): Initialize pending_event_wait.
1063
1064 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
1065 size.
1066
1067 * widget.c (EmacsFrameSetValues): Add comment.
1068 (EmacsFrameSetCharSize): Just call x_set_window_size.
1069
1070 * gtkutil.c (xg_frame_set_char_size): Flush events and call
1071 x_wait_for_event.
d528b1ce 1072 (flush_and_sync): Remove again.
5c646d5a
JD
1073 (xg_get_font_name): Suggest monospace if no previous font is known.
1074
e9c1637d
SM
10752009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
1076
1077 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 1078 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 1079
5a72cccb
YM
10802009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1081
1082 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
1083 processing pending events when event is filtered for input method.
ab04798f 1084 (Bug#3681)
5a72cccb 1085
2629aa37
JB
10862009-10-20 Juanma Barranquero <lekktu@gmail.com>
1087
1088 * fns.c: Add #endif accidentally removed in previous change.
1089
c3417a74
DN
10902009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1091
1092 * fns.c: Remove code for unsupported system: MAC_OS.
1093 * image.c: Likewise. Include setjmp.h.
1094
9685cef2
JD
10952009-10-19 Jan Djärv <jan.h.d@swipnet.se>
1096
1097 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
1098 pixel -1 (bug #4742).
1099
d7306fe6
DN
11002009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
1101
019d2c4c
DN
1102 * process.c (create_pty): Remove conditionals for no longer
1103 supported systems: UNIPLUS and RTU.
1104
ee6bacd4
DN
1105 * xterm.c:
1106 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
1107
d7306fe6
DN
1108 * alloc.c: Do not define struct catchtag.
1109 * eval.c: Move struct catchtag definition ...
1110 * lisp.h: ... here.
1111
1112 * image.c: Move png.h #include earlier to avoid warnings.
1113
1114 * xterm.c:
1115 * xsmfns.c:
1116 * xselect.c:
1117 * xrdb.c:
1118 * xmenu.c:
1119 * xftfont.c:
1120 * xfont.c:
1121 * xfns.c:
1122 * xfaces.c:
1123 * xdisp.c:
1124 * window.c:
1125 * widget.c:
1126 * w32xfns.c:
1127 * w32uniscribe.c:
1128 * w32term.c:
1129 * w32select.c:
1130 * w32reg.c:
1131 * w32proc.c:
1132 * w32menu.c:
1133 * w32inevt.c:
1134 * w32heap.c:
1135 * w32font.c:
1136 * w32fns.c:
1137 * w32console.c:
1138 * w32.c:
1139 * w16select.c:
1140 * vm-limit.c:
1141 * unexsol.c:
1142 * unexec.c:
1143 * unexcw.c:
1144 * unexaix.c:
1145 * undo.c:
1146 * tparam.c:
1147 * textprop.c:
1148 * terminfo.c:
1149 * terminal.c:
1150 * termcap.c:
1151 * term.c:
1152 * syntax.c:
1153 * sound.c:
1154 * sheap.c:
1155 * search.c:
1156 * scroll.c:
1157 * region-cache.c:
1158 * regex.c:
1159 * ralloc.c:
1160 * process.c:
1161 * print.c:
b024548b
DN
1162 * nsterm.m:
1163 * nsselect.m:
1164 * nsmenu.m:
1165 * nsimage.m:
1166 * nsfont.m:
1167 * nsfns.m:
d7306fe6
DN
1168 * msdos.c:
1169 * minibuf.c:
1170 * menu.c:
1171 * marker.c:
1172 * macros.c:
1173 * keymap.c:
1174 * keyboard.c:
1175 * intervals.c:
1176 * insdel.c:
1177 * indent.c:
1178 * gtkutil.c:
1179 * ftxfont.c:
1180 * ftfont.c:
1181 * fringe.c:
1182 * frame.c:
1183 * fontset.c:
1184 * font.c:
1185 * fns.c:
1186 * floatfns.c:
1187 * filelock.c:
1188 * fileio.c:
1189 * emacs.c:
1190 * editfns.c:
1191 * dosfns.c:
1192 * doprnt.c:
1193 * doc.c:
1194 * dispnew.c:
1195 * dired.c:
1196 * dbusbind.c:
1197 * data.c:
1198 * composite.c:
1199 * coding.c:
1200 * cmds.c:
1201 * cm.c:
1202 * chartab.c:
1203 * charset.c:
1204 * character.c:
1205 * ccl.c:
1206 * category.c:
1207 * casetab.c:
1208 * casefiddle.c:
1209 * callproc.c:
1210 * callint.c:
1211 * bytecode.c:
1212 * buffer.c:
1213 * atimer.c: Include setjmp.h. (Bug#4643)
1214
fd5f21e6
SM
12152009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
1216
4c0354d7
SM
1217 Remove leftover table unibyte_to_multibyte_table.
1218 * character.c (unibyte_to_multibyte_table): Remove.
1219 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
1220 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
1221 * character.h (UNIBYTE_TO_CHAR): New macro.
1222 (MAKE_CHAR_MULTIBYTE): Use it.
1223 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
1224 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
1225 (message_dolog, set_message_1):
1226 * search.c (Freplace_match):
1227 * editfns.c (Fcompare_buffer_substrings):
1228 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
1229 (concat):
1230 * insdel.c (copy_text, count_size_as_multibyte):
1231 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
1232 * term.c (produce_glyphs):
1233 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
1234 * regex.c (RE_CHAR_TO_MULTIBYTE):
1235 * cmds.c (internal_self_insert):
1236 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
1237
fd5f21e6
SM
1238 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
1239
4418646e
DN
12402009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
1241
1242 * puresize.h (BASE_PURESIZE): Increase to 1310000.
1243
35f5c1d2
JB
12442009-10-16 Juanma Barranquero <lekktu@gmail.com>
1245
1246 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
1247
a0cd8f6b
AR
12482009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
1249
1250 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
1251 still needed under Tiger.
1252
1253 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
1254
1255 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
1256 __Apple__.
1257
1258 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
1259
01a8d3fa
KH
12602009-10-15 Kenichi Handa <handa@m17n.org>
1261
1262 * print.c (print_object): Escape a symbol like "2E10" too.
1263
bf6c75c9 12642009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
1265
1266 Cleanups and changes for 64-bit compile under Snow Leopard.
1267 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
1268
1269 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
1270
c5959062 1271 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
1272 (ns_findfonts, nsfont_list_family): Use long format in printf, and
1273 cast argument.
1274 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 1275 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
1276
1277 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
1278
1279 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
1280 where appropriate.
1281
1282 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
1283 where appropriate.
6e4780c5
JB
1284 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
1285 Use stringWithUTF8String.
bf6c75c9
AR
1286 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
1287
6e4780c5
JB
1288 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
1289 Add formal protocol mention to inheritance.
bf6c75c9
AR
1290 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
1291
6e4780c5
JB
1292 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
1293 Fix printf format.
bf6c75c9
AR
1294 (ns_query_color): Use CGFloat where appropriate.
1295 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
1296 (EmacsScroller-mouseDown:) Use long format in printf, and cast
1297 argument.
1298
3d87f118
AR
1299 * config.in (NS_HAVE_NSINTEGER): Drop.
1300
a95c8102
AR
1301 * dbusbind.c (dbus-method-return-internal)
1302 (dbus-method-error-internal): Use long format in printf, and cast
1303 argument.
1304
1305 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
1306 in printf, and cast argument.
1307
6873acca 1308 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
1309 cast argument.
1310
9ec6f100
GM
13112009-10-11 Glenn Morris <rgm@gnu.org>
1312
1313 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
1314
5be883cd
JD
13152009-10-08 Jan Djärv <jan.h.d@swipnet.se>
1316
1317 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
1318 menu bar with a small width so it doesn't enlarge the frame.
1319
d7a39b51
JB
13202009-10-08 Juanma Barranquero <lekktu@gmail.com>
1321
1322 * fontset.c (Fset_fontset_font): Fix typos in error messages.
1323
0c2b6f8e
GM
13242009-10-06 Glenn Morris <rgm@gnu.org>
1325
1326 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
1327 SOME_MACHINE_LISP (this enters indirectly via DOC).
1328
e02131a2
EZ
13292009-10-05 Eli Zaretskii <eliz@gnu.org>
1330
1331 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
1332
b4744254
EZ
13332009-10-04 Eli Zaretskii <eliz@gnu.org>
1334
1335 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
1336 Doc fix.
1337
dbf64827
JB
13382009-10-03 Martin Rudalics <rudalics@gmx.at>
1339
1340 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
1341
e9a0aef8
MA
13422009-10-02 Michael Albinus <michael.albinus@gmx.de>
1343
d528b1ce 1344 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
1345 used anymore outside fileio.c.
1346
1347 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
1348
64eb2b56
JB
13492009-10-01 Juanma Barranquero <lekktu@gmail.com>
1350
1351 * lisp.h (Qdelete_directory_internal):
1352 Declare, instead of Qdelete_directory.
1353
1354 * w32fns.c (Fsystem_move_file_to_trash): Use it.
1355
9d28c33e
SM
13562009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
1357
1358 * eval.c (Fcalled_interactively_p): Add `kind' argument.
1359
9d8f3bd9
MA
13602009-10-01 Michael Albinus <michael.albinus@gmx.de>
1361
9d28c33e 1362 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
1363 Fdelete_directory. It is not a command anymore. It has no file
1364 name handler.
1365
9694740b
SM
13662009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
1367
1368 * xdisp.c (get_next_display_element): Use an enum in last change.
1369
748e162f
KH
13702009-09-28 Kenichi Handa <handa@m17n.org>
1371
9694740b 1372 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
1373 unibyte_display_via_language_environment in handling
1374 Vnobreak_char_display.
1375
17efd58d
AR
13762009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1377
1378 * nsterm.h (ns_app_name): New extern variable.
1379
1380 * nsterm.m (ns_app_name): New variable.
1381 (ns_term_init): Set and use it.
1382 (ns_term_shutdown): Use it.
1383
1384 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
1385 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
1386
1387 * nsfns.m (ns_set_name_iconic, ns_set_name)
1388 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
1389 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
1390
9694740b
SM
1391 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
1392 Remove double-casting in client_data comparison.
31c2d412 1393
3208cb35
YM
13942009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1395
1396 * keyboard.c (make_lispy_event): Remember last wheel direction.
1397 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
1398
b7d552d6
GM
13992009-09-26 Glenn Morris <rgm@gnu.org>
1400
1401 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
1402 internal.elc. Add term/pc-win.elc.
1403 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
1404 term/x-win.elc.
1405 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
1406 term/w32-win.elc.
1407 (NS_SUPPORT): New.
1408 (lisp): Add NS_SUPPORT.
1409 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
1410
4ff670a8
DR
14112009-09-25 David Reitter <david.reitter@gmail.com>
1412
1413 * nsmenu.m (EmacsMenu-clear): Recognize application menu
1414 on Mac OS X 10.6+ (bug#4513).
1415
feabfb6c
JB
14162009-09-24 Juanma Barranquero <lekktu@gmail.com>
1417
1418 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
1419 some parts of Emacs code (like font selection) don't grok them.
1420 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 1421
de59072a
AS
14222009-09-24 Andreas Schwab <schwab@redhat.com>
1423
1424 * coding.c (decode_coding_iso_2022): Fix operator precedence.
1425
a489517b
JB
14262009-09-24 Juanma Barranquero <lekktu@gmail.com>
1427
1428 * dired.c (Fdirectory_files): Fix typo in docstring.
1429
0592970c
AR
14302009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1431
1432 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
1433 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
1434 (EmacsScroller-setPosition:portion:whole:): Remove -display call
1435 under GNUstep.
1436 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
1437
1438 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
1439 glyph advancement.
1440
48e8a88b
AR
14412009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1442
1443 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 1444 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
1445
1446 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
1447 deleted (bug #4492).
1448
e14f0a78
AR
1449 * nsfont.m (Vns_reg_to_script): New lisp variable.
1450 (syms_of_nsfont): Declare it.
1451 (ns_registry_to_script): New function.
1452 (ns_get_req_script): Call it.
1453 (ns_findfonts): Don't give up on non-unicode registry.
1454
1455 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
1456
5b650faa
SM
14572009-09-20 Tom Tromey <tromey@redhat.com>
1458
1459 * eval.c (find_handler_clause): Make stack-trace-on-error work in
1460 batch mode (bug#4228).
1461
a489517b 14622009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
1463
1464 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 1465 carefully. (Bug #4339)
0bae4e09 1466
fcfe06f3
CY
14672009-09-18 Chong Yidong <cyd@stupidchicken.com>
1468
d798ba87 1469 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 1470
31642728
AR
14712009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1472
1473 * emacs.c (inhibit_x_resources): Update doc string for NS.
1474 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 1475 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
1476
1477 * nsterm.h (ns_no_defaults): Remove.
1478
1479 * nsterm.m (ns_no_defaults): Remove.
1480 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
1481 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
1482 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
1483 don't update the NSWindow itself.
1484 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 1485 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
1486
1487 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
1488 ns_use_qd_smoothing.
1489
1490 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
1491 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 1492 (x-close-connection): Drop PSFlush() under OS X.
a489517b 1493 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 1494
8686ac71
JB
14952009-09-17 Juanma Barranquero <lekktu@gmail.com>
1496
1497 * emacs.c (inhibit_x_resources): New variable.
1498 (main) [HAVE_NS]: Don't process --quick command line option.
1499 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
1500
1501 * lisp.h (inhibit_x_resources): Declare it extern.
1502
1503 * w32reg.c (x_get_string_resource):
1504 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
1505
e227ba05
EZ
15062009-09-17 Eli Zaretskii <eliz@gnu.org>
1507
362654a6
JB
1508 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
1509 Add lisp/term/internal.elc.
e227ba05 1510
742d40e8
SM
15112009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1512
1513 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
1514 (bug#4461).
1515
005bd5a2
DN
15162009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
1517
1518 * puresize.h (BASE_PURESIZE): Increase to 1290000.
1519
1520 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
1521 (OBJECTS_MACHINE): Remove, unused.
1522
f9af9719
SM
15232009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
1524
1525 * frame.c (x_get_resource_string): Remove unused.
1526
0307c7d2
JD
15272009-09-15 Jan Djärv <jan.h.d@swipnet.se>
1528
1529 * xterm.c (x_new_font): Call change_frame_size before calling
1530 x_set_window_size, in case frame size won't change.
1531
1532 * frame.c (x_set_font): Remove dead code.
1533
428b13d6
SM
15342009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
1535
1536 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
1537
5766c380
SM
15382009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1539
1540 * lread.c (Fload): Don't output a message after loading an obsolete
1541 package any more (done in Lisp now).
1542
2fd0161b
CY
15432009-09-12 Chong Yidong <cyd@stupidchicken.com>
1544
1545 * fns.c (syms_of_fns): Doc fix (Bug#4227).
1546
bc5e75b6
SM
15472009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1548
1549 * keymap.c (Fwhere_is_internal): Use nconc2.
1550
c31c985e
AM
15512009-09-11 Alan Mackenzie <acm@muc.de>
1552
1553 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
1554 batch mode.
1555
78012bd2
AS
15562009-09-11 Andreas Schwab <schwab@linux-m68k.org>
1557
1558 * xdisp.c (display_mode_element): Detect cycles.
1559
9d889332
SM
15602009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1561
1562 * keymap.c (where_is_internal): Don't erroneously return nil right after
1563 filling the cache.
1564 (where_is_internal_1): Fix up typo.
1565
7ab5d780
GM
15662009-09-11 Glenn Morris <rgm@gnu.org>
1567
1568 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
1569 share a common doc-string.
1570
5238a749
SM
15712009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
1572
66d77eda
SM
1573 * keymap.c (get_keymap): Return the actual keymap symbol rather than
1574 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
1575
5238a749
SM
1576 * keymap.c (QCadvertised_binding): New constant.
1577 (syms_of_keymap): Initialize it.
1578 (Fwhere_is_internal): Try and use bindings from :advertised-binding
1579 if applicable.
1580
19f48442
SM
15812009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
1582
50d4ba39
SM
1583 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
1584 (parse_menu_item): Streamline since bindings are recomputed all the
1585 time anyway. Don't bother checking Vdefine_key_rebound_commands any
1586 more and don't support lmenu's menu-alias any more either.
1587
a88a5372
SM
1588 * keymap.c (where_is_internal_data): Make noindirect a boolean.
1589 (where_is_internal): Strip it down to only traverse the keymaps.
1590 Move the cache handling from Fwhere_is_internal to here.
1591 (Fwhere_is_internal): Move the handling of remapping and the choice of
1592 the best binding from where_is_internal to here.
1593 Unify the cached/noncached paths, so remapping is also handled
1594 correctly when the cache is used, and so the cache can be used to
1595 speed up remap-handling when applicable.
1596 Give preference to non-remapped bindings.
1597 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
1598 non-remapped bindings.
1599 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
1600 command remapping.
1601
19f48442
SM
1602 * xdisp.c (display_mode_element): Move list length limit from 50 to
1603 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
1604
599498c3 16052009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
1606
1607 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
1608
f9b7b5ac
SM
16092009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
1610
a53af587
JB
1611 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
1612 (Bug#4334)
1613
f9b7b5ac
SM
1614 * keymap.c (where_is_internal): Filter out shadowed remappings.
1615 Assume that where_is_internal returns unshadowed bindings to simplify
1616 the code and get rid of the gotos. Use ASIZE.
1617
04f4b72d
JD
16182009-09-04 Jan Djärv <jan.h.d@swipnet.se>
1619
4da146f2
JD
1620 * xterm.c (x_focus_changed): If we get a focusout and pointer
1621 is invisible, make it visible.
1622
04f4b72d
JD
1623 * xterm.h: Remove condition for declaration of
1624 x_*_window_to_frame.
1625
7cef7ce3
SM
16262009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
1627
1628 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
1629 initial terminal as well.
1630
a54fa5b7
JD
16312009-09-02 Jan Djärv <jan.h.d@swipnet.se>
1632
1633 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 1634 x_menubar_window_to_frame.
a54fa5b7
JD
1635
1636 * xterm.c: Remove declarations also in xterm.h
1637 (XTmouse_position): Do not return valid positions
1638 for clicks in the menubar and the toolbar for Gtk+.
1639
1640 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
1641 if the widget for the event has the same top level as a frame,
1642 return the frame.
1643 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
1644 internal windows, bug #4122.
1645 (x_non_menubar_window_to_frame): Remove.
1646
5a021dd0
GM
16472009-09-02 Glenn Morris <rgm@gnu.org>
1648
1649 * buffer.c (default-major-mode): Move most of the doc from here...
1650 (major-mode): ... to here.
1651
548fe2f3
NR
16522009-08-30 Nick Roberts <nickrob@snap.net.nz>
1653
1654 * process.c (wait_reading_process_output): Keep the descriptor
1655 when pty is used by a non-child process, e.g., in I/O buffer of
1656 GDB this allows inferior to be restarted.
1657
e0840eef
EZ
16582009-08-29 Eli Zaretskii <eliz@gnu.org>
1659
1660 * xdisp.c (redisplay_internal): Remove redundant test and collapse
1661 both branches into one.
1662
82e98df4
SM
16632009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1664
1665 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
1666 (main): Use enable-multibyte-characters rather than
1667 default-enable-multibyte-characters. Output a warning message when
1668 running a unibyte session.
1669
890617cb
YM
16702009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1671
1672 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
1673 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
1674 (copy_data_segment): Also copy __program_vars section.
1675 (copy_dyld_info) [LC_DYLD_INFO]: New function.
1676 (dump_it) [LC_DYLD_INFO]: Use it.
1677
1678 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
1679
e7adeadc
EZ
16802009-08-28 Eli Zaretskii <eliz@gnu.org>
1681
1682 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
1683 $(SRC)/buildobj.h.
1684 (buildobj.h): Renamed from $(SRC)/buildobj.h.
1685 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
1686 $(SRC)/buildobj.h.
1687 (clean): Add buildobj.h.
1688
3ed8bbdc
TZ
16892009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
1690
1691 * print.c (print_object): Set escapeflag to 1 when printing
1692 hashtable keys and values.
1693
155a6764
SM
16942009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
1695
1696 * lread.c (read_integer): Use doubles (and potentially return a float
1697 number) as we do in string-to-number.
1698 (read1): Use strtol to read integers, signal errors on strtol's
1699 overflow and use floats if strtol's output is too large for
1700 Elisp integers.
1701
877610de
EZ
17022009-08-27 Eli Zaretskii <eliz@gnu.org>
1703
1704 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
1705 (make-buildobj-SH): Fix last change.
1706 (SRC): Move to before where it's first used.
1707
ef73e7be
KH
17082009-08-27 Kenichi Handa <handa@m17n.org>
1709
550c8289
KH
1710 * process.c (send_process): Use encode_coding_object instead of
1711 encode_coding_string to perform eol-conversion even if the string
1712 is unibyte.
1713
60afa08d
KH
1714 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
1715 character.
1716
ef73e7be 1717 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 1718 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 1719
7b3a82d7
DN
17202009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
1721
5654bf63
DN
1722 * callproc.c (Fcall_process): Remove always true #if.
1723
7b3a82d7
DN
1724 * lisp.h: Replace #if 0 code for checking with text pointing to
1725 the --enable-checking configure flag.
1726
1727 * emacs.c (main): Mention the --enable-profiling configure flag
1728 instead of using CFLAGS.
1729
878bde49
KR
17302009-08-26 Ken Raeburn <raeburn@raeburn.org>
1731
1732 * Makefile.in (buildobj.h): New target.
1733 (doc.o): Depend on it.
1734 (temacs${EXEEXT}): Don't generate buildobj.lst.
1735 (mostlyclean): Delete buildobj.h, not buildobj.lst.
1736 * makefile.w32-in ($(SRC)/buildobj.h): New target.
1737 ($(BLD)/doc.$(O)): Depend on it.
1738 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
1739 provided by Eli Zaretskii.)
1740 ($(TEMACS)): Don't generate buildobj.lst.
1741 * doc.c: Include buildobj.h.
1742 (buildobj): New static variable.
1743 (Fsnarf_documentation): Use it, instead of opening and reading
1744 buildobj.lst.
1745
1574224c
MA
17462009-08-25 Michael Albinus <michael.albinus@gmx.de>
1747
1748 * dbusbind.c (Fdbus_call_method)
1749 (Fdbus_call_method_asynchronously): Use English numeric format for
1750 timeout values in doc string.
1751
d9da2f45
KH
17522009-08-25 Kenichi Handa <handa@m17n.org>
1753
ef73e7be
KH
1754 * alloc.c (mark_char_table): New function.
1755 (mark_object): Use mark_char_table for a char-table.
1756
d9da2f45
KH
1757 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
1758 (CHAR_TABLE_REF): Use it.
1759
c8edcc01
KR
17602009-08-23 Ken Raeburn <raeburn@raeburn.org>
1761
1762 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
1763 before invoking the newly build emacs to check for load-path
1764 shadowing.
1765
7763401b
GM
17662009-08-22 Glenn Morris <rgm@gnu.org>
1767
1768 * Makefile.in (bootstrap_exe): New variable.
1769 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
1770 Use ${bootstrap_exe}.
1771
729eadda
EZ
17722009-08-22 Eli Zaretskii <eliz@gnu.org>
1773
1774 * coding.h (encode_coding_string): Don't encode unibyte strings.
1775 (Bug#4047)
1776
eb4c6ace
MA
17772009-08-22 Michael Albinus <michael.albinus@gmx.de>
1778
1779 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
1780
1781 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
1782 intended as hotfix only.
1783 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
1784
36e34d1b
AR
17852009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1786
1787 * nsterm.m (ns_get_color): Update documentation properly for last
1788 change, and clean up loose ends in the code left by it. Fix
1789 longstanding bug with 16-bit hex parsing, and add support for
1790 yet another X11 format (rgb:r/g/b) for compatibility.
1791 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
1792 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
1793
f983eb8a
SM
17942009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
1795
1796 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
1797
3f56d3c6
MA
17982009-08-20 Michael Albinus <michael.albinus@gmx.de>
1799
1800 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
1801 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
1802 (xd_initialize, xd_pending_messages): Check, whether
1803 $DBUS_SESSION_BUS_ADDRESS is set.
1804
fb641d68
YM
18052009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1806
1807 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
1808
1809 * nsterm.m (ns_get_color): Remove incompatible color formats again.
1810
cf59a374
GM
18112009-08-20 Glenn Morris <rgm@gnu.org>
1812
1813 * emacs.c (system-type): Doc fix.
1814
1373f3be
SM
18152009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
1816
1817 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
1818 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
1819
058ed861
MA
18202009-08-18 Michael Albinus <michael.albinus@gmx.de>
1821
1373f3be
SM
1822 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
1823 New functions.
058ed861
MA
1824 (xd_initialize): Revert change from 2009-08-16.
1825
563a866e 18262009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
1827
1828 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 1829 font-group vector, return nil.
5fc05db0 1830
e42bdf01
CY
18312009-08-17 Chong Yidong <cyd@stupidchicken.com>
1832
1833 * process.c (status_notify): Don't perform redisplay.
1834 (Fdelete_process, list_processes_1, process_send_signal):
1835 Expliticly perform redisplay.
1836 (wait_reading_process_output): Always check process status, but
1837 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
1838
4230ab74
KR
18392009-08-17 Ken Raeburn <raeburn@raeburn.org>
1840
1373f3be 1841 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
1842 (XFLOAT_INIT): New macro for storing a float value.
1843 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
1844 * fns.c (sxhash): Copy out the value of a float in order to
1845 examine its bytes.
1846 * dbusbind.c (xd_append_arg): Likewise.
1847
4230ab74
KR
1848 * emacs.c (main): Don't call syms_of_data twice.
1849
a0645cdd
MA
18502009-08-16 Michael Albinus <michael.albinus@gmx.de>
1851
1852 * dbusbind.c (xd_initialize): Add connection file descriptor to
1853 input_wait_mask, in order to let select() detect, whether a new
1854 message has been arrived.
ca4f31ea 1855 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 1856
485db0ba
MA
18572009-08-15 Michael Albinus <michael.albinus@gmx.de>
1858
1373f3be
SM
1859 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
1860 New functions.
485db0ba
MA
1861
1862 * lisp.h (xd_pending_messages): Declare.
1863
1864 * keyboard.c (readable_events): Call xd_pending_messages.
1865
b5b98ff4
CY
18662009-08-15 Chong Yidong <cyd@stupidchicken.com>
1867
1373f3be 1868 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 1869
f8354c6e
CY
1870 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
1871
b5b98ff4
CY
1872 * buffer.c (set_buffer_internal_1)
1873 (swap_out_buffer_local_variables): Check for unbound local
1874 variables (Bug#4138).
1875
8b9fc636
EZ
18762009-08-14 Eli Zaretskii <eliz@gnu.org>
1877
1878 * process.c (create_pty): Fix last change.
1879
ce959360
CY
18802009-08-13 Chong Yidong <cyd@stupidchicken.com>
1881
1882 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
1883 (xbm_load_image): Caller changed.
64b807c9 1884 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 1885
c7baf7e9
NR
18862009-08-13 Nick Roberts <nickrob@snap.net.nz>
1887
1888 * process.c (create_pty): New function.
1889 (Fstart_process): Use it to allow Emacs to just associate a pty
1890 with the buffer. See associated change in gdb-mi.el.
1891 (list_processes_1): Deal with no program name.
1892 (start_process_unwind): Use pid == -2 to mean no process.
1893
1ac9108a
SM
18942009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
1895
1896 * cmds.c (nonundocount): New global variable.
1897 (keys_of_cmds): Initialize it.
1898 (Fself_insert_command): Use it to combine upto 20 sequential chars
1899 into a single undo entry, just like the Qself_insert_command code in
1900 keyboard.c does.
1901 Call frame_make_pointer_invisible, also like the Qself_insert_command
1902 code in keyboard.c does.
1903 * keyboard.c (command_loop_1): Use the new global nonundocount rather
1904 than its own local replacement for it.
1905
e267324c
KR
19062009-08-10 Ken Raeburn <raeburn@raeburn.org>
1907
1ac9108a 1908 * fns.c (concat): Don't re-set string length to its current value.
77437343 1909
1ac9108a
SM
1910 * coding.h (decode_coding_string, encode_coding_string):
1911 Use SBYTES macro.
f0bed503 1912
1ac9108a 1913 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
1914 (doprnt): Merge with doprnt1, discarding lispstrings code.
1915 * lisp.h (doprnt_lisp): Don't declare.
1916
416e006d
JL
19172009-08-07 Juri Linkov <juri@jurta.org>
1918
1919 * puresize.h (BASE_PURESIZE): Increase to 1270000.
1920
6f7d5780
DN
19212009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
1922
1923 * print.c (syms_of_print): Undo previous change.
1924
f19a0f5b
TZ
19252009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
1926
1927 * lread.c (read1, syms_of_lread): Read hashtables back from the
1928 readable format.
1929
1930 * print.c (print_preprocess, print_object): Print hashtables fully
1931 and readably.
1932 (syms_of_print): Provide 'hashtable-print-readable.
1933
b9173dc2
AR
19342009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1935
1936 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
1937 no family set.
1938 (nsfont_open): Handle case when entity has no family.
1939
1586503c
AR
19402009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1941
1942 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
1943 element, not a list, for match case.
1944
087048cd
KH
19452009-07-28 Kenichi Handa <handa@m17n.org>
1946
1947 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
1948 rigidly.
1949
1950 * xfont.c (xfont_list_pattern): Don't ignore the return value of
1951 font_parse_xlfd. Check font properties more rigidly.
1952
780c2506
DN
19532009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
1954
31fd7c5c
JB
1955 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
1956 bsd-common.h.
780c2506 1957
a8c0cc18
KH
19582009-07-27 Kenichi Handa <handa@m17n.org>
1959
1960 * xfaces.c (face_with_height): Call font_clear_prop.
1961
4fbe2306
CY
19622009-07-26 Chong Yidong <cyd@stupidchicken.com>
1963
111d9af3
CY
1964 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
1965
1966 * xterm.c (x_term_init): Use Qx.
1967
4fbe2306
CY
1968 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
1969
1ac9108a 1970 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
1971 (ns_get_color): Revert 2009-07-16 change.
1972
beb0b7f9
EZ
19732009-07-25 Eli Zaretskii <eliz@gnu.org>
1974
1975 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 1976 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 1977
2baf5e76
KR
19782009-07-25 Ken Raeburn <raeburn@raeburn.org>
1979
1ac9108a
SM
1980 * coding.h (decode_coding_string, encode_coding_string):
1981 Use SCHARS macro.
8890e5f5 1982
2baf5e76 1983 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 1984 (load_depth): Delete.
2baf5e76
KR
1985 (Qload_in_progress): New variable.
1986 (load_unwind): Don't reference load_depth or load_in_progress.
1987 (Fload): Likewise; specbind Qload_in_progress instead.
1988 (init_lread): Don't initialize load_depth.
1989 (syms_of_lread): Initialize and protect Qload_in_progress.
1990
1395c6f5
AR
19912009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1992
1993 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
1994
4e2f36cf
AR
19952009-07-23 Yavor Doganov <yavor@gnu.org>
1996
1997 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
1998
5dd9a6f7
AR
19992009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2000
2001 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
2002 Bugs 3792, 3720, 2402.
2003 (ns_lookup_indexed_color): Check for bad index.
2004 (ns_index_color): Init unused slot to 0.
2005 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
2006 Bug 3714, possibly 3082.
5dd9a6f7 2007
c902b920
JR
20082009-07-22 Jason Rumney <jasonr@gnu.org>
2009
1ac9108a
SM
2010 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
2011 Position IME window at cursor (Bug#2570).
c902b920
JR
2012 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
2013 (globals_of_w32fns): Dynamically load functions required above.
2014
2015 * w32term.c (w32_draw_window_cursor): Send message to reposition
2016 any IME window.
2017
090101cf
CY
20182009-07-21 Chong Yidong <cyd@stupidchicken.com>
2019
2020 * fileio.c: Revert 2009-07-16 changes.
2021 (Vauto_save_include_big_deletions): New variable.
2022 (Fdo_auto_save): Disable auto-save only if
2023 auto-save-include-big-deletions is nil.
2024
e6583e3d
CY
20252009-07-21 Chong Yidong <cyd@stupidchicken.com>
2026
2027 * xdisp.c (move_it_to): For continued lines ending in a tab, take
2028 the overflowed pixels into account (Bug#3879).
2029
ece435a5
KR
20302009-07-21 Ken Raeburn <raeburn@raeburn.org>
2031
2032 * lread.c (load_depth): New variable.
2033 (Fload, load_unwind, init_lread): Set it to the load recursion
2034 depth; set load_in_progress as a simple boolean based on the
2035 current load_depth. (Bug#3892)
2036
40b2d973
AR
20372009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2038
2039 * nsfont.m (ns_has_attribute): Remove.
2040 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
2041
10be7e0d
JL
20422009-07-18 Juri Linkov <juri@jurta.org>
2043
2044 * process.c (Fset_process_query_on_exit_flag): Mention killing
2045 a buffer in docstring.
2046
fa055055
KH
20472009-07-17 Kenichi Handa <handa@m17n.org>
2048
2049 * casetab.c (shuffle): Fix the logic of setting up the cycle.
2050
042f7b69
YM
20512009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2052
2053 * nsfns.m (Fns_set_alpha): Remove function.
2054 (syms_of_nsfns): Don't defsubr it.
2055
2056 * nsterm.m (ns_get_color): Remove incompatible color formats.
2057 (ns_color_to_lisp): Generate #rrggbb color format string.
2058
4be941e3
RS
20592009-07-16 Richard Stallman <rms@gnu.org>
2060
2061 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
2062 (Fset_buffer_auto_saved): Handle save_length = -2.
2063
4e6b227d
CY
20642009-07-16 Chong Yidong <cyd@stupidchicken.com>
2065
2066 * xterm.c (Qx_gtk_map_stock): New var.
2067
2068 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
2069 of calling intern each time.
2070
a1856973
YM
20712009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2072
2073 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
2074 does tiling.
2075
2076 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
2077
497e54d8
KH
20782009-07-14 Kenichi Handa <handa@m17n.org>
2079
72d36834
KH
2080 * font.c (font_vconcat_entity_vectors): New function.
2081 (struct font_sort_data): New member font_driver_preference.
2082 (font_compare): Check font_driver_preference.
2083 (font_sort_entities): The format of the first argument changed.
2084 (font_delete_unmatched): Likewise.
2085 (font_list_entities): The return type changed.
2086 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
2087 (font_find_for_lface): Adjuste for the above changes.
2088 Don't suppress the checking of C even if the repertory supports it.
2089 (Flist_fonts): Adjust for the above changes.
72d36834 2090
1ac9108a
SM
2091 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
2092 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
2093 Reject a font who has adstyle property that is different from a
2094 langname derived from registry property.
1ac9108a 2095 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 2096
b6046155
EZ
20972009-07-13 Eli Zaretskii <eliz@gnu.org>
2098
2099 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
2100 local copy of dirfilename.
2101
fb6b6049
KH
21022009-07-13 Kenichi Handa <handa@m17n.org>
2103
e2402a5e
KH
2104 * chartab.c (sub_char_table_ref_and_range): Fix the range check
2105 against max_char.
2106
fb6b6049
KH
2107 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
2108 calling XSYMBOL (sym).
2109
65156807
EZ
21102009-07-11 Eli Zaretskii <eliz@gnu.org>
2111
1ac9108a
SM
2112 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
2113 New function.
2114 (directory_files_internal) [WINDOWSNT]:
2115 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
2116 the filesystem of the directory is fast or slow.
2117
2118 * w32.c (logon_network_drive): Don't assume PATH is an absolute
2119 file name.
2120 (is_slow_fs): New function.
2121 (stat): Use it to determine whether to issue more system calls to
2122 get accurate file attributes, when w32-get-true-file-attributes is
2123 `local'.
2124
e0ab5fcf
JD
21252009-07-10 Jan Djärv <jan.h.d@swipnet.se>
2126
2127 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 2128 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
2129 parameter font-parameter as default to the font dialog.
2130
784ceded
KH
21312009-07-10 Kenichi Handa <handa@m17n.org>
2132
2133 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
2134
fb8edc0b
EZ
21352009-07-09 Eli Zaretskii <eliz@gnu.org>
2136
1ac9108a 2137 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 2138
fb8edc0b
EZ
2139 * w32.c (stat): Treat UNC file names as residing on remote
2140 drives. (Bug#3542)
2141
635c75b1
KH
21422009-07-09 Kenichi Handa <handa@m17n.org>
2143
2144 * fontset.c (fontset_find_font): Fix previous change.
2145
c1d5ce94
MA
21462009-07-08 Michael Albinus <michael.albinus@gmx.de>
2147
2148 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
2149 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
2150 error flag.
2151
edb61b39
KH
21522009-07-08 Kenichi Handa <handa@m17n.org>
2153
374bf7e4
KH
2154 * fontset.c (fontset_find_font): Fix the logic of handling
2155 charset_matched.
2156 (font_for_char): Delete unused var.
2157 (generate_ascii_font_name): Delete it.
2158
edb61b39
KH
2159 * coding.h (JIS_TO_SJIS2): Fix the code range check.
2160
2161 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
2162 (encode_coding_sjis): Fix the code range check.
2163
0f3f018c
CY
21642009-07-07 Chong Yidong <cyd@stupidchicken.com>
2165
2166 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
2167 (Fexpand_file_name): Copy string data properly (Bug#3772).
2168
fcaf6f3a
JD
21692009-07-07 Jan Djärv <jan.h.d@swipnet.se>
2170
2171 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
2172 first MapNotify.
2173
6809ca75
KH
21742009-07-07 Kenichi Handa <handa@m17n.org>
2175
2176 * character.h (unibyte_has_multibyte_table): Delete extern.
2177 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
2178
2179 * charset.c (Fset_charset_priority): Update charset_unibyte.
2180 (syms_of_charset): Initialize charset_unibyte.
2181
2182 * character.c (unibyte_has_multibyte_table): Delete it.
2183 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
2184 charset_unibyte.
2185 (multibyte_char_to_unibyte_safe): Likewise.
2186 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
2187
1ac9108a 2188 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
2189 (x_produce_glyphs): Likewise.
2190
2191 * .gdbinit (xcharset): Fix the treating $arg0.
2192
ad9e2d54
EZ
21932009-07-04 Eli Zaretskii <eliz@gnu.org>
2194
2195 Emulation of `getloadavg' on MS-Windows.
2196 * w32.c: Include float.h
2197 (g_b_init_get_native_system_info, g_b_init_get_system_times)
2198 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
2199 (get_native_system_info, get_system_times): New functions.
2200 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
2201 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
2202 (globals_of_w32): Initialize g_b_init_get_native_system_info,
2203 g_b_init_get_system_times, and num_of_processors.
2204
0a3472c7
JR
22052009-07-03 Jason Rumney <jasonr@gnu.org>
2206
2207 * w32term.c (w32_initialize): Use standard types.
2208
80904120
EZ
22092009-07-03 Eli Zaretskii <eliz@gnu.org>
2210
2211 * dired.c (Ffile_attributes): Decode user and group names by the
2212 locale's encoding. (Bug#3443)
2213
6978862d
DN
22142009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
2215
f8d23104
DN
2216 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
2217 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
2218
2219 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
2220
2221 * term.c (init_tty): Remove spurious #ifdef.
2222
6978862d
DN
2223 * m/mips.h: Mention this file is also used for netbsd.
2224 * m/pmax.h: Remove file.
2225
e044e4fc
JD
22262009-07-03 Jan Djärv <jan.h.d@swipnet.se>
2227
2228 * xterm.h (struct x_display_info): Add invisible_cursor.
2229 (struct x_output): Add current_cursor.
2230
2231 * xterm.c (XTtoggle_invisible_pointer): New function.
2232 (x_define_frame_cursor): Don't define cursor if invisible or the
2233 same as before. Set current_cursor.
2234 (x_create_terminal): Set toggle_invisible_pointer_hook.
2235
2236 * xfns.c (make_invisible_cursor): New function.
2237 (x_set_mouse_color): Call make_invisible_cursor.
2238 Set current_cursor.
2239 (x_window): Set current_cursor.
2240
2241 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
2242
2243 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
2244 inserting a character.
2245 (read_avail_input): Call frame_make_pointer_visible.
2246
2247 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
2248 (frame_make_pointer_invisible, frame_make_pointer_visible):
2249 New functions.
e044e4fc
JD
2250 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
2251
2252 * frame.h: Declare frame_make_pointer_invisible and
2253 frame_make_pointer_visible.
2254 (struct frame): Add pointer_invisible.
2255
574c8efa
JD
22562009-07-02 Jan Djärv <jan.h.d@swipnet.se>
2257
7b507248
JD
2258 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
2259 frame isn't visible.
2260 (xg_frame_resized): If width/height is -1, get size of window
2261 from X server.
2262
2263 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
2264 for MapNotify.
2265
835bdaa7 2266 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 2267 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 2268 (flush_and_sync): Reintroduce.
574c8efa 2269
3f1c6666 22702009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 2271
31fd7c5c 2272 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
2273
2274 * xterm.c (x_handle_net_wm_state): Also look for sticky.
2275 (x_term_init): Initialize Xatom_net_wm_state_sticky.
2276
2277 * frame.h: Declare Qsticky.
2278
cad9ef74
JD
2279 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
2280
2281 * nsfns.m (ns_frame_parm_handlers): Ditto.
2282
2283 * frame.c: Declare Qsticky.
2284 (frame_parms): Add sticky.
2285
2286 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
2287
2288 * xterm.h: Declare x_set_sticky.
2289
2290 * xterm.c (x_set_sticky): New function.
2291
69b16610
JD
2292 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
2293 (xg_tool_bar_menu_proxy): Attach enter/leave events to
2294 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
2295
2296 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
2297
2298 * frame.c: Qmaximized is new.
2299 (x_set_frame_parameters): Do not handle fullscreen specially.
2300 Only set width and height if explicitly set.
2301 (x_set_fullscreen): Handle Qmaximized.
2302 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
2303 (syms_of_frame): Initialize Qmaximized.
2304
1ac9108a
SM
2305 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
2306 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
2307
2308 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
2309 for Expose event. Add call to x_check_fullscreen for MapNotify event.
2310 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
2311 set gravity to NorthWestGravity when USE_GTK.
2312 (set_wm_state): New function.
31fd7c5c 2313 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
2314 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
2315 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 2316 or the case when no window manager is running. That means remove calls
3f1c6666
JD
2317 to x_real_positions and x_fullscreen_adjust.
2318
2319 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
2320 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
2321 flush_and_sync.
2322 (xg_height_changed): New function.
2323 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
2324 and gtk_window_set_policy. Set frame gravity after parsing the
2325 geometry string.
3f1c6666
JD
2326 (xg_update_frame_menubar, free_frame_menubar)
2327 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
2328 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
2329 Remove calls to xg_frame_set_char_size.
2330
fd503d99
KH
23312009-07-01 Kenichi Handa <handa@m17n.org>
2332
2333 * keyboard.c (decode_keyboard_code): New function.
2334 (tty_read_avail_input): Decode the input bytes if necessary.
2335
1ac9108a
SM
2336 * coding.c (setup_coding_system):
2337 Initialize coding->carryover_bytes to 0.
fd503d99
KH
2338 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
2339 use Qno_conversion.
2340
24ed93fb
YM
23412009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2342
2343 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
2344
99061dfc
CY
23452009-06-30 Chong Yidong <cyd@stupidchicken.com>
2346
1ac9108a 2347 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 2348
ff90fbde
JR
23492009-06-30 Jason Rumney <jasonr@gnu.org>
2350
2351 * w32term.c (w32_initialize): Use GetModuleHandle for library that
2352 is already loaded.
2353 Set user model ID if supported (bug#1849).
2354
5f445726
JM
23552009-06-29 Jim Meyering <meyering@redhat.com>
2356
2357 Remove useless if-before-xfree test.
2358 * nsfont.m (nsfont_close): Remove useless test.
2359 * term.c (delete_tty): Likewise.
2360 * w32.c (system_process_attributes): Likewise.
2361 * w32font.c (w32font_close): Likewise.
2362 * xfaces.c (x_free_gc): Likewise.
2363 * xselect.c (buffer): Likewise.
2364
b9607587
AS
23652009-06-28 Andreas Schwab <schwab@linux-m68k.org>
2366
2367 * process.c (send_process): Keep decoded string in a local
2368 variable and protect it from GC. (Bug#3521)
2369
89ba96f4
EZ
23702009-06-28 Eli Zaretskii <eliz@gnu.org>
2371
2372 * term.c (create_tty_output) [MSDOS]: #ifdef away.
2373 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
2374
098a1589
CY
23752009-06-28 Chong Yidong <cyd@stupidchicken.com>
2376
485422be
CY
2377 * xdisp.c (start_display, handle_face_prop)
2378 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
2379 (redisplay_window, try_window_id, produce_image_glyph):
2380 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 2381
098a1589
CY
2382 * xterm.c (x_update_window_begin, x_new_focus_frame)
2383 (x_scroll_bar_handle_click, handle_one_xevent)
2384 (handle_one_xevent, XTread_socket, x_focus_on_frame)
2385 (x_make_frame_visible, x_make_frame_invisible)
2386 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
2387 code chunks that are now obsolete.
2388
78c38319
MA
23892009-06-28 Michael Albinus <michael.albinus@gmx.de>
2390
2391 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
2392 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
2393 for hours, when optimzation is enabled.
2394 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
2395 (xd_read_message): Make them static.
2396
4189ed40
CY
23972009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
2398
2399 * term.c (turn_on_face): Allow simultaneously bold and dim
2400 terminal faces (Bug#3530).
2401
cd9b5e16
CY
24022009-06-27 Chong Yidong <cyd@stupidchicken.com>
2403
4e23bedb
CY
2404 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
2405
cd9b5e16
CY
2406 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
2407 truncation glyphs (Bug#3686).
2408
07cc3c35
GM
24092009-06-27 Glenn Morris <rgm@gnu.org>
2410
2411 * m/pmax.h: Restore file, with only netbsd portions.
2412
31fd7c5c 24132009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 2414
cd9b5e16 2415 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 2416
42d4a64f
KH
24172009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
2418
2419 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
2420 the arg FORCE_SYMBOL.
2421
930fe55b 24222009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
2423
2424 * fontset.c (fontset_find_font): When a usable rfont_def is found
2425 in a fallback font-group, make it the first element of the group.
2426
57ebc3fd
CY
24272009-06-24 Chong Yidong <cyd@stupidchicken.com>
2428
2429 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
2430
f084f942
KH
24312009-06-24 Kenichi Handa <handa@m17n.org>
2432
2433 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
2434 set for C.
2435 (fontset_font): Record the availability of a font for C both in
2436 the realized fontsets of the current one and the default one.
2437
2f686c87
DN
24382009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
2439
2440 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
2441 conditional, it is always defined on AIX.
2442
666e158e
MB
24432009-06-23 Miles Bader <miles@gnu.org>
2444
2445 * window.c (Vrecenter_redisplay): New variable.
2446 (syms_of_window): Initialize it.
2447 (Qtty): New extern declaration.
2448 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
2449
c6da7cd2
JM
24502009-06-23 Jim Meyering <meyering@redhat.com>
2451
1ac9108a
SM
2452 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
2453 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 2454 pointer dereferences are guaranteed to be valid.
c6da7cd2 2455
678dca3d
KH
24562009-06-23 Kenichi Handa <handa@m17n.org>
2457
74d75424
KH
2458 * emacs.c (main): Call init_font ().
2459
2460 * font.h (Vfont_log): Extern it.
2461 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
2462
2463 * font.c (font_sort_entities, font_list_entities)
2464 (font_matching_entity, font_open_entity)
2465 (font_close_object): Change font_add_log to FONT_ADD_LOG.
2466 (Vfont_log): Delete static.
2467 (font_log_env_checked): Delete this variable.
2468 (font_add_log): Don't check font_log_env_checked.
2469 (font_deferred_log): Check Vfont_log.
2470 (init_font): New function.
2471
678dca3d
KH
2472 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
2473
2474 * w32font.c: Change font_add_log to FONT_ADD_LOG.
2475
2476 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
2477
2478 * xfont.c: Change font_add_log to FONT_ADD_LOG.
2479
2480 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
2481 (face_for_char): Don't call font_deferred_log here.
2482 (font_for_char): Likewise.
2483
8a668709
CY
24842009-06-22 Chong Yidong <cyd@stupidchicken.com>
2485
9a01ee33
CY
2486 * w32term.c (x_draw_glyph_string): Use the glyph string's width
2487 rather than its background_width for drawing the overline and
2488 underline (Bug#489).
2489
2490 * xterm.c (x_draw_glyph_string): Use the glyph string's width
2491 rather than its background_width for drawing the overline and
2492 underline (Bug#489).
ec7c9926
CY
2493 (xg_default_icon_file): New variable.
2494 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
2495 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 2496
8a668709
CY
2497 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
2498 (load_overlay_strings): Remove externs.
2499 (fast_find_position): Function deleted.
2500 (mouse_face_from_buffer_pos): New function, based on
2501 fast_find_position. Correctly handle before-strings,
2502 display-strings, and after-strings (Bug#1220).
2503 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
2504
4d4c02d8
CY
25052009-06-21 Chong Yidong <cyd@stupidchicken.com>
2506
1ac9108a 2507 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
2508 (move_it_in_display_line_to, move_it_in_display_line_to)
2509 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
2510
70243478
CY
25112009-06-21 Chong Yidong <cyd@stupidchicken.com>
2512
2513 * Branch for 23.1.
2514
13087e59
JR
25152009-06-21 Jason Rumney <jasonr@gnu.org>
2516
2517 * w32term.c (keyboard_codepage): New static variable.
2518 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
2519 (w32_read_socket) [WM_CHAR]: Use it to decode character
2520 input (bug#3237).
2521 (w32_initialize): Initialize it.
2522 (codepage_for_locale): New function.
2523
4735b74e
KR
25242009-06-20 Ken Raeburn <raeburn@raeburn.org>
2525
2526 * process.c (status_message): Pass Faset index argument as a lisp
2527 object, so as to work with USE_LISP_UNION_TYPE.
2528
0e727afa
YM
25292009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2530
2531 * coding.c (Ffind_coding_systems_region_internal):
2532 Cache checked characters.
2533
cf299835
KH
25342009-06-18 Kenichi Handa <handa@m17n.org>
2535
1ac9108a 2536 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 2537
90f20d94
AS
25382009-06-18 Andreas Schwab <aschwab@redhat.com>
2539
2540 * xdisp.c (redisplay_internal): Check that the frame is still
2541 live after redisplay of its windows.
2542 (redisplay_windows): Check that the window is still live.
2543
7f1faf1c
KH
25442009-06-17 Andreas Schwab <schwab@linux-m68k.org>
2545
2546 * coding.c (detect_coding_utf_16): Fix previous change.
2547
cc13543e
KH
25482009-06-16 Kenichi Handa <handa@m17n.org>
2549
2550 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
2551 UTF-16 by checking the dispersion of Eth and Oth bytes.
2552
977b85f4
AS
25532009-06-15 Andreas Schwab <schwab@linux-m68k.org>
2554
2555 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
2556
66bd43d1
KH
25572009-06-15 Kenichi Handa <handa@m17n.org>
2558
2559 * process.c (status_message): Fix previous change. Be sure to
2560 decode a localized string.
2561
cb5ca9c5
YM
25622009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2563
2564 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
2565 add comment explaining why.
2566
ec7709ba 25672009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 2568
ec7709ba 2569 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 2570
4b7f335c
AR
25712009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
2572
2573 * nsfont.m (ns_attribute_value): Remove.
2574 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
2575 (ns_has_attribute): Shrink the normal range.
2576 (ns_findfonts): Don't worry about requested spec in determining
2577 need for synthItal.
e41820ee 2578 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 2579
73b26103
SZ
25802009-06-14 Seiji Zenitani <zenitani@mac.com>
2581
2582 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
2583
5753e4da
KH
25842009-06-11 Kenichi Handa <handa@m17n.org>
2585
2586 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2587 overhang for the static composition case.
2588
3561b671
KH
25892009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2590
5753e4da
KH
2591 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
2592 overhang for the automatic composition case.
2593
3561b671
KH
2594 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
2595 composition case.
2596
852bbd41
CY
25972009-06-10 Chong Yidong <cyd@stupidchicken.com>
2598
2599 * xdisp.c (get_next_display_element): When handling wrap-prefix
2600 and line-prefix, treat \n as a control character (bug#3502).
2601
9903d1e6
KH
26022009-06-10 Kenichi Handa <handa@m17n.org>
2603
2604 * font.c (font_parse_family_registry): Fix for one-char foundry.
2605 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
2606
0bcbaaaa
CY
26072009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
2608
2609 * process.c (status_message): Fix handling of multibyte signal
2610 string (Bug#3499).
2611
40aa3f13
JM
26122009-06-09 Jim Meyering <meyering@redhat.com>
2613
1f80c7e2
CY
2614 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
2615 color name is missing.
40aa3f13 2616
72d51285
KH
26172009-06-09 Kenichi Handa <handa@m17n.org>
2618
2619 * charset.c (Fmap_charset_chars): In docstring, state clearly that
2620 FROM-CODE and TO-CODE are codepoints of CHARSET.
2621
c1d04d84
AR
26222009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2623
2624 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
2625
26262009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
2627
2628 Changes to support :script/:lang/:otf in NS font driver.
2629 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
2630 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
2631 indicate not part of font driver interface, and change callers.
2632 (ns_get_family): Remove pointless null check.
2633 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
2634 ns_spec_to_descriptor, ns_descriptor_to_entity.
2635 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
2636 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
2637 (ns_spec_to_descriptor, ns_descriptor_to_entity)
2638 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
2639 (ns_get_req_script, ns_accumulate_script_ranges)
2640 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
2641 New functions.
2642 (nsfont_list, nsfont_match): Use ns_findfonts.
2643 (nsfont_open): Use font descriptor instead of traits.
2644 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
2645 (dump_glyphstring): Rename to ns_dump_glyphstring.
2646
c7eb9816
AR
2647 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
2648
c1d04d84
AR
2649 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
2650
2651 * fontset.c (fontset_from_font): Remove NS-specific code.
2652
ec7709ba 26532009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
2654
2655 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
2656 nonactive windows.
2657
31fd7c5c 26582009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 2659
1ac9108a 2660 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 2661
68852c13 26622009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
2663
2664 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
2665
6756cd1d
CY
26662009-06-07 Chong Yidong <cyd@stupidchicken.com>
2667
2668 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
2669 account for the overflowing of newlines into the last glyph on the
2670 display line (Bug#3482).
2671
28bf482a
DR
26722009-06-05 David Reitter <david.reitter@gmail.com>
2673
ec7709ba
JB
2674 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
2675 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
2676 Fns_selection_exists_p, Fns_selection_owner_p.
2677
fdb55376
JR
26782009-06-03 Jason Rumney <jasonr@gnu.org>
2679
2680 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
2681 available. (Bug#3379)
2682
05129fbe
KH
26832009-05-29 Kenichi Handa <handa@m17n.org>
2684
1ac9108a
SM
2685 * coding.c (get_translation_table):
2686 Check Venable_character_translation.
05129fbe 2687
ec7709ba 26882009-05-26 David Reitter <david.reitter@gmail.com>
15891144 2689
ec7709ba
JB
2690 * nsterm.m (ns_raise_frame): Only raise frame if visible.
2691 (x_make_frame_visible): Move frame to front rather than calling
15891144 2692 ns_raise_frame().
ec7709ba 2693 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 2694 isn't key window.
ec7709ba 2695 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
2696 drawRect may be called by NSView even if the frame is hidden.
2697
ec7709ba
JB
2698 * nsfns.m (Fx_create_frame): Follow other ports in
2699 determining visibility; default to t. Ensure async_visible is set.
15891144 2700
21f73755
EZ
27012009-05-23 Eli Zaretskii <eliz@gnu.org>
2702
2703 * dired.c (Ffile_attributes): Doc fix.
2704
34001e41
CY
27052009-05-22 Chong Yidong <cyd@stupidchicken.com>
2706
2707 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
2708
46306a17
SM
27092009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
2710
2711 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
2712 and xfont_scratch_props.
2713 (syms_of_xfont): Do it here instead.
2714 (xfont_find_ccl_program): Delete, unused.
2715 (xfont_open): Delete unused var `i'.
2716
ef6e0694
KH
27172009-05-21 Kenichi Handa <handa@m17n.org>
2718
2719 * fontset.c (Qlatin): Don't make it static.
2720
46306a17
SM
2721 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
2722 New functions.
ef6e0694
KH
2723 (xfont_scripts_cache, xfont_scratch_props): New variables.
2724 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
2725 (xfont_list_pattern): Argument changed. Callers changed.
2726 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
2727 (xfont_list): Don't reject a font spec with :script property.
2728 (xfont_has_char): Fix setting of encoding.
2729 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
2730 xfont_scratch_props.
2731
27322009-05-19 Kenichi Handa <handa@m17n.org>
2733
46306a17 2734 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
2735 Callers changed.
2736
27372009-05-18 Kenichi Handa <handa@m17n.org>
2738
2739 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
2740
ac71ced7
SM
27412009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
2742
2743 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
2744 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
2745
1c6d1051
YM
27462009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2747
2748 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
2749 (x_delete_terminal): Dissociate resource database from display and
2750 then call XrmDestroyDatabase before closing display.
2751
9b9b779c
AR
27522009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
2753
2754 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
2755 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
2756 whether selected frame is viable before raising it (based on patch
2757 by David Reitter), and improve commentary.
2758 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 2759
cccd42d5
KH
27602009-05-15 Kenichi Handa <handa@m17n.org>
2761
2762 * font.c (Ffont_spec): Check arguments.
2763
337fbd17
CY
27642009-05-14 Chong Yidong <cyd@stupidchicken.com>
2765
2766 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
2767 weight when testing attributes (Bug#3282).
2768
47a6002f
JD
27692009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2770
2771 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
2772 what we expect to get in the next ConfigureNotify event.
2773
9cb363db
YM
2774 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
2775 before Xft one (Bug#1696).
2776
b9126609
CY
27772009-05-07 David Reitter <david.reitter@gmail.com>
2778
2779 * nsfns.m (Fx_display_planes): Compute bitplanes using
2780 NSBitsPerPixelFromDepth (Bug#3207).
2781
27a69fd9
CY
27822009-05-10 Chong Yidong <cyd@stupidchicken.com>
2783
2784 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
2785
00f37552
TTN
27862009-05-10 Ulrich Mueller <ulm@gentoo.org>
2787
2788 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
2789
2d82a920
DR
27902009-05-07 David Reitter <david.reitter@gmail.com>
2791
ec7709ba
JB
2792 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
2793 Respect mouse face background.
2d82a920 2794
46b0d52d
DR
27952009-05-07 David Reitter <david.reitter@gmail.com>
2796
ec7709ba
JB
2797 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
2798 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
2799 in ns_update_begin and ns_update_end.
2800
ce1b23bb
SM
28012009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2802
5996e1b7
SM
2803 * nsfns.m (ns_get_screen): Rewrite.
2804 Don't presume selected-frame is of type `ns'.
2805
ba98e3a0
SM
2806 * font.c (font_update_drivers): Sanity fallback to avoid disabling
2807 all drivers.
2808
ce1b23bb
SM
2809 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
2810
bcda200f
YM
28112009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2812
2813 * keyboard.h (add_user_signal): Fix typo in extern.
2814
2815 * lisp.h (add_user_signal): Remove extern.
2816
2817 * unexelf.c (unexec): Consider a section to precede the .bss section
2818 if its addresses overlap that of .bss.
2819 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
2820 instead of dumping process.
2821
864660a2
SM
28222009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
2823
2824 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
2825
50da4e56
SM
28262009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
2827
2828 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
2829
51520a1a
DN
28302009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
2831
2832 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
2833 any statements.
2834
409ea3a1
AS
28352009-05-02 Andreas Schwab <schwab@linux-m68k.org>
2836
59c4c60f
AS
2837 * process.c (read_process_output): Make sure the current buffer is
2838 always restored.
2839
409ea3a1
AS
2840 * coding.c (record_conversion_result): Don't modify
2841 Vlast_code_conversion_error for successful result.
2842 (alloc_destination): Don't clobber conversion result. (Bug#1650)
2843
56f00ed2
KH
28442009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
2845
2846 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 2847 (load_charset_map): Remove unnecessary code.
56f00ed2 2848
4491c9d2
DR
28492009-04-30 David Reitter <david.reitter@gmail.com>
2850
35f5b128 2851 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
2852 through f24.
2853
6970f632
CY
28542009-04-30 Chong Yidong <cyd@stupidchicken.com>
2855
2856 * xfaces.c (face_at_buffer_position): New arg base_face_id.
2857
2858 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
2859 face_at_buffer_position.
2860 (face_before_or_after_it_pos, get_next_display_element)
2861 (note_mouse_highlight): Update face_at_buffer_position call.
2862
2863 * term.c (term_mouse_highlight):
2864 * msdos.c (IT_note_mouse_highlight):
2865 * fontset.c (Finternal_char_font):
35f5b128 2866 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
2867
2868 * dispextern.h (face_at_buffer_position): Update prototype.
2869
0c616f63
KH
28702009-04-30 Kenichi Handa <handa@m17n.org>
2871
35f5b128 2872 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 2873
ad3aaf33
AS
28742009-04-29 Andreas Schwab <schwab@linux-m68k.org>
2875
2876 * callproc.c (Fcall_process): Fix GC protection. Make sure
2877 current buffer is always restored.
2878
c3c963a0
YM
28792009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2880
2881 * atimer.c (init_atimer): Also clear stopped_atimers.
2882
2883 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
2884
7e3386cb
YM
2885 * process.c (create_process): Clean up merger residues of
2886 2008-07-17 change.
2887
91f68422
CY
28882009-04-29 Ulrich Mueller <ulm@gentoo.org>
2889
2890 * lread.c (Vread_circle): New variable.
2891 (read1): Disable recursive read if Vread_circle is nil.
2892
24b34550
KH
28932009-04-29 Kenichi Handa <handa@m17n.org>
2894
2895 * fontset.h (set_default_ascii_font): Delete extern.
2896
2897 * fontset.c (set_default_ascii_font): Delete this unused function.
2898
2899 * frame.c (x_set_font): When ARG is a font-object, check if the
2900 font-object matches with the ASCII font-spec of the frame's
9c358bda 2901 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 2902
77bf07e1
AS
29032009-04-28 Andreas Schwab <schwab@linux-m68k.org>
2904
2905 * fns.c (Flocale_info): Protect vector from GC during decoding.
2906
2907 * process.c (Fstart_process): Protect argv strings from GC during
2908 encoding.
2909
2c55aacf
AS
29102009-04-27 Andreas Schwab <schwab@linux-m68k.org>
2911
2912 * sysdep.c: Include <ctype.h>.
2913
b892d3c9
DR
29142009-04-27 David Reitter <david.reitter@gmail.com>
2915
35f5b128 2916 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
2917 Remove commented-out code.
2918
9d0644c4
JB
29192009-04-26 Johan Bockgård <bojohan@gnu.org>
2920
2921 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2922
b7053016
JR
29232009-04-25 Jason Rumney <jasonr@gnu.org>
2924
2925 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
2926
4e8231f3
YM
29272009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2928
2929 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
2930 Swap bytes in short integer if fringe bitmap width > 8.
2931
493dcf2c
KH
29322009-04-23 Kenichi Handa <handa@m17n.org>
2933
2934 * xfaces.c (Fx_list_fonts): If a font size is specified in
2935 PATTERN, set it in returned scalable fonts.
2936
401e9e57
CY
29372009-04-22 Chong Yidong <cyd@stupidchicken.com>
2938
708e05dc
CY
2939 * keyboard.c (Fset_input_meta_mode): Doc fix.
2940
2941 * dispnew.c (Fsend_string_to_terminal): Doc fix.
2942
1ac9108a 2943 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
2944
2945 * coding.c (Fterminal_coding_system): Doc fix.
2946
2947 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
2948 (Fx_display_pixel_height, Fx_display_planes)
2949 (Fx_display_color_cells, Fx_server_max_request_size)
2950 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2951 (Fx_display_mm_height, Fx_display_mm_width)
2952 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
2953 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
2954 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
2955 (check_x_display_info): Handle terminal objects instead of
2956 terminal ids.
2957
401e9e57
CY
2958 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
2959 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
2960 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
2961 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 2962
df80c7f0
KH
29632009-04-21 Kenichi Handa <handa@m17n.org>
2964
5a8f12af 2965 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 2966 (font_score): Check AVGWIDTH too.
908567ef 2967
df80c7f0
KH
2968 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
2969 worst case.
1ac9108a
SM
2970 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
2971 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 2972
705af33f
JR
29732009-04-19 Jason Rumney <jasonr@gnu.org>
2974
2975 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 2976 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
2977
2978 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
2979 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
2980 get_phys_cursor_geometry.
2981
b71ac3dd 2982 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
2983 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
2984 using get_phys_cursor_geometry.
2985
2986 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
2987 correctly calculated.
2988
dc2933eb
JD
29892009-04-19 Jan Djärv <jan.h.d@swipnet.se>
2990
1ac9108a
SM
2991 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
2992 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
2993 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
2994 is deprecated.
2995
973e7849
AS
29962009-04-18 Andreas Schwab <schwab@linux-m68k.org>
2997
2998 * font.c (font_put_frame_data): Use xfree instead of free.
2999
314d66f4
JB
30002009-04-17 Juanma Barranquero <lekktu@gmail.com>
3001
3002 * w32font.c (Qja, Qko): Remove declarations.
3003 (syms_of_w32font): Don't DEFSYM them.
3004
cf702558
CY
30052009-04-17 Chong Yidong <cyd@stupidchicken.com>
3006
3007 * font.c (Qja, Qko): Move definitions here from ftfont.c.
3008
3009 * font.h (Qja, Qko): Extern them.
3010
3011 * ftfont.c (Qja, Qko): Remove declarations.
3012
3013 * xfont.c (Qja, Qko): Remove declarations.
3014
b50504f5
KH
30152009-04-17 Kenichi Handa <handa@m17n.org>
3016
bde25748
KH
3017 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
3018 string from a vector to handle Latin-1 characters correctly.
3019
b50504f5
KH
3020 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
3021 entity even if the cache hits.
3022
f4646fff
AS
30232009-04-16 Andreas Schwab <schwab@linux-m68k.org>
3024
3025 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 3026 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 3027
e7deaab0
AS
3028 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
3029 * lisp.h: Adjust prototypes.
3030
0a0e7d49
CY
30312009-04-16 Chong Yidong <cyd@stupidchicken.com>
3032
3033 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
3034 change (Bug#3003).
3035
3c908a57
KH
30362009-04-16 Kenichi Handa <handa@m17n.org>
3037
1ac9108a 3038 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
3039
3040 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
3041 adstyle.
3042
3043 * ftfont.c (Qja, Qko): Don't make them static.
3044 (enum ftfont_cache_for): New enum.
3045 (fc_charset_table): Undo the previous change.
3046 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
3047 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
3048 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
3049 non-scarable font, try to get AVERAGE_WIDTH.
3050 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
3051 Change ft_face_cache from a list of a hash-table. Don't check
3052 `ja' and `ko' adstyle here.
3053 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
3054 FTFONT_CACHE_FOR_CHARET.
3055 (ftfont_get_charset): Undo the previous change.
1ac9108a 3056 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
3057 (ftfont_close): Likewise.
3058 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
3059
3060 * font.c (font_sort_entites): Change the meaning of the arg
3061 BEST-ONLY. Don't optimize for VEC of lenght 1.
3062 (font_select_entity): Just return the value of font_sort_entites.
3063
3064 * xfaces.c (merge_face_vectors): Reflect font properties in
3065 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
3066 font_clear_prop if a face attribute doesn't change.
3067
3c908a57
KH
3068 * charset.h (charset_ksc5601): Extern it.
3069
3070 * charset.c (charset_ksc5601): New variable.
3071 (Fdefine_charset_internal): Set charset_ksc5601.
3072 (init_charset_once): Initialize charset_ksc5601 to -1.
3073
d65859c3
DN
30742009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
3075
3076 * fileio.c (history_delete_duplicates): Remove unused declaration.
3077
3078 * callint.c (history_delete_duplicates): New declaration.
3079 (Fcall_interactively): Remove command history duplicates when
3080 history_delete_duplicates is true.
3081
3ba010e5
EZ
30822009-04-14 Eli Zaretskii <eliz@gnu.org>
3083
3084 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
3085
06f19b91
KH
30862009-04-14 Kenichi Handa <handa@m17n.org>
3087
3088 * font.c (Ffont_info): Fix docstring. Fix the second element of
3089 the returned value (bug#2949).
3090
2cce8bfc
CY
30912009-04-14 Chong Yidong <cyd@stupidchicken.com>
3092
3093 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
3094
d156542d
KH
30952009-04-14 Kenichi Handa <handa@m17n.org>
3096
3097 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
3098 encoding charset is ascii_compatible.
3099
3100 * charset.c (Fdefine_charset_internal): Make charset
3101 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
3102 code_offset is 0, and covers all ASCII characters.
3103
86fa089e
SM
31042009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
3105
3106 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
3107 (ns_string_to_pasteboard_internal):
3108 * nsmenu.m (process_dialog):
3109 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
3110 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
3111 * lisp.h (Fx_load_color_file): Declare.
3112
a8a3728b
KH
31132009-04-13 Kenichi Handa <handa@m17n.org>
3114
1ac9108a 3115 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
3116 (font_select_entity): Suppress the code to optimize for the same
3117 kind of fonts.
3118 (font_load_for_lface): Get a font that supports at least ASCII
3119 characters.
3120
3121 * ftfont.c (Qja, Qko): New variables.
3122 (fc_charset_table): Delete uniquifier data for iso8859-1.
3123 (ftfont_get_latin1_charset): New function.
3124 (get_adstyle_property): New function.
3125 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
3126 bitmap fonts.
3127 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
3128 Delete iso-8859-1 range from the charset of fonts whose adstyle is
3129 `ko' or `ja'.
3130 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 3131 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
3132 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
3133 property.
3134 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
3135 (syms_of_ftfont): DEFSYM Qja and Qko.
3136
483670b5
KH
31372009-04-09 Kenichi Handa <handa@m17n.org>
3138
12b55765
KH
3139 * charset.c (map_charset_chars): For a charset of `superset'
3140 method, fix calculation of code range.
3141
483670b5
KH
3142 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
3143 from the list of extra properties.
3144 (font_clear_prop): Be sure to delete `:name' font property.
3145
57d3b93b
KH
31462009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3147
b4b2c2ca
YM
3148 * dispnew.c (redraw_overlapping_rows): Fix detection of
3149 overlapping for topmost and bottommost rows.
3150
1ac9108a 3151 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 3152
472c3609
JR
31532009-04-06 Jason Rumney <jasonr@gnu.org>
3154
3155 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
3156
ab193662
KH
31572009-04-06 Kenichi Handa <handa@m17n.org>
3158
3159 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
3160
3161 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
3162
0c26f026
KH
31632009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3164
3165 * ftfont.c (ftfont_open): Fix checking of the return value of
3166 FT_Load_Char. Fix setting font->underline_thickness.
3167
e173bbce
CY
31682009-04-04 Chong Yidong <cyd@stupidchicken.com>
3169
3170 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
3171 (Fterminal_parameters, Fterminal_parameter)
3172 (Fset_terminal_parameter): In doc string, refer to terminal
3173 objects rather than terminal ids.
3174
693a2698
EZ
31752009-04-04 Eli Zaretskii <eliz@gnu.org>
3176
3177 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
3178 ret_lim_data. (Bug#2867)
3179
d5221487
CY
31802009-04-03 Chong Yidong <cyd@stupidchicken.com>
3181
3182 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
3183 so they don't get wider than the window, matching 2006-01-23
3184 change to the partner function in xdisp.c (Bug#2800).
3185
223509a3
KH
31862009-04-03 Kenichi Handa <handa@m17n.org>
3187
3188 * print.c (print_object): Make each lowest sub_char_table start a
3189 new line (Bug#2866).
3190
74fcd0b1
KH
31912009-04-02 Kenichi Handa <handa@m17n.org>
3192
3193 * fontset.c (fontset_font): Record no-font when a fontset
3194 explicitly tells not to try another font-specs.
3195
c542407d
SM
31962009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
3197
3198 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
3199
e3869731
KH
32002009-03-30 Kenichi Handa <handa@m17n.org>
3201
d8d2f142
KH
3202 * fontset.c (fontset_from_font): Specify only registry in a
3203 font-spec for all characters supported by that registry.
3204
e3869731
KH
3205 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
3206 even if HAVE_M17N_FLT is not defined.
3207
5da5f805
CY
32082009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
3209
3210 * ftfont.c: Conditionalize prototyping and use of
3211 ftfont_variation_glyphs.
3212
ab226c50
SM
32132009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3214
9628fed7
SM
3215 * frame.c (delete_frame): Work around compiler bug.
3216
3217 * editfns.c (general_insert_function): Adjust to insdel.c changes.
3218 * insdel.c (prepare_to_modify_buffer, signal_before_change):
3219 Some more EMACS_INT.
3220 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
3221
3222 * xdisp.c (dump_glyph): Fix typo.
3223
ae19ba7c
SM
3224 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
3225 (adjust_markers_gap_motion, adjust_markers_for_delete)
3226 (adjust_markers_for_insert, adjust_point)
3227 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
3228 (make_gap, copy_text, count_size_as_multibyte, insert)
3229 (insert_and_inherit, insert_before_markers)
3230 (insert_before_markers_and_inherit, insert_1)
3231 (count_combining_before, count_combining_after, insert_1_both)
3232 (insert_from_string, insert_from_string_before_markers)
3233 (insert_from_string_1, insert_from_gap, insert_from_buffer)
3234 (insert_from_buffer_1, adjust_after_replace)
3235 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
3236 (replace_range_2, del_range, del_range_1, del_range_byte)
3237 (del_range_both, del_range_2, modify_region)
3238 (prepare_to_modify_buffer, signal_before_change)
3239 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
3240 for buffer positions and sizes.
3241 * lisp.h: Adjust prototypes accordingly.
3242
3243 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
3244 (non_regular_inserted, non_regular_nbytes, read_non_regular)
3245 (Finsert_file_contents): Use EMACS_INT for buffer positions.
3246
ab226c50
SM
3247 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
3248
46dfb8fb
JD
32492009-03-27 Jan Djärv <jan.h.d@swipnet.se>
3250
3251 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
3252 lines and columns so we keep the same pixel height and width.
3253
3254 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
3255 the property _NET_WM_STATE has changed.
46dfb8fb
JD
3256 (x_handle_net_wm_state): New function to update frame parameter
3257 fullscreen.
3258 (x_term_init): Initialize atoms for _NET_WM_STATE.
3259
3260 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
3261
d347e494
SM
32622009-03-27 Kevin Ryde <user42@zip.com.au>
3263
3264 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
3265 Gpm_GetEvent as an error that justifies closing the filedescriptor.
3266 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
3267 (Fgpm_mouse_stop): Pass that new parameter.
3268 * termhooks.h (close_gpm): Adjust prototype.
3269
84db11d6
SM
32702009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
3271
c95a5008
SM
3272 * lisp.h (Fx_focus_frame): Declare.
3273
84db11d6
SM
3274 * callint.c (Fcall_interactively): For '^' just delegate the work to
3275 handle-shift-selection.
3276 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
3277
0a1958d6
CY
32782009-03-24 Chong Yidong <cyd@stupidchicken.com>
3279
0bfdff23
CY
3280 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
3281
0a1958d6
CY
3282 * data.c (Qinteractive_form): New variable.
3283 (Finteractive_form): Use it.
3284
3285 * eval.c (Fcommandp): Use Qinteractive_form.
3286
58aec0d6
JR
32872009-03-24 Jason Rumney <jasonr@gnu.org>
3288
3289 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
3290 Calculate total size precisely. Decode environment variables
3291 before substituting. (Bug#38)
3292
553dd618
KH
32932009-03-24 Kenichi Handa <handa@m17n.org>
3294
3295 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 3296 encoding (Bug#2722).
553dd618 3297
c39ea606
JD
32982009-03-23 Jan Djärv <jan.h.d@swipnet.se>
3299
3300 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
3301 that gdpy is set.
3302
bc9b2b5e
AM
33032009-03-22 Alan Mackenzie <acm@muc.de>
3304
3305 * callint.c (Finteractive): Clarify the doc string - even
3306 promptless elements need \n separators.
3307
9f995a76
JR
33082009-03-22 Jason Rumney <jasonr@gnu.org>
3309
3310 * w32term.c (syms_of_w32term): Doc fix for
3311 x-use-underline-position-properties.
3312
22749e9a
EZ
33132009-03-21 Eli Zaretskii <eliz@gnu.org>
3314
3315 * w32.c (getpwuid): Change argument type to unsigned.
3316 (struct w32_id): Change type of `rid' member to unsigned.
3317 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
3318 argument ID to unsigned. All callers changed.
3319 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
3320
e00553bf
EZ
33212009-03-20 Eli Zaretskii <eliz@gnu.org>
3322
3323 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
3324 negative, produce a float value.
3325
3326 * dired.c (make_uid, make_gid): New functions.
3327 (Ffile_attributes): Use them to avoid negative UID and GID.
3328
f761d6b6
JB
33292009-03-20 Juanma Barranquero <lekktu@gmail.com>
3330
3331 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
3332 (syms_of_keyboard) <command-hook-internal, input-method-function>:
3333 Fix typos in docstrings.
3334
d507f8d7
KH
33352009-03-19 Kenichi Handa <handa@m17n.org>
3336
3337 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
3338 changed, use font_load_for_lface to get a new font object.
3339 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
3340
3341 * frame.c (x_set_font): Handle the case that ARG is a cons.
3342
c68845e0
GM
33432009-03-19 Glenn Morris <rgm@gnu.org>
3344
3345 * fileio.c (Fsubstitute_in_file_name): Doc fix.
3346
bfa49dd1
CY
33472009-03-19 Chong Yidong <cyd@stupidchicken.com>
3348
3349 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
3350
8458d4c1
KH
33512009-03-19 Kenichi Handa <handa@m17n.org>
3352
3353 * charset.c (load_charset_map_from_file): When a mapfile can't be
3354 loaded, signal an error.
3355
78e7d1fe
EZ
33562009-03-18 Eli Zaretskii <eliz@gnu.org>
3357
3358 * dired.c (Ffile_attributes): Make sure UID and GID are always
3359 positive, even if the value is too large for a positive EMACS_INT.
3360 Doc fix.
3361
3362 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
3363
5da9fdfa
YM
33642009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3365
3366 * xmenu.c (xdialog_show): Move Fredisplay call ...
3367 (Fx_popup_dialog): ... here.
3368
7519c40d
SM
33692009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
3370
3371 * dired.c (file_name_completion): Disable the first optimization just
3372 installed, since it is not implemented correctly.
3373
2cd298e2
SM
33742009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3375
3376 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 3377 only if the entry can affect bestmatch.
2cd298e2
SM
3378 Stop the search early, as Ftry_completion already does.
3379
48d37adf
CY
33802009-03-17 Chong Yidong <cyd@stupidchicken.com>
3381
e10c9c93 3382 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 3383
9286b16a
CY
33842009-03-15 Chong Yidong <cyd@stupidchicken.com>
3385
3386 * keyboard.c (parse_menu_item): Don't display remappings as menu
3387 equivalent bindings (Bug#788).
3388
f7b146dc
JR
33892009-03-15 Jason Rumney <jasonr@gnu.org>
3390
3391 * w32term.h (WM_EMACS_PAINT): New message.
3392 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
3393 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
3394 before passing to lisp thread. (Bug#950)
3395
f761d6b6 33962009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 3397
d93f9575
CY
3398 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
3399 variable as it was never reset.
3400 (ns_term_init): Remove initialization of Lisp-settable defaults
3401 and ns_expand_space.
3402 (-setPanelFromDefaultValues): Remove ns_expand_space.
3403 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
3404 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
3405 i.e. no additional spacing, similar to Carbon port.
3406
d93f9575
CY
3407 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
3408 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 3409
305018ec
JD
34102009-03-14 Jan Djärv <jan.h.d@swipnet.se>
3411
3412 * sound.c (alsa_configure): Remove call to deprecated
3413 snd_pcm_sw_params_set_xfer_align.
3414
f761d6b6 34152009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
3416
3417 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
3418 after clicking in a detached tool bar.
3419 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
3420
46e722a9
SM
34212009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
3422
348db3dd
SM
3423 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
3424 int/Lisp_Object mixup).
46e722a9 3425
a3d16f39
KH
34262009-03-13 Kenichi Handa <handa@m17n.org>
3427
3428 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 3429 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
3430 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
3431 (set_fontset_font): Change ARG to a vector. Handle range_list in
3432 ARG correctly.
3433 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 3434 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
3435 the above change.
3436 (fontset_from_font): Fix previous change.
fe24f56a 3437 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
3438 entry. If FONTSET is the default fontset, don't set the extra
3439 slot of the returning char-table.
3440
b066e6b6
JB
34412009-03-12 Juanma Barranquero <lekktu@gmail.com>
3442
3443 * nsfns.m (Fx_close_connection): Doc fix.
3444 (Fns_do_applescript): Reflow docstring.
3445 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
3446 (Fx_display_pixel_width, Fx_display_pixel_height)
3447 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
3448 Fix typos in docstrings.
3449 (Fns_set_alpha): Fix typos in error messages.
3450
d472514e 34512009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 3452
d472514e 3453 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
3454 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
3455 were used for such events.
3456
d472514e
JB
3457 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
3458 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 3459
d472514e 3460 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
3461 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
3462
fb930676
KH
34632009-03-11 Kenichi Handa <handa@m17n.org>
3464
ff85581a
KH
3465 * font.h (font_open_by_spec): Extern it.
3466
c50b7e98
KH
3467 * font.c (font_open_by_spec): New function.
3468 (font_open_by_name): Use font_open_by_spec.
3469
fb930676
KH
3470 * frame.c (x_set_font): When ARG is a font-object, don't alter the
3471 fontset of the frame.
3472
3473 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
3474 modify the default font of frames that use this fontset.
3475 (num_auto_fontsets): New variable.
3476 (fontset_from_font): Use num_auto_fontsets to decide a fontset
3477 name. Be sure to set FONTSET_ASCII to the correct font name.
3478 (update_auto_fontset_alist): New function.
3479
df4e8455
JB
34802009-03-11 Juanma Barranquero <lekktu@gmail.com>
3481
3482 * makefile.w32-in: Update dependencies.
3483
0a375797
AR
34842009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3485
3486 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
3487
61313fa3
SM
34882009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
3489
3490 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
3491
b55103fb
CY
34922009-03-10 Chong Yidong <cyd@stupidchicken.com>
3493
3494 * lread.c (Feval_buffer): Doc fix.
3495
dde2559c
KH
34962009-03-09 Kenichi Handa <handa@m17n.org>
3497
3498 * charset.c (Qfile_name_handler_alist): Extern it.
3499 (load_charset_map_from_file): Temporarily bind
3500 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
3501
df4e8455 35022009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 3503
47f588bb
GM
3504 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
3505 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 3506
4ddf94bd
AR
35072009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3508
4c9bdfc2
AR
3509 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
3510 (x_set_window_size): Change back to calculated method of setting
3511 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
3512 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
3513 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
3514
fe41ae9e
AR
3515 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
3516
4c9bdfc2
AR
3517 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
3518 accelerator in parens under GNUstep.
3519
825d0875
KH
35202009-03-06 Kenichi Handa <handa@m17n.org>
3521
3522 These changes are to detect incorrect composition sequence without
f3b3be74 3523 looking ahead the source. (Bug#2370)
825d0875
KH
3524
3525 * coding.h: Include "composite.h".
3526 (enum compisition_state): New enum.
3527 (struct compisition_status): New struct.
3528 (struct iso_2022_spec): New member cmp_status.
3529 (struct emacs_mule_spec): New struct.
3530 (struct coding_system): New members ctext_extended_segment_len and
3531 embedded_utf_8. Change the union member
3532 spec.emacs_mule_full_support to spec.emacs_mule.
3533
3534 * coding.c (CODING_ISO_CMP_STATUS): New macro.
3535 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 3536 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
3537 (ADD_COMPOSITION_DATA): New arg nbytes.
3538 (emacs_mule_char): New arg cmp_status.
3539 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
3540 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
3541 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
3542 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
3543 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
3544 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
3545 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
3546 (EMACS_MULE_COMPOSITION_END): New macro.
3547 (emacs_mule_finish_composition): New function.
3548 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
3549 (decode_coding_emacs_mule): Avoid long looking ahead while
3550 handling composition.
3551 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
3552 (ENCODE_COMPOSITION_RULE): New macro.
3553 (finish_composition): New function.
3554 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
3555 (DECODE_COMPOSITION_START): New implementation.
3556 (DECODE_COMPOSITION_END): Likewise.
3557 (STORE_COMPOSITION_RULE): New macro.
3558 (decode_coding_iso_2022): Avoid long looking ahead while handling
3559 composition, CTEXT extended segment, and embedded UTF-8.
3560 (setup_coding_system): For a coding of type iso-2022, reset
3561 CODING_ISO_EXTSEGMENT_LEN (coding) and
3562 CODING_ISO_EMBEDDED_UTF_8 (coding).
3563 (get_translation): Delete arguments last_block, from_nchars,
3564 to_nchars. Callers changed.
3565 (produce_chars): Don't modify charbuf. Adjusted for the change of
3566 get_translation.
98a326f7 3567 (produce_composition): Adjust for the new annotation sequence.
825d0875 3568 (handle_composition_annotation): Likewise.
98a326f7 3569 (consume_chars): Adjust for the change of get_translation.
825d0875 3570
ccbc4452
AR
35712009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
3572
4ddf94bd 3573 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 3574
988a7ddb
KH
35752009-03-05 Kenichi Handa <handa@m17n.org>
3576
3577 * font.c (font_select_entity): New function.
3578 (font_find_for_lface): Use font_select_entity to select a font.
3579
3580 * fontset.c (fontset_find_font): If a font found without
a8a3728b 3581 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
3582 font with C restriction.
3583
98a326f7 35842009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 3585
be1bce46 3586 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 3587
10ea2b82
JR
35882009-03-04 Jason Rumney <jasonr@gnu.org>
3589
2c93b248 3590 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 3591 characters that have already been read. (Bug#2569)
2c93b248 3592
10ea2b82
JR
3593 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
3594 Log an error message if check_image_size failed.
3595 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 3596 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 3597
71a0c011
EZ
35982009-03-02 Eli Zaretskii <eliz@gnu.org>
3599
3600 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
3601 when decoding process output.
3602
2f63bba8
RS
36032009-03-01 Richard M Stallman <rms@gnu.org>
3604
3605 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
3606
3607 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
3608
0a9564cb
EZ
36092009-02-28 Eli Zaretskii <eliz@gnu.org>
3610
3611 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
3612 (decode_coding_emacs_mule, decode_coding_iso_2022)
3613 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
3614 (decode_coding_raw_text, decode_coding_charset)
3615 (setup_coding_system, decode_eol, decode_coding, consume_chars):
3616 Honor inhibit-eol-conversion. (Bug #2186)
3617
449148b3
JR
36182009-02-28 Jason Rumney <jasonr@gnu.org>
3619
3620 * coding.c (detect_coding_charset): If not checking latin extra,
3621 fail on characters between 0x80 and 0xA0. (Bug#2354)
3622
a4aee864
EZ
36232009-02-28 Eli Zaretskii <eliz@gnu.org>
3624
3625 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 3626 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 3627
d88bee5a
GM
36282009-02-27 Glenn Morris <rgm@gnu.org>
3629
3630 * callint.c (Finteractive): Doc fix.
3631
a808f22d
KH
36322009-02-27 Kenichi Handa <handa@m17n.org>
3633
3634 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
3635
caf8d60c
CY
36362009-02-27 Chong Yidong <cyd@stupidchicken.com>
3637
3638 * font.c (font_style_to_value): Set value for unknown symbols to
3639 100 instead of 255.
b61137ea
CY
3640 (weight_table, slant_table, width_table): Treat "unspecified" as
3641 the default value.
caf8d60c 3642
1a0de25c
JB
36432009-02-26 Juanma Barranquero <lekktu@gmail.com>
3644
3645 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
3646
8fc45744
JB
36472009-02-25 Juanma Barranquero <lekktu@gmail.com>
3648
107bd7d1
JB
3649 * lread.c (Fload): Stop checking Vloads_in_progress and signal
3650 error as soon as a recursive load is detected.
8fc45744 3651
f097e223
AR
36522009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3653
3654 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
3655 before caching.
3656
8810a12f
KH
36572009-02-24 Kenichi Handa <handa@m17n.org>
3658
3659 * fontset.c (fontset_find_font): Fix the condition for checking
3660 unavailable font.
3661
2c7d1565
GM
36622009-02-24 Glenn Morris <rgm@gnu.org>
3663
3664 * xfaces.c (Finternal_set_font_selection_order): Remove leading
3665 whitespace that confuses documentation.
3666
a20878b6
MB
36672009-02-23 Miles Bader <miles@gnu.org>
3668
3669 * process.c (Flist_system_processes, Fprocess_attributes)
3670 (syms_of_process): Rename `system-process-attributes' to
3671 `process-attributes'.
3672
b3b58c01
AS
36732009-02-22 Andreas Schwab <schwab@linux-m68k.org>
3674
1b3b981b
AS
3675 * coding.h (struct coding_system): Make safe_charsets a pointer to
3676 unsigned char.
3677 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
3678 being 255.
3679 (SAFE_CHARSET_P): Likewise.
3680 (setup_iso_safe_charsets): Properly setup safe_charsets.
3681 (Fdefine_coding_system_internal): Likewise.
3682 (setup_coding_system): Likewise. Remove unneeded casts.
3683 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
3684 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
3685 unneeded casts.
3686
b3b58c01
AS
3687 * insdel.c (del_range_2): Don't modify gap contents when called
3688 from decode_coding_object. (Bug#1809)
3689
0b6f228c
CY
36902009-02-21 Chong Yidong <cyd@stupidchicken.com>
3691
3692 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
3693 Qfont_object.
3694 (Ftype_of): Recognize font objects.
3695
3696 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
3697
3698 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
3699 moved to data.c.
3700
52f8870b
AR
37012009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3702
3703 * nsterm.m (x_make_frame_invisible): Unset async_visible,
3704 async_iconified. Based on a patch by Christian Lynbech
3705 <christian.lynbech@tieto.com>.
3706 (EmacsView-windowDidMiniaturize:): Unset async_visible.
3707
7087d5e9
GM
37082009-02-20 Glenn Morris <rgm@gnu.org>
3709
3710 * syntax.c (Fskip_chars_forward): Fix doc typo.
3711
41d2ceef
CY
37122009-02-20 Chong Yidong <cyd@stupidchicken.com>
3713
3714 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
3715
1a3b7ca6
CY
37162009-02-19 Chong Yidong <cyd@stupidchicken.com>
3717
3718 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
3719
73cce38d
KH
37202009-02-19 Kenichi Handa <handa@m17n.org>
3721
3722 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 3723 Don't overflow coding->carryover. (Bug#2370)
73cce38d 3724
a51092ee
DN
37252009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
3726
3727 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
3728
c423ecca
KH
37292009-02-18 Kenichi Handa <handa@m17n.org>
3730
3731 * font.c (font_check_otf_features): Fix handling of `nil' element.
3732 (Ffont_spec): Describe :lang and :otf in the docstring.
3733
4c1958f4
AS
37342009-02-16 Andreas Schwab <schwab@suse.de>
3735
3736 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
3737 string.
3738
5704f39a
KH
37392009-02-16 Kenichi Handa <handa@m17n.org>
3740
3741 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 3742 (Bug#1723)
5704f39a 3743
8f0085aa
CY
37442009-02-14 Chong Yidong <cyd@stupidchicken.com>
3745
a057d86a 3746 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
3747
3748 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
3749 (handle_line_prefix): Suppress wrapping of wrap prefixes.
3750
aff01dd9
EZ
37512009-02-14 Eli Zaretskii <eliz@gnu.org>
3752
3753 * msdos.c (MAX_SCREEN_BUF): New macro.
3754 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
3755 Encode the entire run of glyphs sharing the same face, instead of
3756 doing that one glyph at a time (fixes a bug with displaying
3757 double-size characters).
3758
ba301db3
AR
37592009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
3760
3761 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
3762
3763 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
3764 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 3765 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
3766
3767 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 3768 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 3769
51d861de
SM
37702009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
3771
3772 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
3773 invisible areas.
3774
7fed8996
JR
37752009-02-12 Jason Rumney <jasonr@gnu.org>
3776
631ea4fb
JR
3777 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
3778 (add_font_entity_to_list): Call check_face_name even when family
3779 is unspecified.
3780
cb4a3e42
JR
3781 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3782 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 3783 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 3784
7fed8996 3785 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 3786 raster fonts. (Bug#2219)
7fed8996 3787
895416e3
KH
37882009-02-12 Kenichi Handa <handa@m17n.org>
3789
3790 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
3791 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
3792 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 3793 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3794 (find_automatic_composition): While looking forward and backward,
3795 check static composition. Fix where to stop looking forward.
3796 (composition_adjust_point): Fix checking of static composition.
3797 (Fcomposition_get_gstring): Pay attention to
1dacf998 3798 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
3799
3800 * lisp.h (fast_looking_at): Extern it.
3801
3802 * search.c (fast_looking_at): New function.
3803
51d861de 3804 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
3805 <struct glyph>.u.cmp.to.
3806 (append_composite_glyph): Likewise.
3807
51d861de 3808 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
3809 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
3810 composition.
51d861de 3811 (append_composite_glyph): Adjust for the change of
895416e3
KH
3812 <strcut glyph>.u.cmp.to.
3813
8510724d
JB
38142009-02-11 Juanma Barranquero <lekktu@gmail.com>
3815
3816 * casetab.c (init_casetab_once):
3817 * coding.c (ALLOC_CONVERSION_WORK_AREA):
3818 * font.c (font_update_lface):
3819 * fontset.c (Fnew_fontset):
3820 * ftfont.c (ftfont_drive_otf):
3821 * xfont.c (xfont_open):
3822 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
3823
294fa707
SM
38242009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
3825
3826 * fileio.c (Fwrite_region): !NILP -> CONSP.
3827
b5bfebec
AS
38282009-02-10 Andreas Schwab <schwab@suse.de>
3829
3830 * process.c (send_process): Properly relocate pointer into data
adab88bd 3831 when using encoded data. (Bug#2272)
b5bfebec 3832
cb84a2be
KH
38332009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
3834
3835 * coding.c (detect_coding_charset): Fix previous change.
3836
89e09428
JR
38372009-02-08 Jason Rumney <jasonr@gnu.org>
3838
3839 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 3840 disappeared while hourglass was displayed. (Bug #2193)
89e09428 3841
4470a277
AS
38422009-02-07 Andreas Schwab <schwab@suse.de>
3843
3844 * unexelf.c (unexec): Fix error message.
3845
3175b12a
AR
38462009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
3847
3848 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 3849 when modal window is active. (Bug #2152)
3175b12a
AR
3850 (applicationShouldTerminate:): Remove now-unneeded while loop
3851 around NSRunAlertPanel.
3852
3853 * nsmenu.m (popupSession): New file-global variable.
3854 (pop_down_menu): End the popupSession before closing dialog.
3855 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
3856 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
3857 don't query NSApp for events (just sleep instead).
3858
8434d0b8
EZ
38592009-02-07 Eli Zaretskii <eliz@gnu.org>
3860
51d861de
SM
3861 * coding.c (syms_of_coding) <translation-table-for-input>:
3862 Modify doc string to discourage use for character code unification.
8434d0b8 3863
aa82edfd
CY
38642009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3865
3866 * atimer.c (run_timers): Update pending_atimers.
3867
2d283c7c
CY
38682009-02-06 Chong Yidong <cyd@stupidchicken.com>
3869
eb306cab
CY
3870 * image.c (svg_load_image): Fix last change.
3871
2d283c7c
CY
3872 * xfns.c (Fx_create_frame): Signal an error if no font is
3873 found (Bug#2147).
3874
4d8e170e
JB
38752009-02-05 Juanma Barranquero <lekktu@gmail.com>
3876
3877 * character.c (syms_of_character) <script-representative-chars>:
3878 Fix typo in docstring.
3879
c96169a0
AR
38802009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3881
3882 * nsmenu.m (pop_down_menu): New function.
3883 (ns_popup_dialog): Call it on unwind.
3884 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
3885 call timer_check() (Bug#2154).
3886 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
3887 handling_signal is set.
3888 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
3889
31fd7c5c 3890 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
3891
3892 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
3893
3894 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
3895
51d861de
SM
3896 * keyboard.c (poll_for_input_1, handle_async_input):
3897 Set handling_signal under HAVE_NS.
c96169a0 3898
aacd8ba1
GM
38992009-02-04 Glenn Morris <rgm@gnu.org>
3900
3901 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
3902
4cb75c4b
KH
39032009-02-04 Kenichi Handa <handa@m17n.org>
3904
3905 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
3906
3907 * charset.c (Fchar_charset): New optional arg restriction.
3908
3909 * coding.h (coding_system_charset_list): Extern it.
3910
3911 * coding.c (coding_system_charset_list): New function.
3912
3913 * composite.c: Include coding.h and termhooks.h.
3914 (composition_gstring_p): Fix for the terminal case.
3915 (composition_gstring_width): Likewise.
3916 (fill_gstring_body): Likewise.
3917 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
3918 the frame.
3919 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
3920 is within a composition.
867d4bb3 3921 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
3922
3923 * term.c (encode_terminal_code): Fix handling of composition.
3924 (produce_composite_glyph): For static composition, get pixel_width
3925 from struct composition.
3926
826ba17e
AS
39272009-02-02 Andreas Schwab <schwab@suse.de>
3928
3929 * unexelf.c (unexec): Handle unaligned bss offset.
3930
8ad093db
AR
39312009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3932
3933 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
3934 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 3935
8ad093db
AR
3936 * keyboard.c (handle_interrupt): Don't call
3937 quit_throw_to_read_char() under NS.
d0a76a6e 3938
8ad093db
AR
3939 * blockinput.h: Remove NS-specific code.
3940
4d18a7a2
DN
39412009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
3942
db878925
DN
3943 * dispnew.c (window_change_signal): Don't try to get the size of a
3944 suspended tty frame.
3945 * term.c (Fresume_tty): Resize if the size has changed while the
3946 tty was suspended.
3947
4d18a7a2
DN
3948 * alloc.c (mark_stack): Properly conditionalize previous change.
3949
8984df7c
JB
39502009-01-30 Juanma Barranquero <lekktu@gmail.com>
3951
3952 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
3953 * w32term.c (w32_read_socket) [SYNC_INPUT]:
3954 Remove; this code is not used on Windows.
3955
75f4f1ac
EZ
39562009-01-30 Eli Zaretskii <eliz@gnu.org>
3957
3958 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
3959 EOLs that also has stray ^M characters.
3960
07a1e794
JB
39612009-01-30 Juanma Barranquero <lekktu@gmail.com>
3962
3963 * atimer.c (run_timers, alarm_signal_handler):
3964 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
3965 * w32inevt.c (w32_console_read_socket):
3966 * w32term.c (w32_read_socket):
3967 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
3968
a8b11cc9
CY
39692009-01-30 Chong Yidong <cyd@stupidchicken.com>
3970
3971 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
3972 Initialize it as a relative filename pattern.
3973 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
3974 (Fcall_process_region): Simplify temp file creation using
3975 temporary-file-directory.
3976
c279587b
EZ
39772009-01-29 Eli Zaretskii <eliz@gnu.org>
3978
3979 * msdos.c: Rename pending_signals to msdos_pending_signals.
3980 (sig_suspender, sigprocmask): Adjust.
3981
a8fe3242
CY
39822009-01-29 Chong Yidong <cyd@stupidchicken.com>
3983
3984 * keyboard.c (pending_signals): New var.
3985 (poll_for_input, input_available_signal, init_keyboard): Set it.
3986 (process_pending_signals): New function.
3987
3988 * lisp.h (QUIT): Check pending_signals instead of
3989 interrupt_input_pending. Use process_pending_signals.
3990
51d861de 3991 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 3992
51d861de 3993 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
3994
3995 * sysdep.c (emacs_write): Use process_pending_signals.
3996
3997 * xterm.c (XTread_socket): Update pending_signals.
3998
3999 * w32term.c (w32_read_socket): Update pending_signals.
4000
4001 * w32inevt.c (w32_console_read_socket): Update pending_signals.
4002
6570a1c4
KH
40032009-01-29 Kenichi Handa <handa@m17n.org>
4004
4005 * xftfont.c (xftfont_has_char): New function.
4006 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
4007
d72a4afa
AR
40082009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4009
4010 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
4011 under GNUstep.
4012 (ns_query_color): New declaration.
4013
4014 * nsterm.m (ns_confirm_quit): New variable.
4015 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
4016 (EmacsApp-applicationShouldTerminate:): Use it.
4017 (EmacsPrefsController): Let user set it.
4018 (ns_query_color): New function.
4019 (ns_defined_color): Use it.
4020 (ns_initialize): Drop.
4021 (ns_term_init): Add two lines from ns_initialize(), and set
4022 input_interrupt_mode to nil.
4023
4024 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 4025 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 4026
9fe78804
KH
40272009-01-28 Kenichi Handa <handa@m17n.org>
4028
4029 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
4030 (fontset_get_font_group): Remember that no font-group is specified
4031 for C.
9fe78804 4032
fa57de36
CY
40332009-01-27 Chong Yidong <cyd@stupidchicken.com>
4034
930600e9
CY
4035 * fns.c (concat): Check for string overflow (bug#1787).
4036
fa57de36
CY
4037 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
4038 Quadruple undo limits (bug#1501).
4039
7179ce7b
KH
40402009-01-27 Kenichi Handa <handa@m17n.org>
4041
4042 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
4043 directly use GT_Get_Char_index.
4044
4045 * xftfont.c (struct xftfont_info): New member `index'.
4046
4047 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 4048 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 4049
5be8fcc0
CY
40502009-01-26 Kenichi Handa <handa@m17n.org>
4051
4052 * fontset.c (fontset_find_font): Fix handling of non-cons return
4053 value of fontset_get_font_group.
4054 (fontset_font): Revert last change.
4055
19ae3e61
JR
40562009-01-26 Jason Rumney <jasonr@gnu.org>
4057
4058 * w32font.c (w32font_list_internal): Return quickly if registry is
4059 unknown. Simplify final return.
4060 (add_font_entity_to_list): Break complex logic down into more
4061 manageable chunks. Move unknown registry check to
4062 w32font_list_internal.
4063
8612b71a
AR
40642009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
4065
4066 Changes to remove Feval calls from GUI under NS.
4067
d8038940
JB
4068 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
4069 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
4070 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
4071
4072 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
4073 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
4074 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
4075 instead of NON_ASCII_KEYSTROKE_EVENT.
4076 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
4077 (EmacsApp-applicationShouldTerminate:): Query user.
4078 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
4079 instead of Feval.
4080
4081 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
4082
4083 * keyboard.c (kbd_buffer_get_event): Check for it.
4084 (keys_of_keyboard): Define lispy keys for
4085 ns-put/unput-working-text.
4086
4087 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
4088 versions.
4089 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
4090
6288ae55
CY
40912009-01-25 Chong Yidong <cyd@stupidchicken.com>
4092
4093 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 4094 setting current_buffer directly. (Bug#2044)
6288ae55 4095
289e7f8f
CY
40962009-01-24 Chong Yidong <cyd@stupidchicken.com>
4097
5ce87308 4098 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 4099 any work. (Bug#1952, bug#1990).
5ce87308 4100
64cc3cf6 4101 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 4102
b3243e6f
AR
41032009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4104
4105 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
4106 (ns_no_defaults): New declaration.
4107 (main): Use it.
e0d2e69a 4108
d900b2af 4109 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 4110
d900b2af 4111 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 4112
d900b2af
AR
4113 * nsterm.m (ns_no_defaults): New variable.
4114 (ns_initialize): Don't read defaults when ns_no_defaults.
4115 (EmacsView-readSelectionFromPasteboard:)
4116 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 4117 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
4118 (ns_dumpglyphs_stretch): New function.
4119 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 4120 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 4121
e0d2e69a
AR
4122 * nsimage.m (setPixmapData:): Set to ignore image DPI.
4123
3ac71f5d
CY
41242009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
4125
4126 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
4127 call for Sparc64.
4128
3fe53a83
AR
41292009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4130
4131 * nsfns.m:
4132 * nsgui.h:
4133 * nsmenu.m:
4134 * nsselect.m:
4135 * nsterm.h:
4136 * nsterm.m: Remove '23' comments that indicated code added during
4137 update from emacs-20 -> emacs-23.
4138
10f87c6f 41392009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
4140
4141 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 4142 ns_alternate_modifier. (Bug#1217)
a3b53a85 4143
c7cef62d
AR
4144 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
4145 Display all shortcuts, including those w/o super modifier.
4146
575fb8bd
AR
4147 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
4148
918b848b
CY
41492009-01-22 Chong Yidong <cyd@stupidchicken.com>
4150
4151 * fileio.c (Vwrite_region_post_annotation_function)
4152 (Vwrite_region_annotation_buffers): New vars.
4153 (build_annotations_unwind): Just reset
4154 Vwrite_region_annotation_buffers.
4155 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
4156 Call write-region-post-annotation-function.
4157 (build_annotations): Add to Vwrite_region_annotation_buffers if
4158 buffer changes.
4159
a39e2539
AR
41602009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4161
4162 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
4163 Tiger.
51d861de
SM
4164 * nsfns.m (ns_do_applescript):
4165 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 4166
35ed44db
AR
41672009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4168
4169 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
4170
cbe0b5bf
AR
41712009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4172
4173 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 4174
6049d3a0
AR
4175 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
4176
4177 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
4178 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
4179 handle Ctrl-tab. (Bug#1841)
4180 (ns_get_color): Use unsigned long long for scanned hex string value.
4181 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 4182 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 4183 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 4184 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 4185 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 4186 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 4187 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 4188
d3810c21 4189 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 4190 DPI. (Bug#1316)
d3810c21
AR
4191 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
4192 values in onTiger section.
4c7077c3 4193
e301e634
CY
41942009-01-19 Chong Yidong <cyd@stupidchicken.com>
4195
7f82490b
CY
4196 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
4197 Check return value of font_spec_from_name.
64cc3cf6 4198 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
4199
4200 * font.c (font_spec_from_name): Return Qnil if font name could not
4201 be parsed.
4202 (font_parse_name): Treat a `?' character as part of an XLFD.
4203
e301e634
CY
4204 * fns.c (Fsubstring): Doc fix.
4205
1c0db158
KH
42062009-01-19 Kenichi Handa <handa@m17n.org>
4207
51d861de 4208 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
4209 (ftfont_list): Likewise.
4210
acf20901
JB
42112009-01-18 Juanma Barranquero <lekktu@gmail.com>
4212
fff4e459
JB
4213 * dbusbind.c (Fdbus_register_signal):
4214 * process.c (conv_sockaddr_to_lisp):
4215 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
4216
acf20901
JB
4217 * callproc.c (Fgetenv_internal): Doc fix.
4218
e7abcdfb
CY
42192009-01-16 Chong Yidong <cyd@stupidchicken.com>
4220
4221 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
4222 it is not even used.
4223
b60861e6
GM
42242009-01-16 Glenn Morris <rgm@gnu.org>
4225
4226 * font.c (Ffont_variation_glyphs): Silence compiler.
4227
8db52afe
JB
42282009-01-15 Juanma Barranquero <lekktu@gmail.com>
4229
4230 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
4231 Reported by David Robinow <drobinow@gmail.com>.
4232
4cddb209
KH
42332009-01-15 Kenichi Handa <handa@m17n.org>
4234
51d861de 4235 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 4236
f247f67b
JR
42372009-01-14 Jason Rumney <jasonr@gnu.org>
4238
4239 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 4240 never a fontset. (Bug#1562)
f247f67b 4241
f56a4450
KH
42422009-01-14 Kenichi Handa <handa@m17n.org>
4243
4244 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 4245 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 4246
4e99855e
CY
42472009-01-13 Chong Yidong <cyd@stupidchicken.com>
4248
4249 * font.c (font_clear_prop): If clearing the family, clear the font
4250 width index too.
4251
fff4e459 4252 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 4253
24f01470
JB
42542009-01-12 Juanma Barranquero <lekktu@gmail.com>
4255
4256 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
4257 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
4258 functions, use sizeof.
4259
a41240a3
MR
42602009-01-12 Martin Rudalics <rudalics@gmx.at>
4261
4262 * keyboard.c (read_char): Fix case where last_nonmenu_event
4263 returned a bad value with submenus. (Bug#447)
4264
944636b8
CY
42652009-01-12 Chong Yidong <cyd@stupidchicken.com>
4266
4267 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
4268 family, clear the font width index too.
4269
0dad7c6f
JR
42702009-01-11 Jason Rumney <jasonr@gnu.org>
4271
4272 * keyboard.c (cmd_error_internal): Exit when errors occur before
4273 frame creation and not in daemon mode. (Bug#1836)
4274
7c2363af
CY
42752009-01-10 Chong Yidong <cyd@stupidchicken.com>
4276
4277 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
4278 of a display vector, backtrack.
4279 (try_window_reusing_current_matrix): Check glyph type before
4280 referencing charpos member.
4281
97b1b294
EZ
42822009-01-10 Eli Zaretskii <eliz@gnu.org>
4283
4284 Fix Bug #876:
4285
4286 * coding.c (inhibit_null_byte_detection): New variable.
4287 (detect_coding, detect_coding_system): Don't pay attention to null
4288 bytes if inhibit_null_byte_detection is non-zero.
51d861de 4289 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
4290 <inhibit-iso-escape-detection>: Doc fix.
4291
4624b6e3
JR
42922009-01-09 Jason Rumney <jasonr@gnu.org>
4293
4294 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 4295 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
4296 Only report Unicode Plane 2 fonts as unicode-sip.
4297
323b840c
CY
42982009-01-09 Chong Yidong <cyd@stupidchicken.com>
4299
51d861de
SM
4300 * xfaces.c (Fx_font_family_list): Delete function.
4301 Move compatibility version to faces.el.
323b840c 4302
51d861de 4303 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 4304
eba7400d
MR
43052009-01-09 Martin Rudalics <rudalics@gmx.at>
4306
4307 * frame.c (x_set_frame_parameters): Remember requested value for
4308 fullscreen before it's reset by the parameter handler.
4309
4b09796d
GM
43102009-01-09 Glenn Morris <rgm@gnu.org>
4311
4312 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 4313 (last_command_event): ... and update all users.
4b09796d
GM
4314 (last_input_char): For clarity, rename to...
4315 (last_input_event): ... and update all users.
4316 (last-command-char, last-input-char): Move to subr.el as aliases.
4317 * cmds.c, commands.h: Update for last_command_char rename.
4318
14ccea62
CY
43192009-01-08 Chong Yidong <cyd@stupidchicken.com>
4320
51d861de 4321 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 4322
5f004711
JR
43232009-01-08 Jason Rumney <jasonr@gnu.org>
4324
4325 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
4326 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
4327 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
4328 Don't declare.
fff4e459 4329 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
4330 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
4331
b71f6f73
KH
43322009-01-07 Kenichi Handa <handa@m17n.org>
4333
50b06221 4334 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 4335 remember the coding system used for decoding in
50b06221
KH
4336 coding_system (Bug#1039).
4337
b71f6f73 4338 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 4339 breaking the loop. (Bug#870)
b71f6f73
KH
4340 (decode_coding_utf_16, decode_coding_emacs_mule)
4341 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
4342 (decode_coding_charset): Likewise.
4343
56f668f7
MR
43442009-01-05 Martin Rudalics <rudalics@gmx.at>
4345
4346 * frame.c (x_set_frame_parameters): Make sure height (width) get
4347 applied when fullwidth (fullheight) is set. (Bug#1522)
4348
5da9424d
JB
43492009-01-04 Juanma Barranquero <lekktu@gmail.com>
4350
4351 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
4352 (utc_base): Declare as ULONGLONG, not long double.
4353 (convert_time_raw): Delete.
4354 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
4355 (initialize_utc_base): New function.
4356 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
4357 (convert_from_time_t): Use initialize_utc_base; compute result with
4358 64-bit arithmetic.
4359 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
4360
c4605e09
EZ
43612009-01-03 Eli Zaretskii <eliz@gnu.org>
4362
9acef61c 4363 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
4364 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
4365 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
4366 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
4367 [!subprocesses]: Define.
4368 (syms_of_process) [!subprocesses]: Intern and staticpro them.
4369 (Flist_system_processes, Fsystem_process_attributes)
4370 [!subprocesses]: Call list_system_processes and
4371 system_process_attributes instead of returning Qnil.
4372
9acef61c
JB
4373 * dosfns.c (system_process_attributes, list_system_processes):
4374 New functions.
c4605e09
EZ
4375
4376 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
4377
4378 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
4379 Don't use the default (no-op) implementation.
4380
8b7d0a16
JR
43812009-01-03 Jason Rumney <jasonr@gnu.org>
4382
a6d46bc1
JR
4383 * keyboard.c (parse_modifiers_uncached): Wheel events are
4384 clicks (bug#687).
4385
8b7d0a16
JR
4386 * w32term.c (x_query_colors, x_query_color): New functions.
4387
4388 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
4389 (svg_load_image): Cast returned pointers from dynamically loaded
4390 functions. Eliminate W32 specific code.
4391
bfe11752
DN
43922009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
4393
89e2438a
DN
4394 * nsfns.m (x_set_foreground_color, x_set_background_color)
4395 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
4396 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
4397 x_ prefix instead of ns_. Update references.
4398 (syms_of_nsfns): Add a FIXME comment.
4399
4400 * nsterm.m (x_set_cursor_type): New prototype.
4401 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
4402
bfe11752
DN
4403 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
4404 for Solaris instead of incorrectly providing Qutime and Qcutime.
4405
031da700
EZ
44062009-01-02 Eli Zaretskii <eliz@gnu.org>
4407
4408 * w32.c (process_times): Compute sum of utime and stime.
4409 (system_process_attributes): Add Qtime to the alist.
4410
4411 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
4412 and add them to the alist.
4413
4414 * process.c (top level) <Qtime, Qctime>: New variables.
4415 (syms_of_process): staticpro them.
4416 (Fsystem_process_attributes): Add their documentation to the doc
4417 string.
4418
4419 * process.h: Declare Qtime and Qctime.
4420
df23bf08
JR
44212009-01-02 Jason Rumney <jasonr@gnu.org>
4422
9acef61c 4423 * image.c (Qgobject): New symbol.
df23bf08
JR
4424 (syms_of_image): Initialize it.
4425 (init_svg_functions): Load some functions from gobject library.
4426
5bbdf7aa
DN
44272009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
4428
4429 * frame.c (make_terminal_frame): Remove redundant code and useless
4430 block.
4431
63136da6
AS
44322009-01-01 Andreas Schwab <schwab@suse.de>
4433
4434 * process.c (conv_sockaddr_to_lisp): Add workaround for
4435 getsockname bug on BSD.
4436
9ef69046
CY
44372009-01-01 Chong Yidong <cyd@stupidchicken.com>
4438
d6fafbe0
CY
4439 * xfns.c (x_create_tip_frame): Set border width of the X window.
4440
51d861de 4441 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 4442
f9c34147
JR
44432009-01-01 Jason Rumney <jasonr@gnu.org>
4444
9acef61c 4445 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
4446 Don't block input, as per earlier xterm.c changes.
4447
f5497e45
AR
44482008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
4449
4450 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
4451 (ns_appkit_version_int): New function.
4452 (x-server-version): Use ns_appkit_version_int and follow 21+
4453 convention of returning 3 integers.
4454
c19cab20
KH
44552008-12-30 Kenichi Handa <handa@m17n.org>
4456
4457 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
4458 (CHAR_SURROGATE_PAIR_P): New macro.
4459
4460 * font.h (struct font_driver): New member get_variation_glyphs.
4461
9acef61c 4462 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
4463 (Ffont_variation_glyphs): New function.
4464 (syms_of_font): Defsubr it.
4465
4466 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
4467 ftfont_variation_glyphs.
4468 (setup_otf_gstring): New function.
4469 (ftfont_drive_otf): Use it.
4470 (ftfont_shape_by_flt): Handle variation selector.
4471 (ftfont_variation_glyphs): New function.
4472
28cd591f
MR
44732008-12-30 Martin Rudalics <rudalics@gmx.at>
4474
4475 * frame.c (Vemacs_iconified): Remove.
4476
7f714baf
JR
44772008-12-30 Jason Rumney <jasonr@gnu.org>
4478
4479 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 4480 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 4481
9d2d22ab
CY
44822008-12-30 Chong Yidong <cyd@stupidchicken.com>
4483
4484 * indent.c (Fvertical_motion): Don't advance iterator if we have
4485 reseated to the desired position.
4486
4487 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
4488 checking for pos match.
4489
545312c2
KH
44902008-12-30 Kenichi Handa <handa@m17n.org>
4491
1ede3eb6
KH
4492 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
4493 just get the low 8-bit of the code.
4494
545312c2
KH
4495 * font.c (font_intern_prop): Validate str as multibyte.
4496
bd7bbf29
DN
44972008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4498
31e0750e
DN
4499 * dispextern.h (struct face): Move lface and hash from the middle
4500 of bitfields.
4501
bd7bbf29
DN
4502 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
4503
b5672e7c
DN
45042008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
4505
4506 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
4507 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
4508 instead of intervals.h.
4509
d704470f
AS
45102008-12-26 Andreas Schwab <schwab@suse.de>
4511
4512 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
4513 cons.
4514
54b33868
MR
45152008-12-26 Martin Rudalics <rudalics@gmx.at>
4516
4517 * textprop.c (Qminibuffer_prompt): New variable.
4518 (syms_of_textprop): Initialize it.
4519 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
4520 in minibuffer-prompt face. (Bug#1662)
4521
40b615d6
JR
45222008-12-25 Jason Rumney <jasonr@gnu.org>
4523
4524 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
4525
baae5c2d
JR
45262008-12-24 Jason Rumney <jasonr@gnu.org>
4527
4528 * ralloc.c (r_alloc_reset_variable): New function.
4529
4530 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 4531 record of what points where. (Bug#716)
baae5c2d 4532
a9051c88
DN
45332008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
4534
4535 * minibuf.c (read_minibuf): Follow the non-interactive case when
4536 running as a daemon, before detaching.
4537
8b146312
AS
45382008-12-22 Andreas Schwab <schwab@suse.de>
4539
4540 * buffer.c (init_buffer): Use realloc instead of xrealloc.
4541 * gtkutil.c (free_widget_value): Use xfree instead of free.
4542
56f2de10
MR
45432008-12-22 Martin Rudalics <rudalics@gmx.at>
4544
4545 * frame.c (delete_frame): New function derived from
4546 Fdelete_frame to handle Qnoelisp value for FORCE argument.
4547 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
4548 (Fdelete_frame): Call delete_frame. Remove line from doc-string
4549 saying that FORCE non-nil doesn't run `delete-frame-functions'.
4550 * frame.h: Extern delete_frame.
4551 * window.c (window_loop):
4552 * terminal.c (delete_terminal):
4553 * xterm.c (x_connection_closed):
4554 * xfns.c (Fx_hide_tip):
9acef61c 4555 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 4556
1fc200d6
JR
45572008-12-21 Jason Rumney <jasonr@gnu.org>
4558
4559 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
4560 when character maps to .notdef character.
4561
5e252df2
SM
45622008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
4563
4564 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
4565
99b72cc4
JR
45662008-12-20 Jason Rumney <jasonr@gnu.org>
4567
4568 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 4569 a graphical frame on Windows. (Bug#1325)
99b72cc4 4570
acc49a52
JD
45712008-12-20 Jan Djärv <jan.h.d@swipnet.se>
4572
4573 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
4574
6ea15123
CY
45752008-12-20 Chong Yidong <cyd@stupidchicken.com>
4576
4577 * minibuf.c (Fread_buffer): Doc fix.
4578
b2dab6c8
JR
45792008-12-20 Jason Rumney <jasonr@gnu.org>
4580
54ea0c87 4581 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 4582 server name in UNC paths. (Bug#719)
54ea0c87 4583
b2dab6c8 4584 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 4585 charbuf. (Bug#1035)
b2dab6c8 4586
6d1921be
DN
45872008-12-19 Daniel Engeler <engeler@gmail.com>
4588
4589 * sysdep.c (serial_configure): Fix typo.
4590
53934c98
DN
45912008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4592
4593 * sysdep.c: Include alloca.h.
f4f634e8
DN
4594 (system_process_attributes): Add implementation for Solaris.
4595
4596 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 4597
06e111a6
DN
45982008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
4599
4600 Reorganize implementation of Flist_system_processes and
4601 Fsystem_process_attributes. No functional changes.
4602 * process.c: Don't #include pwd.h, grp.h and limits.h.
4603 (Flist_system_processes): Just call list_system_processes.
4604 (Fsystem_process_attributes): Just call system_process_attributes.
4605 (procfs_list_system_processes, time_from_jiffies)
4606 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
4607 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
4608
4609 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
4610 (list_system_processes): Rename from
4611 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
4612 Provide a do nothing implementation.
4613 (system_process_attributes): Rename from
4614 procfs_list_system_processes.
4615 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 4616 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
4617
4618 * w32.c (list_system_processes): Rename from
4619 w32_list_system_processes.
4620 (system_process_attributes): Rename from
4621 w32_system_process_attributes.
4622
4623 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
4624
4625 * process.h (w32_list_system_processes)
4626 (w32_system_process_attributes): Remove.
362654a6
JB
4627 (list_system_processes, system_process_attributes):
4628 New prototypes.
06e111a6 4629
6a705b23
KH
46302008-12-19 Kenichi Handa <handa@m17n.org>
4631
4632 * xfont.c (xfont_decode_coding_xlfd): New function.
4633 (xfont_encode_coding_xlfd): New function.
4634 (xfont_list_pattern): Decode XLFD by iso-8859-1.
4635 (xfont_list): Decode and encode XLFD by iso-8859-1.
4636 (xfont_match): Likewise.
4637 (xfont_list_family): Likewise.
4638 (xfont_open): Likewise.
4639
d66c0241 4640 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
4641 names are utf-8.
4642
d66c0241 4643 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
4644 names are utf-8.
4645
5a130941
JD
46462008-12-18 Jan Djärv <jan.h.d@swipnet.se>
4647
4648 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
4649 changed.
bfd20325
JD
4650 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
4651 clicked on a detached tool bar button.
5a130941 4652
fd95644b
DN
46532008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
4654
4655 * emacs.c (main): Print and error and exit when no data is read
4656 from the pipe.
4657
e6eee6ae
JR
46582008-12-17 Jason Rumney <jasonr@gnu.org>
4659
4660 * w32font.c (w32font_has_char): Always return -1.
4661
a35dd56b
KH
46622008-12-16 Kenichi Handa <handa@m17n.org>
4663
4664 * font.c (font_open_entity): Fix previous change.
4665
0e3635c2
DN
46662008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
4667
4668 * process.c: Include <limits.h>.
4669
d4835507 46702008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
4671
4672 * font.c (font_update_drivers): Fix mistake in reconstructing the
4673 driver list.
4674
46752008-12-16 Chong Yidong <cyd@stupidchicken.com>
4676
4677 * font.c (font_clear_cache): Fix format of font cache data.
4678
e2cbc401
CY
46792008-12-15 Chong Yidong <cyd@stupidchicken.com>
4680
4681 * xftfont.c (xftfont_open): Free Xft font pattern if
4682 XftFontOpenPattern fails.
4683
4684 * xterm.c (x_free_frame_resources): Remove extraneous call to
4685 free_frame_faces.
4686
b131d535
CY
46872008-12-13 Chong Yidong <cyd@stupidchicken.com>
4688
4689 * xterm.c (x_delete_display): Move xim_close_dpy call to
4690 x_delete_terminal.
4691 (x_delete_terminal): Call xim_close_dpy.
4692
e6df5336
JR
46932008-12-13 Jason Rumney <jasonr@gnu.org>
4694
4695 * w32font.c (intern_font_name): New function.
4696 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
4697 (w32font_open_internal, Fx_select_font): Decode font name.
4698 (fill_in_logfont, list_all_matching_fonts): Encode font name.
4699
4700 * w32font.h (intern_font_name): Declare new function.
4701
4702 * w32uniscribe.c (add_opentype_font_name_to_list):
4703 Use intern_font_name.
4704
20d68145
CY
47052008-12-13 Chong Yidong <cyd@stupidchicken.com>
4706
9f2554de
CY
4707 * frame.c (Fdelete_frame): Call free_font_driver_list.
4708
3d9bec9a
CY
4709 * font.c (free_font_driver_list): Implement missing function.
4710
20d68145
CY
4711 * w32term.c (w32_term_init): Don't initialize the image cache
4712 here; it will be done in init_frame_faces.
4713
4714 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
4715 (struct x_display_info): Remove unused member null_pixel. New
4716 member xim_callback_data.
4717
4718 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
4719 (xim_initialize): Save pointer to callback function data.
4720 (xim_close_dpy): Free callback function data. Call XCloseIM,
4721 reverting 2008-11-04 change by David Smith.
4722 (x_term_init): Don't initialize the image cache here; it will be
4723 done in init_frame_faces. Remove ancient "null_pixel" cruft.
4724 (x_delete_display): Free x_dnd_atoms member.
4725
96f9306b
KH
47262008-12-13 Kenichi Handa <handa@m17n.org>
4727
6dec9044
JB
4728 * font.c (font_rescale_ratio): Moved from xfaces.c.
4729 Argument type changed. Handle a font-spec too.
96f9306b 4730 (font_score): Check Vface_font_rescale_alist.
6dec9044 4731 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
4732
4733 * xfaces.c (font_rescale_ratio): Moved to font.c.
4734
8d5b4964
CY
47352008-12-13 Chong Yidong <cyd@stupidchicken.com>
4736
4737 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
4738
e6df5336
JR
47392008-12-12 Jason Rumney <jasonr@gnu.org>
4740
4741 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
4742 Vwindow_system_version to the real w32 major version.
4743
97c6058a
DN
47442008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
4745
4746 * term.c (init_tty): Move setting the terminal name before the
4747 potential user: maybe_fatal.
4748
ec4e88d7
CY
47492008-12-11 Chong Yidong <cyd@stupidchicken.com>
4750
d4835507
JB
4751 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
4752 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 4753
b4233ec9
JR
47542008-12-11 Jason Rumney <jasonr@gnu.org>
4755
8ec71e23 4756 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 4757 SYMBOL_CHARSET. (Bug#547)
8ec71e23 4758
b4233ec9 4759 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 4760 size for surrogates. (Bug#1096, bug#872)
b4233ec9 4761
011a0143
JB
47622008-12-11 Juanma Barranquero <lekktu@gmail.com>
4763
4764 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
4765
3c309f34
JB
47662008-12-11 Juanma Barranquero <lekktu@gmail.com>
4767
4768 * process.c (Fsystem_process_attributes, syms_of_process):
4769 Fix typo in name of Ssystem_process_attributes.
4770 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
4771
fedc6ab5
JB
47722008-12-11 Juanma Barranquero <lekktu@gmail.com>
4773
4774 * syntax.c (Fmodify_syntax_entry): Doc fix.
4775
ba3de0e8
JB
47762008-12-10 Juanma Barranquero <lekktu@gmail.com>
4777
4778 * font.c (Ffont_spec): Move usage to end of docstring.
4779
174f1c74
JR
47802008-12-10 Jason Rumney <jasonr@gnu.org>
4781
4782 * w32font.c (Qcham): New symbol.
4783 (font_supported_scripts): Add cham, and comments for other new
4784 scripts in bitfield from OpenType spec.
9d32f818
JR
4785 (add_font_entity_to_list): Limit unicode-sip fonts to those that
4786 contain characters beyond the bmp.
174f1c74 4787
7b649478
KH
47882008-12-10 Kenichi Handa <handa@m17n.org>
4789
4790 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 4791 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
4792 Qunicode_sip.
4793
2133e2d1
JB
47942008-12-10 Juanma Barranquero <lekktu@gmail.com>
4795
4796 * coding.c (QCdefault_char): Rename from QCdefalut_char.
4797 (Fcoding_system_put): Use QCdefault_char.
4798 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
4799
9af886ee
CY
48002008-12-09 Chong Yidong <cyd@stupidchicken.com>
4801
74d819eb
CY
4802 * xftfont.c (syms_of_xftfont): Fix typo.
4803
4ccfa1c0 4804 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 4805
7c19d3ae
DN
48062008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
4807
4808 * emacs.c (main): Close daemon_pipe on exec.
4809
567826bb
CY
48102008-12-08 Chong Yidong <cyd@stupidchicken.com>
4811
4812 * termchar.h (struct tty): New members termcap_term_buffer and
4813 termcap_strings_buffer.
4814
4815 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 4816 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
4817 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
4818 All callers changed.
4819 (init_tty): Store termcap data and string buffers in new struct
4820 tty members termcap_term_buffer and termcap_strings_buffer.
4821 (delete_tty): Free them.
4ccfa1c0 4822 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 4823
aa96c42b
SZ
48242008-12-07 Seiji Zenitani <zenitani@mac.com>
4825
4826 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 4827 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 4828
b7e1d896
CY
48292008-12-06 Chong Yidong <cyd@stupidchicken.com>
4830
4831 * coding.c (make_conversion_work_buffer): Disable buffer
4832 modification hooks in the work buffer.
4833
b5ec91a5
EZ
48342008-12-05 Eli Zaretskii <eliz@gnu.org>
4835
4836 * process.c (procfs_system_process_attributes): If `nread' has a
4837 negative value, assign zero to it.
4838
a5d2a52b
CY
48392008-12-05 Chong Yidong <cyd@stupidchicken.com>
4840
68c5540b 4841 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 4842
7bf1bb21
KH
48432008-12-05 Kenichi Handa <handa@m17n.org>
4844
4845 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
4846 second character is a combining character.
4847
2fdc7d00
EZ
48482008-12-05 Eli Zaretskii <eliz@gnu.org>
4849
4850 * process.c (procfs_system_process_attributes): Don't use cmd,
4851 cmdsize, and q without initializing them first.
4852
bf6bfba8
JR
48532008-12-04 Jason Rumney <jasonr@gnu.org>
4854
4855 * w32font.c (w32font_draw): Initialize orig_clip before getting
4856 it, and delete it when finished.
4857
a3b1a468
DN
48582008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
4859
4860 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
4861 case when running as a daemon before detaching.
4862
8b8be8eb
JB
48632008-12-03 Juanma Barranquero <lekktu@gmail.com>
4864
805f2638 4865 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 4866
b1bde622
KH
48672008-12-03 Kenichi Handa <handa@m17n.org>
4868
e500c47d
KH
4869 * font.c (font_at): Set `multibyte' at first.
4870
ca516334
KH
4871 * coding.c (decode_coding_charset): Check type of an element of
4872 vector VALIDS.
7bf1bb21 4873 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 4874
4ccfa1c0 4875 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
4876 (font_for_char): Likewise.
4877
1e5ecd37
CY
48782008-12-03 Chong Yidong <cyd@stupidchicken.com>
4879
d5b01609 4880 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
4881 (font_update_lface): Handle fonts with corrupted size specs,
4882 i.e. non-int and non-float.
d5b01609 4883
11e3a6e4 4884 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 4885 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 4886 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 4887
ab06788b
CY
4888 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
4889
1e5ecd37 4890 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 4891 underline_minimum_offset for underline position.
1e5ecd37 4892
63c125ab
DN
48932008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
4894
4895 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
4896
4897 * character.c (c_string_width): Specify the type for LEN.
4898
3a8406e1
KH
48992008-12-03 Kenichi Handa <handa@m17n.org>
4900
4ccfa1c0 4901 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 4902 (decode_coding_utf_8): Likewise.
4ccfa1c0 4903 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 4904 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 4905
651df7d9
CY
49062008-12-02 Chong Yidong <cyd@stupidchicken.com>
4907
4908 * keyboard.c (make_lispy_position): Only use PT if the selected
4909 window is current.
4910
1f625c6c
AS
49112008-12-02 Andreas Schwab <schwab@suse.de>
4912
f7741ce9
AS
4913 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
4914
1f625c6c
AS
4915 * doprnt.c (doprnt1): Fix size of charbuf.
4916
92bc2678
CY
49172008-12-02 Chong Yidong <cyd@stupidchicken.com>
4918
4919 * keyboard.c (timer_check): Revert last change.
4920
93b9e8cc
JB
49212008-12-02 Juanma Barranquero <lekktu@gmail.com>
4922
4923 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
4924
fd7a37d5
JB
49252008-12-01 Juanma Barranquero <lekktu@gmail.com>
4926
4927 * makefile.w32-in: Update dependencies.
4928 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
4929
c115043b
AS
49302008-12-01 Andreas Schwab <schwab@suse.de>
4931
4932 * font.c (register_font_driver): Use xmalloc.
4933 (font_put_frame_data): Likewise.
4934
f5668d2a
CY
49352008-12-01 Chong Yidong <cyd@stupidchicken.com>
4936
860d96be
CY
4937 * xfaces.c (realize_x_face): Make abort condition clearer.
4938
f5668d2a
CY
4939 * gtkutil.c (update_frame_tool_bar): Initialize variable.
4940
379c17e7
CY
49412008-11-30 Chong Yidong <cyd@stupidchicken.com>
4942
4943 * keyboard.c (timer_check): After a timer runs, ensure that the
4944 selected window's buffer is current.
4945
35f36d65
JB
49462008-11-30 Juanma Barranquero <lekktu@gmail.com>
4947
f952c61c
JB
4948 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
4949 It was accidentally restored by the Unicode merge.
4950
35f36d65
JB
4951 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
4952
b23077df
JB
49532008-11-29 Juanma Barranquero <lekktu@gmail.com>
4954
4955 * w32proc.c: Include "coding.h".
4956 (Fw32_short_file_name): Encode filename passed to Windows API.
4957 (Fw32_long_file_name): Encode filename passed to Windows API and
4958 decode back the result. (Bug#1433)
4959
b8ebe9dd
KH
49602008-11-29 Kenichi Handa <handa@m17n.org>
4961
8cc53f96
KH
4962 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
4963 not before accessing it.
4964
b8ebe9dd
KH
4965 * charset.c (Fdefine_charset_internal): After calculating
4966 min_char, max_char, and fastmap, copy the charset structure again.
4967 (encode_char): Fix the previous change.
4968
59bc82c0
SZ
49692008-11-28 Seiji Zenitani <zenitani@mac.com>
4970
4971 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
4972
4973 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
4974
4975 * nsterm.m (x_set_frame_alpha): New function.
4976
32247e3d
EZ
49772008-11-27 Eli Zaretskii <eliz@gnu.org>
4978
4979 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
4980
b003e5ff
JB
49812008-11-27 Juanma Barranquero <lekktu@gmail.com>
4982
4983 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
4984 pointer to check_face_name.
4985
708550f5
KH
49862008-11-27 Kenichi Handa <handa@m17n.org>
4987
4988 * category.h (SET_CATEGORY_SET): Call set_category_set.
4989 (set_category_set): Extern it.
4990
4991 * category.c (hash_get_category_set): New function.
4992 (Fmodify_category_entry): Adjusted for the change of
4993 char_table_ref_and_range. Call hash_get_category_set to get a
4994 category set to store in the table.
4995
4996 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
4997 Funify_charset.
4998
2ae37cf0 4999 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
5000 (DECODE_CHAR): Check if the decoder vector is ready.
5001 (ENCODE_CHAR): Check if the encoder char-table is ready.
5002 (maybe_unify_char): Extern it.
5003
5004 * charset.c (Vchar_unified_charset_table): Delete it.
5005 (inhibit_load_charset_map): New variable.
5006 (temp_charset_work): New variable.
5007 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
5008 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
5009 New macros.
5010 (load_charset_map): Meaning of control_flag changed. If
5011 inhibit_load_charset_map is nonzero, setup a table in
5012 temp_charset_work.
5013 (load_charset): New argument control_flag.
5014 (map_charset_for_dump): New function.
5015 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
5016 map_charset_for_dump.
5017 (Fdefine_charset_internal): If the charset method is MAP, load
5018 mapping tables by calling load_charset.
5019 (Funify_charset): Don't load a mapping table but directly set
5020 Vchar_unify_table.
5021 (maybe_unify_char): New function.
5022 (decode_char): Don't handle the deleted method MAP_DEFERRED.
5023 Handle the case of inhibit_load_charset_map being nonzero.
5024 (encode_char): Don't handle the deleted method MAP_DEFERRED.
5025 Handle the case of inhibit_load_charset_map being nonzero.
5026 (Fclear_charset_maps): Just free temp_charset_work.
5027 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
5028 variable.
5029
5030 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
5031 change of char_table_ref_and_range.
5032 (char_table_ref_and_range): Change the meaning of argument FROM
5033 and TO. Now the caller must provide initial values for *FROM
5034 and *TO.
5035
5036 * fontset.c (fontset_add): Adjusted for the change of
5037 char_table_ref_and_range.
5038 (fontset_get_font_group): Likewise.
5039 (Ffontset_info): Likewise.
5040
5041 * keymap.c (describe_vector): Adjusted for the change of
5042 char_table_ref_and_range. For char-table, put boundary between
5043 non-ASCII and 8-bit characters.
5044
5045 * print.c (print_object): For bool-vector, delete unnecessary
5046 check of ASCII_BYTE_P.
5047
9196133b
JR
50482008-11-26 Jason Rumney <jasonr@gnu.org>
5049
5050 * w32font.c (w32font_open_internal): Don't include external
9acef61c 5051 leading in font height. (Bug#879)
9196133b 5052
9f688acf
GM
50532008-11-26 Glenn Morris <rgm@gnu.org>
5054
5055 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
5056 redefinition with ifdef. (Bug#1383)
5057
90d19aff
AR
50582008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5059
5060 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
5061
4ccfa1c0 50622008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
5063
5064 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
5065 New EmacsView methods.
5066 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
5067 Fixes bug #1048,1357,1414.
5068
50692008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5070
5071 Fix bug #1362.
5072 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
5073 is not an indexed color.
5074 * nsterm.m (free_indexed_color): Add argument checking.
5075 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
5076
e7d5ecb3
CY
50772008-11-24 Chong Yidong <cyd@stupidchicken.com>
5078
5079 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
5080 Document confirm-after-completion value for
5081 minibuffer-completion-confirm.
5082
c285743c
JR
50832008-11-24 Jason Rumney <jasonr@gnu.org>
5084
5085 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
5086 warning.
5087
b0857706
JR
50882008-11-23 Jason Rumney <jasonr@gnu.org>
5089
5090 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
5091 restored before returning.
5092
5093 * w32font.c (check_face_name): New function.
5094 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 5095 fonts. (Bug#642)
b0857706 5096
ee50ff07
MR
50972008-11-22 Martin Rudalics <rudalics@gmx.at>
5098
5099 * buffer.c (Fswitch_to_buffer): Reword and mention new option
5100 confirm-nonexistent-file-or-buffer in doc-string.
5101
b8ff72fa
SM
51022008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
5103
5104 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
5105 Fix copy/paste typo. Add checks.
5106
cee53ed4
KH
51072008-11-21 Kenichi Handa <handa@m17n.org>
5108
5109 * coding.c (detect_coding_iso_2022): Reject invalid composition
5110 sequence.
5111 (DECODE_COMPOSITION_START): If the current source is the last
5112 block, and the current composition doesn't end, regard this
5113 sequence as invalid.
5114 (decode_coding_iso_2022): Handle invalid composition sequence.
5115
f6ef1e65
MR
51162008-11-20 Martin Rudalics <rudalics@gmx.at>
5117
5118 * window.c (coordinates_in_window): Don't return
5119 ON_VERTICAL_BORDER for the rightmost position of a mode/header
5120 line when the window is not the rightmost one. (Bug#1372)
5121
e08b1705
MR
51222008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
5123
5124 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
5125
ad98e89f
EZ
51262008-11-15 Eli Zaretskii <eliz@gnu.org>
5127
5128 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
5129 and bright_bg if noninteractive is non-zero.
5130
fb098a4b
CY
51312008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5132
5133 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
5134 x_draw_glyph_string_background.
5135
5136 * w32term.c (x_draw_glyph_string): Likewise.
5137
ce952b6e
CY
51382008-11-15 Chong Yidong <cyd@stupidchicken.com>
5139
5140 * xterm.c (x_draw_glyph_string): Stop drawing the background of
5141 the next glyph string once past the overhang width.
5142
5143 * nsterm.m (ns_draw_glyph_string): Likewise.
5144
5145 * w32term.c (x_draw_glyph_string): Likewise.
5146
26ea7079
CY
51472008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
5148
5149 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
5150 double file close.
5151
1c33c906
MR
51522008-11-14 Martin Rudalics <rudalics@gmx.at>
5153
5154 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
5155 dedicated status of window before attempting to display another
5156 buffer in it.
5157
8fc29035
JB
51582008-11-14 Juanma Barranquero <lekktu@gmail.com>
5159
5160 * msdos.c (Fmsdos_long_file_names):
5161 (syms_of_msdos) <dos-unsupported-char-glyph>:
5162 * dosfns.c (Fint86): Fix typos in docstrings.
5163
55fb4286
EZ
51642008-11-14 Eli Zaretskii <eliz@gnu.org>
5165
5166 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
5167
3fda0315
KY
51682008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
5169
5170 * puresize.h (BASE_PURESIZE): Increase to 1260000.
5171
7e849c17
CY
51722008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
5173
5174 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
5175
5176 * frame.h: Negative alpha means "don't touch".
5177
5178 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
5179
5180 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
5181
b9fd67bd
DN
51822008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
5183
5184 * hftctl.c:
5185 * chpdef.h:
5186 * acldef.h: Remove files used only for systems no longer supported.
5187
5188 * Makefile.in: Fix .o alphabetical ordering.
5189 (hftctl.o): Remove dependency, file removed.
5190 (keymap.o, print.o): Depend on charset.h.
5191
d5998e03
KH
51922008-11-10 Kenichi Handa <handa@m17n.org>
5193
2ae37cf0 5194 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 5195
be70e183
CY
51962008-11-08 Chong Yidong <cyd@stupidchicken.com>
5197
5198 * dired.c (file_name_completion): If completion_ignore_case is
5199 enabled, ignore case when checking completion-regexp-list.
5200
7cf94eac
EZ
52012008-11-08 Eli Zaretskii <eliz@gnu.org>
5202
5203 * vm-limit.c (get_lim_data): Fix last change.
5204
ee107a89
KH
52052008-11-08 Kenichi Handa <handa@m17n.org>
5206
5207 * character.c (Fget_byte): New function.
5208 (syms_of_character): Defsubr Fget_byte.
5209
5fd15622
CY
52102008-11-07 Chong Yidong <cyd@stupidchicken.com>
5211
5212 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
5213 cursor position is valid after scrolling.
5214
13d62fad
JB
52152008-11-06 Juanma Barranquero <lekktu@gmail.com>
5216
5217 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
5218
a1dd2936
GM
52192008-11-06 Glenn Morris <rgm@gnu.org>
5220
5221 * xterm.c (handle_one_xevent): Don't let popup menus cause
5222 mouse-autoselect-window related window switching. (Bug#1261)
5223
860cd236
CY
52242008-11-04 David Smith <davidsmith@acm.org> (tiny change)
5225
5226 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
5227
653a3150
AS
52282008-11-04 Andreas Schwab <schwab@suse.de>
5229
5230 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
5231
870f5cac
CY
52322008-11-03 Chong Yidong <cyd@stupidchicken.com>
5233
5234 * xfns.c (Fx_wm_set_size_hint): New function.
5235
1e02f3cb
MR
52362008-11-03 Martin Rudalics <rudalics@gmx.at>
5237
5238 * textprop.c (Fprevious_single_char_property_change): Return 0
5239 when there's no change in a string. (Bug#1301)
5240
e630dfc6
MR
52412008-11-02 Martin Rudalics <rudalics@gmx.at>
5242
5243 * frame.c (do_switch_frame): New argument NORECORD passed to
5244 Fselect_window.
5245 (Fselect_frame): New argument NORECORD passed to
5246 do_switch_frame.
5247 (Fset_frame_selected_window): New argument NORECORD passed to
5248 Fselect_frame.
5249 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
5250 in call of do_switch_frame.
5251 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
5252 Handle NORECORD argument in call of Fselect_frame.
5253 * lisp.h (do_switch_frame, Fselect_frame)
5254 (Fset_frame_selected_window): Adjust declarations.
5255 * window.c (select_frame_norecord): New function.
5256 (run_window_configuration_change_hook): Use it and call
5257 Fselect_frame with NORECORD set.
5258 (Fselect_window): Pass NORECORD to Fselect_frame.
5259 (Fset_window_configuration): Handle NORECORD argument in call of
5260 do_switch_frame.
5261 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
5262 Fset_frame_selected_window.
5263 * keyboard.c (command_loop_1): Handle NORECORD in call of
5264 Fselect_frame (currently ifdefd).
5265
9020b223
GM
52662008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
5267
5268 * emacs.c (USAGE2): Untabify.
5269
793ffee8
SM
52702008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
5271
5272 * composite.c (fill_gstring_header): Fix copy/paste typo.
5273
ab6d1131
MR
52742008-10-31 Martin Rudalics <rudalics@gmx.at>
5275
5276 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
5277 (Fother_window): Rename argument and rewrite doc-string.
5278 (select_window_norecord): Fix return value. (Bug#1276)
5279
601a9cf1
JB
52802008-10-30 Juanma Barranquero <lekktu@gmail.com>
5281
5282 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
5283 new frames overriding foreground for tooltips. Based on similar patch
5284 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
5285
813b0652
CY
52862008-10-29 Chong Yidong <cyd@stupidchicken.com>
5287
5288 * emacs.c (Fdaemon_initialized): Initialize nfd.
5289
4414f58f
MR
52902008-10-29 Martin Rudalics <rudalics@gmx.at>
5291
5292 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
5293 (Fwindow_text_height): Clarify doc-strings.
5294 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
5295 doc-string of window-scroll-functions.
5296
ecdcaa09
RS
52972008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
5298
5299 * category.c (syms_of_category): Fix typo in docstring.
5300
23fe745a
JB
53012008-10-28 Juanma Barranquero <lekktu@gmail.com>
5302
5303 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
5304 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
5305 Fix typos in docstrings.
5306
ff808935
DN
53072008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
5308
5309 * emacs.c (daemon_pipe): Make non-static.
5310 (IS_DAEMON): Move definition ...
5311 * lisp.h (IS_DAEMON): ... here.
5312 (daemon_pipe): Declare.
5313 (is_daemon): Remove.
5314 * dispnew.c (init_display): Use IS_DAEMON.
5315
fc012771
SM
53162008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
5317
5318 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
5319 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
5320
5321 * emacs.c (is_daemon): Remove.
5322 (main): Don't set is_daemon.
5323 (IS_DAEMON): New macro.
5324 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 5325 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
5326 parent exits.
5327 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
5328
d8bdbe6f
CY
53292008-10-27 Chong Yidong <cyd@stupidchicken.com>
5330
d1a072bf
CY
5331 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
5332 over-sized glyph, draw it with the default glyph width.
5333
e2e325aa
CY
5334 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5335 glyph, draw it with the default glyph width.
5336
5337 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
5338 glyph, draw it with the default glyph width.
5339
d8bdbe6f
CY
5340 * xdisp.c (try_scrolling): When computing the distance from the
5341 scroll margin to PT, try moving some distance past the window
5342 bottom before giving up.
5343
7bfac547
MR
53442008-10-27 Martin Rudalics <rudalics@gmx.at>
5345
5346 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
5347 (Fset_window_buffer): Explain in doc-string that a window can be
5348 "strongly" dedicated to its buffer.
5349
4ff029f6
DN
53502008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
5351
5352 * emacs.c (daemon_name): New variable.
5353 (main): Deal with --daemon=SERVER_NAME.
5354 (Fdaemonp): Return a name if one was passed to --daemon.
5355
5790ef40
DN
53562008-10-26 Romain Francoise <romain@orebokech.com>
5357
f9bd0df9 5358 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
5359 (main): Create a pipe before forking, make the parent exit only after
5360 the child has closed its end of the pipe. Move closing the
5361 descriptors ...
5362 (Fdaemon_initialized): ... here. New function.
5363
f5385255
SM
53642008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
5365
4d632321
SM
5366 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
5367 the previous unoptimized table.
5368
f5385255
SM
5369 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
5370 the distinction between non-nil and non-t value of `dedicated'.
5371
6c56a0f3
CY
53722008-10-25 Chong Yidong <cyd@stupidchicken.com>
5373
5374 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 5375 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 5376
fec89261
MR
53772008-10-25 Martin Rudalics <rudalics@gmx.at>
5378
5379 * window.c (Fget_buffer_window, Fdelete_windows_on)
5380 (Freplace_buffer_in_windows): Make buffer argument optional and
5381 rename to buffer_or_name.
5382
34fcddd0
CY
53832008-10-24 Chong Yidong <cyd@stupidchicken.com>
5384
f5385255
SM
5385 * xdisp.c (handle_single_display_spec, handle_display_prop):
5386 Undo 2005-05-16 change.
34fcddd0
CY
5387 (handle_stop): Pop iterator if it's loaded with an empty string.
5388 (get_overlay_strings_1): Don't save iterator if it's loaded with
5389 an empty string (bug#1201).
5390
064766f2
KH
53912008-10-24 Kenichi Handa <handa@m17n.org>
5392
5393 * ftfont.c (ftfont_otf_features): Fix previous change.
5394 (ftfont_otf_capability): Check FeatureList.FeatureCount before
5395 calling ftfont_otf_features.
5396
f9bd0df9 53972008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
5398
5399 * font.c (font_match_p): Fix for the case that a vector of
5400 characters is in script-representative-chars.
5401
1dae9197
MA
54022008-10-24 Michael Albinus <michael.albinus@gmx.de>
5403
5404 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 5405 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
5406 (xd_read_queued_messages): Catch Qdbus_error from the macros.
5407 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 5408 macro. (Bug#1186)
1dae9197 5409
f9bd0df9 54102008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
5411
5412 * s/sol2-10.h: New file.
5413
878a4584
JB
54142008-10-23 Juanma Barranquero <lekktu@gmail.com>
5415
5416 * xdisp.c (fill_glyph_string): Fix typo in source (though the
5417 poor beast has survived 9+ years and the jump from xterm.c!).
5418
cd265ca6
MR
54192008-10-23 Martin Rudalics <rudalics@gmx.at>
5420
5421 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
5422 Reword doc-string.
f5385255 5423 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 5424
472a4dc9
JB
54252008-10-23 Juanma Barranquero <lekktu@gmail.com>
5426
5427 * character.c (syms_of_character) <script-representative-chars>:
5428 <unicode-category-table>: Doc fixes.
5429
159bd5a2
NF
54302008-10-23 Noah Friedman <friedman@splode.com>
5431
5432 * coding.c (make_conversion_work_buffer): Check that
5433 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
5434 Fget_buffer_create.
5435
49f9c344
KH
54362008-10-23 Kenichi Handa <handa@m17n.org>
5437
5438 * font.c (font_add_log): Check the values of extra properties.
5439
12bb3111
MR
54402008-10-22 Martin Rudalics <rudalics@gmx.at>
5441
5442 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5443 Reword doc-string.
5444 (Fset_window_parameter): Use NILP.
5445 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 5446 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 5447
bbeb4e99
JB
54482008-10-22 Juanma Barranquero <lekktu@gmail.com>
5449
5450 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
5451
54522008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
5453
5454 * nsfns.m (ns_appkit_version): New function.
5455 (x-server-version): Use it.
5456 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
5457 (x-server-vendor): Don't check_ns().
5458
5459 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
5460
a9b555d3
JB
54612008-10-22 Juanma Barranquero <lekktu@gmail.com>
5462
5463 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5464 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
5465
4626499f
KH
54662008-10-22 Kenichi Handa <handa@m17n.org>
5467
e3681952
KH
5468 * syntax.c (scan_words): Call word_boundary_p instead of comparing
5469 scripts.
5470
4626499f
KH
5471 * category.c (word_boundary_p): Check scripts instead of charset.
5472 Handle nil value in word-separating-categories and
5473 word-combining-categories.
5474 (syms_of_category): Fix docstrings of word-separating-categories
5475 and word-combining-categories.
5476
1560f91a
EZ
54772008-10-21 Eli Zaretskii <eliz@gnu.org>
5478
5479 * coding.c (Fencode_coding_region, Fdecode_coding_region)
5480 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
5481
f4668441
MR
54822008-10-21 Martin Rudalics <rudalics@gmx.at>
5483
5484 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
5485 Rename arg "buffer" to "buffer_or_name".
5486 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
5487 it optional.
5488 (no_switch_window): Remove since the return value is not used.
a9b555d3 5489 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
5490 Consider window as dedicated when Fwindow_dedicated_p returns a
5491 non-nil value.
5492 * lisp.h: Remove prototype for no_switch_window.
5493
fd75ddb2
JD
54942008-10-21 Jan Djärv <jan.h.d@swipnet.se>
5495
5496 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 5497 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 5498
07295713
KH
54992008-10-21 Kenichi Handa <handa@m17n.org>
5500
5501 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
5502 check Vlatin_extra_code_table.
5503
712adc82
EZ
55042008-10-20 Eli Zaretskii <eliz@gnu.org>
5505
5506 * fileio.c (Fset_file_modes): Doc fix.
5507
f549eb0b
MA
55082008-10-19 Michael Albinus <michael.albinus@gmx.de>
5509
5510 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
5511 in arrays.
5512
aac0c6e3
MR
55132008-10-19 Martin Rudalics <rudalics@gmx.at>
5514
5515 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
5516 Mention kill-buffer in doc-string.
5517 (Fset_window_buffer): Reinsert tem check removed in last commit.
5518 (Fenlarge_window, Fshrink_window): Have argument names and
5519 doc-string follow Elisp manual more closely.
5520
55212008-10-18 Eli Zaretskii <eliz@gnu.org>
5522
5523 * fileio.c (Fset_file_modes): Doc fix.
5524
55252008-10-18 Martin Rudalics <rudalics@gmx.at>
5526
5527 * window.c (Fwindow_width, Fset_window_start)
5528 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
5529 (Fdelete_windows_on, Freplace_buffer_in_windows):
5530 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
5531 (Fwindow_dedicated_p): Make window argument optional.
5532 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
5533 (Fset_window_buffer): Respect any non-nil dedicated value for
5534 window. Rename "buffer" argument to "buffer_or_name".
5535
55362008-10-18 Ulrich Mueller <ulm@gentoo.org>
5537
5538 * m/sh3.h: New file, machine description for SuperH.
5539
55402008-10-17 Martin Rudalics <rudalics@gmx.at>
5541
5542 * window.c (Fsplit_window): Rename arg horflag to horizontal.
5543
55442008-10-17 Kenichi Handa <handa@m17n.org>
5545
5546 * ftfont.c (ftfont_otf_features): Fix indexing
5547 gsub_gpos->FeatureList.Feature. Check the validity of indices.
5548
55492008-10-16 Magnus Henoch <mange@freemail.hu>
5550
5551 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
5552 (Fdbus_call_method_asynchronously): Ditto.
5553 This change makes C-h f display the argument list.
5554
55552008-10-16 Chong Yidong <cyd@stupidchicken.com>
5556
5557 * fileio.c (Fexpand_file_name): Doc fix.
5558
5559 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
5560 of :foreground and :background equivalent to unspecified (20.x
5561 compatibility).
5562
55632008-10-15 Eli Zaretskii <eliz@gnu.org>
5564
5565 * buffer.c (syms_of_buffer): Doc fix.
5566
55672008-10-14 Kenichi Handa <handa@m17n.org>
5568
5569 * font.c (font_clear_prop): When clearing font width, clear the
5570 average width field too.
5571
55722008-10-12 Andreas Schwab <schwab@suse.de>
5573
5574 * ftfont.c (ftfont_shape_by_flt): Make static.
5575 * ftfont.h (ftfont_shape_by_flt): Don't declare.
5576
5577 * font.c: Don't include <m17n-flt.h>.
5578
55792008-10-10 Eli Zaretskii <eliz@gnu.org>
5580
5581 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
5582
55832008-10-09 Eli Zaretskii <eliz@gnu.org>
5584
5585 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
5586 away code.
5587
55882008-10-09 Chong Yidong <cyd@stupidchicken.com>
5589
5590 * dispnew.c (update_text_area): Avoid looping due to large glyph
5591 overhangs (bug#1070).
5592
55932008-10-09 Kenichi Handa <handa@m17n.org>
5594
5595 * fontset.c (face_for_char): If face->fontset is negative, just
5596 return ascii_face.
5597
f5385255
SM
5598 * font.c (font_delete_unmatched): Fix previous change.
5599 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
5600
56012008-10-09 Martin Rudalics <rudalics@gmx.at>
5602
5603 * frame.c (Fraise_frame): On text-only terminals select frame in
5604 order to make it visible. (Bug#1061)
5605
56062008-10-08 Chong Yidong <cyd@stupidchicken.com>
5607
5608 * fontset.c (fontset_find_font): Check frame validity.
5609
56102008-10-07 Chong Yidong <cyd@stupidchicken.com>
5611
a9b555d3 5612 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
5613 (xg_display_close): Allow Emacs to close all displays (bug#985).
5614
56152008-10-06 Andreas Schwab <schwab@suse.de>
5616
f5385255 5617 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
5618
56192008-10-06 Chong Yidong <cyd@stupidchicken.com>
5620
f5385255 5621 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 5622
a9b555d3 5623 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
5624
5625 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
5626 during initialization.
5627
56282008-10-04 Eli Zaretskii <eliz@gnu.org>
5629
5630 * xdisp.c (redisplay_internal): If frame switched, redisplay the
5631 whole thing on MSDOS frames as well as on a TTY.
5632
5633 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
5634 well as for TTY.
5635 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
5636 well as on a TTY.
5637
5638 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
5639 as well as for TTY.
5640
5641 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
5642
5643 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
5644 MSDOS frames as well.
5645
56462008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5647
5648 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
5649 correct arguments.
b71ac3dd 5650 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
5651
56522008-10-03 Glenn Morris <rgm@gnu.org>
5653
5654 * emacs.c (USAGE1): Add --daemon.
5655
56562008-10-02 Eli Zaretskii <eliz@gnu.org>
5657
5658 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
5659 100, so it's in percents as advertised.
5660
56612008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
5662
5663 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
5664 (ns_output.current_cursor, ns_output.desired_cursor)
5665 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
5666 (FRAME_NEW_CURSOR_COLOR): Remove.
5667
5668 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 5669 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
5670 enumeration (HOLLOW_BOX_CURSOR, etc.).
5671
5672 * nsterm.m (ns_frame_rehighlight): Remove commented code.
5673 (draw_window_cursor): Simplify code.
f5385255
SM
5674 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
5675 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 5676 updates manually.
a9b555d3
JB
5677 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
5678 Use core Emacs cursor types.
aac0c6e3 5679
b8ff72fa 5680 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
5681
56822008-10-02 Martin Rudalics <rudalics@gmx.at>
5683
5684 * process.c (Faccept_process_output): Fix doc-string.
5685
56862008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
5687
5688 * gmalloc.c (__sbrk): Also define for uClibc.
5689
5690 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
5691 for uClibc.
5692
56932008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5694
5695 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
5696 styles.
5697 (nsfont_open): Reenable the cache.
5698
56992008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5700
5701 * font.c (font_matching_entity): Reflect ATTRS in font selection.
5702 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
5703
57042008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
5705
5706 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
5707 a suspended terminal.
5708
57092008-09-30 Michael Albinus <michael.albinus@gmx.de>
5710
5711 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
5712
57132008-09-30 Eli Zaretskii <eliz@gnu.org>
5714
5715 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
5716
57172008-09-30 Chong Yidong <cyd@stupidchicken.com>
5718
5719 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
5720 in a continued line coincides with a line beginning.
5721
57222008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5723
5724 * nsfont.m (nsfont_trait_distance): Fix bug.
5725 (nsfont_list): Return a list rather than a vector (syncs with Handa
5726 changes of 2008-05-14).
5727 (nsfont_open): Improve logging.
5728
57292008-09-29 Andreas Schwab <schwab@suse.de>
5730
5731 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5732
57332008-09-28 Martin Rudalics <rudalics@gmx.at>
5734
5735 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
5736 name as char-resolve-modifiers.
5737 Reported by: Markus Triska <markus.triska@gmx.at>
5738
57392008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
5740
5741 * dispnew.c (init_display): Return earlier when running as a daemon.
5742
57432008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5744
5745 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
5746
57472008-09-27 Eli Zaretskii <eliz@gnu.org>
5748
5749 * composite.c (Fcomposition_get_gstring)
5750 (Fcompose_region_internal, Fcompose_string_internal)
5751 (Ffind_composition_internal): Doc fix.
5752 (syms_of_composite) <compose-chars-after-function>: Doc fix.
5753 (syms_of_composite) <auto-composition-function>: Doc fix.
5754 (syms_of_composite) <composition-function-table>: Doc fix.
5755
57562008-09-25 Chong Yidong <cyd@stupidchicken.com>
5757
5758 * search.c (wordify): New argument for lax word-ends.
5759 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
5760
57612008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
5762
5763 * lisp.h (is_daemon): Declare.
5764 * dispnew.c (init_display): Do not try to initialize the terminal
5765 when running as a daemon.
5766
57672008-09-22 Chong Yidong <cyd@stupidchicken.com>
5768
5769 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
5770 x_display_pixel_height.
5771
57722008-09-22 Martin Rudalics <rudalics@gmx.at>
5773
5774 * undo.c (record_point): Don't call Fundo_boundary for first
5775 change. (Bug#731)
5776
57772008-09-22 Juanma Barranquero <lekktu@gmail.com>
5778
5779 * emacs.c (Fdaemonp): Doc fix.
5780
57812008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
5782
5783 * emacs.c (main): Place #ifdef in the proper place.
5784
57852008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
5786
5787 * emacs.c (standard_args): Add --daemon.
5788 (main): Disconnect from the terminal when --daemon is passed.
5789 (is_daemon): New variable.
5790 (Fdaemonp): New function.
5791 (syms_of_emacs): Defsubr it.
5792
57932008-09-20 Chong Yidong <cyd@stupidchicken.com>
5794
5795 * xdisp.c (get_next_display_element): Handle string display
5796 correctly when checking for the end of a box run.
5797
57982008-09-20 Glenn Morris <rgm@gnu.org>
5799
5800 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
5801 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
5802 (Frename_file): Avoid copying to trash if a rename involves
5803 a delete. (Bug#964).
5804
58052008-09-20 Eli Zaretskii <eliz@gnu.org>
5806
5807 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
5808 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
5809 frames as well as termcap frames.
5810 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
5811 get_named_tty.
5812
58132008-09-19 Eli Zaretskii <eliz@gnu.org>
5814
5815 * process.c (procfs_system_process_attributes): Fix cmdline in
5816 case /proc/PID/cmdline is empty.
5817
5818 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
5819 x_display_pixel_height.
5820
58212008-09-19 Juanma Barranquero <lekktu@gmail.com>
5822
5823 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
5824
5825 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
5826 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
5827
58282008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
5829
5830 * dispextern.h (struct it): Move line_wrap away from the middle of
5831 bitfields. Move voffset in struct iterator_stack_entry after the
5832 bitfields. Move tab_width near after another short.
5833
58342008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
5835
5836 * frame.h (struct frame): Move alpha from the middle of bitfields.
5837
5838 * window.h (struct window): Move frozen_window_start_p after the
5839 rest of the bitfields to reduce padding.
5840
58412008-09-18 Chong Yidong <cyd@stupidchicken.com>
5842
5843 * xterm.h (x_display_info): Remove `height' and `width' members.
5844
5845 * nsterm.h (ns_display_info): Remove `height' and `width' members.
5846
5847 * w32term.h (w32_display_info): Remove `height', `width',
5848 `height_in', and `width_in' members.
5849
b8ff72fa
SM
5850 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5851 New functions.
aac0c6e3
MR
5852 (x_calc_absolute_position): Use them.
5853 (x_term_init): Omit removed `height' and `width' members.
5854
b8ff72fa
SM
5855 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5856 New functions.
aac0c6e3
MR
5857 (w32_read_socket, x_calc_absolute_position): Use them.
5858 (w32_initialize_display_info, w32_term_init): Omit removed members
5859 of w32_display_info.
5860
b8ff72fa
SM
5861 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
5862 New functions.
5863 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 5864
b8ff72fa
SM
5865 * xterm.c (x_display_pixel_height, x_display_pixel_width):
5866 New functions.
aac0c6e3
MR
5867 (x_calc_absolute_position): Use them.
5868 (x_term_init): Omit removed `height' and `width' members.
5869
5870 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
5871 (compute_tip_xy):
5872 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
5873 * xmenu.c (menu_position_func): Use x_display_pixel_height and
5874 x_display_pixel_width.
5875
58762008-09-18 Kenichi Handa <handa@m17n.org>
5877
5878 * composite.c (fill_gstring_header): Don't check FROM and TO here.
5879 (composition_compute_stop_pos): Fix handling of static composition.
5880 (Fcomposition_get_gstring): Check FROM and TO at first.
5881
58822008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
5883
46e722a9 5884 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
5885 mixup (YAILOM).
5886
58872008-09-17 Chong Yidong <cyd@stupidchicken.com>
5888
5889 * indent.c (Fvertical_motion): Use position reported by iterator
5890 instead of PT for determining screen motion (bug#943).
5891
58922008-09-17 Romain Francoise <romain@orebokech.com>
5893
5894 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
5895
58962008-09-17 Kenichi Handa <handa@m17n.org>
5897
5898 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
5899
5900 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
5901 if necessary.
5902
59032008-09-16 Kenichi Handa <handa@m17n.org>
5904
5905 * coding.c (make_conversion_work_buffer): Avoid calling
5906 Fget_buffer_create if it is not necessary.
5907
59082008-09-15 Martin Rudalics <rudalics@gmx.at>
5909
5910 * window.c (Fselect_window): Don't update window_select_count and
5911 use_time when norecord is not nil.
5912
59132008-09-14 Kenichi Handa <handa@m17n.org>
5914
5915 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
5916 specpdl_ptr.
5917
59182008-09-12 Kenichi Handa <handa@m17n.org>
5919
5920 * indent.c (scan_for_column): Don't handle automatic composition
5921 if the current buffer is not associated with a window.
5922
5923 * composite.c (composition_reseat_it): If the current buffer is
5924 not associated with a window, ignore the automatic composition.
5925 (find_automatic_composition): Likewise.
5926
59272008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
5928
5929 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
5930 (Fgpm_mouse_stop): Use it.
5931 * termhooks.h (close_gpm): Declare.
5932 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
5933 connection if Gpm_GetEvent fails.
5934
5935 * window.c (set_window_buffer): Always preserve current-buffer.
5936
59372008-09-12 Glenn Morris <rgm@gnu.org>
5938
5939 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
5940
59412008-09-11 Glenn Morris <rgm@gnu.org>
5942
5943 * charset.c (charset-map-path): Doc fix.
5944
59452008-09-10 Kenichi Handa <handa@m17n.org>
5946
5947 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
5948
5949 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
5950 compose a grapheme cluster with the preceding base glyph.
5951
5952 * composite.c (composition_compute_stop_pos): Fix previous change.
5953 Reset cmp_it->id to -1 at first.
5954
59552008-09-10 Glenn Morris <rgm@gnu.org>
5956
5957 * Makefile.in (character.o, chartab.o): Fix config.h typo.
5958
59592008-09-09 Chong Yidong <cyd@stupidchicken.com>
5960
5961 * keyboard.c (read_key_sequence): Reapply translation maps when
5962 switching keyboards.
5963
59642008-09-09 Kenichi Handa <handa@m17n.org>
5965
5966 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
5967 characters.
5968
5969 * composite.c (FORWARD_CHAR): Fix calculation
5970 of (POSITION).pos_byte.
5971 (composition_compute_stop_pos): Limit the search of composition to
5972 at most 500 characters ahead. If we reach the limit or find a
5973 newline, set cmp_it->ch to -2 and return 0.
5974 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
5975
59762008-09-08 Kenichi Handa <handa@m17n.org>
5977
5978 * indent.c (Fvertical_motion): Be sure to set
5979 it_overshoot_expected if it.cmp_it.id is non-negative.
5980
59812008-09-07 Andreas Schwab <schwab@suse.de>
5982
5983 * callproc.c (Fcall_process): Don't hold references to string data
5984 across garbage collection. Move initialisation of new_argv down
5985 to avoid compiler bug.
5986
59872008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
5988
5989 * process.c (Fsystem_process_attributes): Doc fix.
5990
59912008-09-07 Chong Yidong <cyd@stupidchicken.com>
5992
5993 * callproc.c (Fcall_process): Canonicalize current directory name.
5994
5995 * xdisp.c (move_it_to): When moving by vpos, ensure that the
5996 iterator advances to the next line if the current line ends in a
5997 continued tab.
5998
59992008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
6000
6001 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
6002 member to point to cmp_from.
6003
6004 * xdisp.c: Doc fix for references to gidx data member.
6005
60062008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
6007
6008 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
6009
60102008-09-07 Kenichi Handa <handa@m17n.org>
6011
6012 * composite.c (FORWARD_CHAR): Check STOP after
6013 incrementing (POSITION).pos.
6014
60152008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
6016
6017 * process.c (Fsystem_process_attributes): Doc fix.
6018
60192008-09-06 Chong Yidong <cyd@stupidchicken.com>
6020
6021 * keyboard.c (Ftop_level): Doc fix.
6022
60232008-09-06 Eli Zaretskii <eliz@gnu.org>
6024
6025 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
6026 minibuffer, don't let lower part of menu invade the echo area.
6027
6028 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
6029 "char *q" to access menu text and advance through it. Revert the
6030 change that displayed ">" instead of ASCII character 0x10.
6031
60322008-09-05 Eli Zaretskii <eliz@gnu.org>
6033
6034 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
6035 toggle boxes and radio buttons on MS-DOS as well.
6036
60372008-09-05 Kenichi Handa <handa@m17n.org>
6038
6039 * composite.c (autocmp_chars): Check lookback count.
6040 (composition_compute_stop_pos): Set cmp_it->lookback.
6041 (composition_reseat_it): Check lookback count.
6042 (struct position_record): New struct.
6043 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
6044 (find_automatic_composition): New function.
6045 (composition_adjust_point): Use find_automatic_composition.
6046
6047 * dispextern.h (struct composition_it): New member lookback.
6048
60492008-09-02 Chong Yidong <cyd@stupidchicken.com>
6050
6051 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
6052 if moving by a single line.
6053
60542008-09-02 Andreas Schwab <schwab@suse.de>
6055
6056 * xterm.c (x_delete_display): Fix merge error.
6057
6058 * fileio.c (Fexpand_file_name): Remove unused variables.
6059
60602008-09-02 Eli Zaretskii <eliz@gnu.org>
6061
6062 * fileio.c (Fexpand_file_name): Copy argument `name' into local
6063 storage on all platforms, not just on DOS_NT.
6064
60652008-09-02 Jason Rumney <jasonr@gnu.org>
6066
b8ff72fa
SM
6067 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
6068 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
6069
60702008-09-01 Chong Yidong <cyd@stupidchicken.com>
6071
6072 * xfaces.c (Finternal_set_alternative_font_family_alist)
6073 (Finternal_set_alternative_font_registry_alist): Properly copy
6074 entire alist structure.
6075
60762008-09-01 Kenichi Handa <handa@m17n.org>
6077
d66c0241 6078 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 6079 representative chars of the script is a vector.
d66c0241
JB
6080 (ftfont_list): Handle the case where the representative chars of
6081 the script is a vector.
aac0c6e3
MR
6082
6083 * character.c (syms_of_character): Docstring of
6084 script-representative-chars fixed.
6085
60862008-08-31 Eli Zaretskii <eliz@gnu.org>
6087
6088 * msdos.c (BUILD_CHAR_GLYPH): New macro.
6089 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
6090 the menu. Allocate larger buffer for `text', to account for
6091 possible ^C characters.
6092
60932008-08-31 Martin Rudalics <rudalics@gmx.at>
6094
6095 * xdisp.c (prepare_menu_bars): Don't call
6096 Vwindow_size_change_functions with arg Qt.
6097
60982008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
6099
6100 * font.h (font_range):
6101 * fileio.c (report_file_error):
46e722a9
SM
6102 * composite.c (composition_update_it): Yet another int/Lisp_Object
6103 mixup (YAILOM).
aac0c6e3
MR
6104
61052008-08-30 Glenn Morris <rgm@gnu.org>
6106
6107 * data.c (Fmake_variable_frame_local): Doc fix.
6108
6109 * frame.c (Fmodify_frame_parameters): Doc fix.
6110
61112008-08-30 Eli Zaretskii <eliz@gnu.org>
6112
6113 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
6114 needed by GetTokenInformation.
6115 (w32_system_process_attributes): Check return values of all system
6116 APIs.
6117
6118 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
6119 only when the state changes.
6120 (IT_update_begin, IT_update_end): Add termscript trace.
6121
6122 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
6123 clipboard is unavailable. Set dst to NULL if it doesn't point to
6124 malloc'ed data.
6125 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
6126 passing random values to xfree.
6127
6128 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 6129 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
6130
61312008-08-29 Jason Rumney <jasonr@gnu.org>
6132
6133 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
6134
61352008-08-29 Eli Zaretskii <eliz@gnu.org>
6136
6137 * composite.c (fill_gstring_body): Avoid compiler warnings.
6138
6139 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
6140 LGLYPH_SET_CODE to avoid compiler warnings.
6141
2ae37cf0 6142 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
6143
6144 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
6145
6146 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
6147 LGLYPH_SET_CODE.
6148
61492008-08-29 Kenichi Handa <handa@m17n.org>
6150
6151 * fileio.c (report_file_error): Don't downcase the first character
6152 of errstring if it is still unibyte.
6153
61542008-08-29 Kenichi Handa <handa@m17n.org>
6155
6156 These changes are to re-implement the automatic composition so
6157 that it doesn't use text properties.
6158
6159 * Makefile.in (ftfont.o): Depend on composite.h.
6160 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
6161
6162 * character.h (Vunicode_category_table): Extern it.
6163
6164 * character.c (Vunicode_category_table): New variable.
6165 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
6166
6167 * chartab.c (optimize_sub_char_table): Perform more greedy
6168 optimization.
6169
b8ff72fa
SM
6170 * composite.h (enum composition_method):
6171 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
6172 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
6173 (Vcomposition_function_table): Extern it.
6174 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
6175 (composition_gstring_put_cache, composition_gstring_from_id)
6176 (composition_gstring_p, composition_gstring_width)
6177 (composition_compute_stop_pos, composition_reseat_it)
6178 (composition_update_it, composition_adjust_point): Extern them.
6179 (Fcomposition_get_gstring): EXFUN it.
6180
d66c0241 6181 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
6182 (Vcomposition_function_table)
6183 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
6184 (gstring_hash_table, gstring_work, gstring_work_headers):
6185 New variables.
aac0c6e3
MR
6186 (gstring_lookup_cache, composition_gstring_put_cache)
6187 (composition_gstring_from_id, composition_gstring_p)
6188 (composition_gstring_width, fill_gstring_header)
6189 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
6190 (composition_reseat_it, composition_update_it)
b8ff72fa 6191 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
6192 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
6193 and gstring_work_headers. DEFVAR_LISP composition-function-table.
6194 Defsubr compostion_get_gstring.
6195
6196 * dispextern.h (struct glyph): New union u.cmp. Delete the member
6197 cmp_id.
6198 (struct glyph_string): Delete the member gidx. New members
6199 cmp_id, cmp_from, and cmp_to.
6200 (enum it_method): Delete GET_FROM_COMPOSITION.
6201 (struct composition_it): New struct.
6202 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
6203 Delete c, len, cmp_id, cmp_len in u.comp.
6204
6205 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 6206 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 6207 (enum lglyph_indices): Likewise.
b8ff72fa 6208 (font_range): Adjust extern.
aac0c6e3
MR
6209 (font_fill_lglyph_metrics): Extern it.
6210
6211 * font.c (QCf): New variable.
6212 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6213 (font_prepare_composition): Delete this function.
6214 (font_range): Type and arguments changed.
6215 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
6216 (font_fill_lglyph_metrics): New function.
b8ff72fa 6217 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 6218 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
6219 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
6220 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
6221
6222 * fontset.h (font_for_char): Extern it.
6223
6224 * fontset.c (font_for_char): New function.
6225
6226 * ftfont.c: Include composite.h.
6227 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 6228 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
6229
6230 * indent.c: Include composite.h and dispextern.h.
6231 (check_composition): Delete this function.
6232 (scan_for_column): Handle composition by
6233 composition_compute_stop_pos, composition_reseat_it, and
6234 composition_update_it.
6235 (compute_motion): Likewise.
6236 (Fvertical_motion): Fix checking of composition.
6237
6238 * keyboard.c (adjust_point_for_property): Check composition by
6239 composition_adjust_point.
6240
b8ff72fa 6241 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
6242 struct glyph_string.
6243
b8ff72fa
SM
6244 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
6245 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
6246 struct glyph.
6247 (produce_composite_glyph): Likewise.
6248
b8ff72fa
SM
6249 * w32term.c (x_draw_composite_glyph_string_foreground):
6250 Adjust for the change of struct glyph_string.
aac0c6e3
MR
6251 (x_draw_glyph_string): Likewise.
6252
6253 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
6254 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
6255
6256 * xdisp.c: Include font.h.
6257 (it_props): Delete the entry for Qauto_composed.
6258 (init_iterator): Initialize it->cmp_it.id to -1.
6259 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 6260 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
6261 (handle_auto_composed_prop): Delete it.
6262 (handle_composition_prop): Handle only static composition.
6263 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
6264 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 6265 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
6266 (pop_it): Likewise.
6267 (get_next_element): Delete next_element_from_composition.
6268 (CHAR_COMPOSED_P): New macro.
6269 (get_next_display_element): For automatic composition, get a face
6270 from the font in the glyph-string.
6271 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 6272 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
6273 (next_element_from_string): Check if the character at the current
6274 position is composed by CHAR_COMPOSED_P.
6275 (next_element_from_buffer): Likewise.
d66c0241
JB
6276 (next_element_from_composition): Adjust for the change of struct it.
6277 Update it->cmp_it.
b8ff72fa
SM
6278 (dump_glyph): Adjust for the change of struct glyph.
6279 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
6280 it and struct glyph. Don't handle automatic composition here.
6281 (fill_gstring_glyph_string): New function.
6282 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 6283 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
6284 (BUILD_GSTRING_GLYPH_STRING): New macro.
6285 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
6286 automatic composition.
b8ff72fa 6287 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 6288 struct glyph.
b8ff72fa 6289 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 6290
b8ff72fa 6291 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
6292 the change of struct glyph_string.
6293 (x_draw_glyph_string): Likewise.
6294
62952008-08-29 Glenn Morris <rgm@gnu.org>
6296
6297 * buffer.c (word-wrap): Doc fix.
6298 * xdisp.c (truncate-partial-width-windows): Doc fix.
6299 Increase default to 50.
6300
63012008-08-29 Chong Yidong <cyd@stupidchicken.com>
6302
6303 * xdisp.c (update_tool_bar_unwind): New function.
6304 (update_tool_bar): Temporarily set selected frame before building
6305 tool-bar items.
6306
63072008-08-28 Michael Albinus <michael.albinus@gmx.de>
6308
6309 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
6310 snprintf, respectively.
6311 (xd_append_arg): Convert strings with Fstring_make_unibyte.
6312
63132008-08-28 Chong Yidong <cyd@stupidchicken.com>
6314
6315 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
6316 LDFLAGS to GNUstep CC invocation.
6317
63182008-08-27 Chong Yidong <cyd@stupidchicken.com>
6319
6320 * indent.c (Fvertical_motion): Revert last change. Handle the
6321 general case where we are moving forward, and PT spans multiple
6322 screen lines.
6323
6324 * eval.c (find_handler_clause): Temporarily increase
6325 max-lisp-eval-depth while printing the backtrace buffer, to
6326 guarantee that help-mode code can run.
6327
63282008-08-27 Eli Zaretskii <eliz@gnu.org>
6329
6330 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
6331 colors under -rv.
6332 (IT_set_frame_parameters): Don't swap foreground and background
6333 colors if `(reverse . t)' is present in the frame properties.
6334 (internal_terminal_init): Call init_frame_faces only for the
6335 initial frame.
6336
63372008-08-27 Andreas Schwab <schwab@suse.de>
6338
6339 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
6340
63412008-08-27 Andreas Schwab <schwab@suse.de>
6342
6343 * search.c (search_buffer): Set char_base to zero only at the end.
6344
63452008-08-27 Kenichi Handa <handa@m17n.org>
6346
b8ff72fa 6347 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
6348
63492008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
6350
6351 * xterm.c (x_term_init): Temporarily hide the partially
6352 initialized terminal while calling vendor-specific-keysyms.
6353
63542008-08-26 Eli Zaretskii <eliz@gnu.org>
6355
6356 * msdos.c (internal_terminal_init): Most initializations done only
6357 once, especially initial_screen_colors[] and termscript open.
6358
63592008-08-26 Chong Yidong <cyd@stupidchicken.com>
6360
6361 * eval.c (Fcondition_case): Doc fix.
6362
6363 * widgetprv.h (EmacsFramePart): Change font member to the new font
6364 struct.
6365
6366 * widget.c: Include character.h and font.h for XSETFONT.
6367 (setup_frame_gcs): Compute X font id from font struct, just once.
6368
63692008-08-26 Eli Zaretskii <eliz@gnu.org>
6370
6371 * term.c (get_named_tty): Fix last change.
6372
63732008-08-26 Chong Yidong <cyd@stupidchicken.com>
6374
6375 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 6376 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
6377
63782008-08-25 Eli Zaretskii <eliz@gnu.org>
6379
6380 * frame.c (do_switch_frame): Mark previously displayed frame as
6381 obscured for FRAME_MSDOS_P frames as well.
6382
63832008-08-24 Eli Zaretskii <eliz@gnu.org>
6384
6385 * frame.c (make_terminal_frame): Initialize f->terminal,
6386 f->terminal->reference_count, and scroll bars on MS-DOS as well.
6387 Set the top frame to newly created frame.
6388 (Fmake_terminal_frame): Reuse the_only_display_info.
6389
6390 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
6391 estimating available memory.
6392
b97439ce 63932008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
6394
6395 * nsterm.m (ns_draw_window_cursor): Don't call
6396 NSDisableScreenUpdates and NSEnableScreenUpdates on
6397 non-NS_IMPL_COCOA systems.
6398
63992008-08-23 Andreas Schwab <schwab@suse.de>
6400
6401 * process.c (procfs_system_process_attributes): Fix use of
6402 uninitialized variables.
6403
64042008-08-23 Eli Zaretskii <eliz@gnu.org>
6405
6406 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
6407
6408 * dispnew.c (init_display): Remove MS-DOS specific conditions for
6409 calling tty-set-up-initial-frame-faces.
6410
b8ff72fa
SM
6411 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
6412 Allow MSDOS frames along with X frames.
aac0c6e3
MR
6413
6414 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
6415 addition to output_termcap.
6416
6417 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
6418
6419 * termchar.h (FRAME_TTY): Support output_msdos_raw.
6420 (struct tty_display_info) [MSDOS]: Add fields related to mouse
6421 highlight.
6422
6423 * process.c [!subprocesses]: Define QCname.
6424 (syms_of_process): Intern and staticpro it.
6425
6426 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
6427 Adjust for changes in encoding/decoding routines.
6428 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
6429 encode_coding and decode_coding.
6430
b8ff72fa 6431 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
6432
6433 * dosfns.c: Include frame.h before termhooks.h.
6434 (dos_cleanup): Use CURTTY ()->termscript instead of a global
6435 variable termscript.
6436
6437 * s/msdos.h (USER_FULL_NAME): Define.
6438 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
6439
6440 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
6441 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
6442 pw->pw_gecos.
6443
6444 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
6445 SELECTED_FRAME as additional (1st) argument.
6446 (tty_read_avail_input): Handle output_msdos_raw in
6447 addition to output_termcap.
6448
6449 * msdos.c: Include frame.h before termhooks.h.
6450 (mouse_on, mouse_off, mouse_moveto, mouse_init)
6451 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
6452 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
6453 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
6454 (IT_set_terminal_modes, IT_reset_terminal_modes)
6455 (IT_set_frame_parameters): Use tty->termscript instead of a global
6456 variable termscript.
6457 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
6458 global variable terminal_coding. Don't refer to
6459 Vnonascii_translation_table.
6460 (internal_terminal_init): Set Vwindow_system in current_kboard.
6461 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
6462 Announce date and time of session start, if termscript is open.
6463 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
6464 term.c:init_tty). Open termscript only of not already open.
6465 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
6466 here instead of dos_ttraw. Don't initialize display if this is an
6467 initial tty. Don't set FRAME_FONT.
6468 (Vwindow_system_version): Bump to 23.
6469 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
6470 is available, set up mouse_position_hook.
6471 (dos_ttraw, IT_set_terminal_modes): If called with initial
6472 terminal, do nothing.
6473 (IT_set_frame_parameters): Handle the Qtty_type frame
6474 parameter by calling internal_terminal_init.
6475 (dos_set_window_size, show_mouse_face)
6476 (clear_mouse_face, IT_note_mode_line_highlight)
6477 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
6478 (dos_rawgetc): Use tty_display_info instead of x_display_info.
6479 (initialize_msdos_display): New function.
6480 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
6481 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
6482 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
6483 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 6484 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
6485 (request_sigio, unrequest_sigio): Don't define, now defined on
6486 sysdep.c.
6487 (IT_write_glyphs): Rewrite to use encode_terminal_code.
6488
6489 * term.c [MSDOS]: Include msdos.h.
6490 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
6491 conditional to DOS_NT. Allow only one call to this function in a
6492 session. Don't allocate a new struct tty_display_info; instead,
6493 reuse the_only_display_info. Call get_tty_size to get screen
6494 dimensions. Call init_baud_rate to set bad_rate.
6495 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
6496 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 6497 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
6498 (get_tty_terminal, get_named_tty, Ftty_type)
6499 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
6500 output_termcap.
b8ff72fa
SM
6501 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
6502 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 6503 only when subprocesses are supported.
aac0c6e3
MR
6504
6505 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
6506 f->output_data.x.
6507 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
6508 terminal devices.
6509
5582fbc7 6510 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
6511 x_output.
6512 (FRAME_FONT): Use output_data.tty.
6513 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
6514 (struct x_display_info): Rename from display_info. Update all users in
6515 msdos.c.
aac0c6e3 6516 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 6517 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
6518 (dos_ttraw): Update prototype.
6519
6520 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
6521 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
6522
65232008-08-23 Jason Rumney <jasonr@gnu.org>
6524
6525 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
6526 (fn_TIFFSetDirectory): New library function used.
6527 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
6528 (tiff_load): Use :index to select among multiple images. Set count
6529 property when multiple images exist.
6530 (gif_format): Use :index, not :image.
6531
65322008-08-23 Chong Yidong <cyd@stupidchicken.com>
6533
6534 * xdisp.c (try_scrolling): Check INT_MAX instead of
6535 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
6536 to obtain INT_MAX.
6537
65382008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
6539
6540 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
6541
65422008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
6543
6544 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
6545 GNUstep library location.
6546
65472008-08-21 Chong Yidong <cyd@stupidchicken.com>
6548
6549 * xfaces.c (x_update_menu_appearance): Check validity of menu font
6550 before using it.
6551
6552 * puresize.h (BASE_PURESIZE): Increase to 1250000.
6553
65542008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6555
6556 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
6557 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
6558 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
6559 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
6560 (EmacsApp-cursor_blink_handler): Remove declaration.
6561 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
6562 match 01 Feb 2008 changes in xterm.c.
6563 (ns_read_socket): Add cast to avoid warning.
6564 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
6565 GNUstep.
6566
65672008-08-20 Chong Yidong <cyd@stupidchicken.com>
6568
6569 * xselect.c (x_get_foreign_selection): Return nil if desired
6570 selection could not be obtained, instead of signalling an error.
6571
65722008-08-20 David Reitter <david.reitter@gmail.com>
6573
6574 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
6575 * nsterm.m: Remove ns-specific code for cursor blinking.
6576 (ns_draw_window_cursor): Clear cursor properly rather than
6577 redrawing the area. Respect width of bar cursors.
6578 These changes enable the use of generic blink-cursor-mode and
6579 generic cursor types in NS and support smooth cursor movements (do
6580 not blink off after command).
6581 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
6582 Nextstep, too.
6583
65842008-08-19 Kenichi Handa <handa@m17n.org>
6585
6586 * font.c (Vfont_log_deferred): New variable.
6587 (font_add_log): Check Vfont_log_deferred.
6588 (font_deferred_log): New function.
6589
6590 * font.h (font_deferred_log): Extern it.
6591
6592 * fontset.c (reorder_font_vector): Use encoding charset of fonts
6593 for sorting.
6594 (face_for_char): Use deferred log.
6595
65962008-08-18 Kenichi Handa <handa@m17n.org>
6597
6598 * fontset.c (face_for_char): Add font log.
6599
6600 * font.c (font_add_log): Add the font properties :script, :lang,
6601 and :otf in the log.
6602
66032008-08-17 Chong Yidong <cyd@stupidchicken.com>
6604
6605 * xdisp.c: Remove dead code.
6606 (handle_invisible_prop, next_overlay_string): Defer call to
6607 setup_for_ellipsis.
6608 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
6609
66102008-08-15 Chong Yidong <cyd@stupidchicken.com>
6611
6612 * xfaces.c (lookup_derived_face): Properly handle possible zero
6613 return value of get_lface_attributes.
6614 (merge_faces): Don't tell lookup_derived_face to signal an error
6615 if face is not found.
6616
6617 * dired.c (Fdirectory_files): Doc fix.
6618
6619 * process.c (make_process): Initialize kill_without_query struct
6620 member.
6621
66222008-08-15 Eli Zaretskii <eliz@gnu.org>
6623
6624 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
6625 Alternative calculation of totphys for Visual Studio 6.
6626
6627 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
6628
6629 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
6630 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
6631 All users changed.
6632 (stat): Only root directory passed to GetDriveType. Allow RAM
6633 disk as well as local fixed disk when w32-get-true-file-attributes
6634 is set to `local'.
6635 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
6636 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
6637 (w32_cached_id, w32_add_to_cache): New functions.
6638 (get_name_and_id): Look account names in the cache before calling
6639 lookup_account_sid.
6640 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
6641 New initialization flags.
6642 (globals_of_w32): Initialize them to zero.
6643 (w32_system_process_attributes): Use w32_cached_id and
6644 w32_add_to_cache.
6645
66462008-08-14 Lawrence Mitchell <wence@gmx.li>
6647
6648 * lread.c (Fread_char, Fread_char_exclusive): If no character
6649 event is read before timeout is reached, return nil, rather than
6650 converting to a number.
6651
66522008-08-14 Chong Yidong <cyd@stupidchicken.com>
6653
6654 * fns.c (use_dialog_box): Doc fix.
6655
6656 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
6657 on OS X.
6658
66592008-08-13 Chong Yidong <cyd@stupidchicken.com>
6660
6661 * frame.c (Qns_parse_geometry): New var.
6662 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
6663
66642008-08-11 Chong Yidong <cyd@stupidchicken.com>
6665
6666 * xdisp.c (x_produce_glyphs): Handle the case when font has no
6667 space character in calculating tabs.
6668
66692008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
6670
6671 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
6672
66732008-08-10 Glenn Morris <rgm@gnu.org>
6674
6675 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
6676 silence gcc "limited range of data type" warnings in some
6677 make_fixnum_or_float calls.
6678
66792008-08-09 Eli Zaretskii <eliz@gnu.org>
6680
6681 * w32.c (w32_system_process_attributes): If the process does not
6682 exist, return nil.
6683
6684 * w32.c: Include thelp32.h, psapi.h and coding.h.
6685 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
6686 declarations.
6687 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
6688 (Process32Next_Proc): New typedefs.
6689 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
6690 (g_b_init_process32_next, g_b_init_open_thread_token)
6691 (g_b_init_impersonate_self, g_b_init_revert_to_self)
6692 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
6693 (g_b_init_get_process_working_set_size)
6694 (g_b_init_global_memory_status_ex): New static variables.
6695 (globals_of_w32): Initialize them.
6696 (create_toolhelp32_snapshot, process32_first, process32_next)
6697 (open_thread_token, impersonate_self, revert_to_self)
6698 (get_process_memory_info, get_process_working_set_size)
6699 (global_memory_status, global_memory_status_ex): New wrapper
6700 functions.
6701 (w32_list_system_processes, w32_system_process_attributes)
6702 (enable_privilege, restore_privilege, ltime, process_times):
6703 New functions.
6704 (convert_time_raw): New function.
6705 (convert_time): Remove conversion of FILETIME into time in 100
6706 nsec units, call convert_time_raw instead.
6707
6708 * process.h (w32_list_system_processes, w32_system_process_attributes):
6709 Add prototypes.
6710 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
6711 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
6712 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
6713 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
6714
6715 * process.c (Fsystem_process_attributes): Doc fix.
6716
67172008-08-08 Chong Yidong <cyd@stupidchicken.com>
6718
6719 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
6720 a continued multi-char glyph; if so, advance to the actual glyph.
6721
67222008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
6723
6724 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
6725
6726 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
6727 (.m.o): Use it.
6728 * config.in: Regenerate.
6729
67302008-08-07 Chong Yidong <cyd@stupidchicken.com>
6731
6732 * xdisp.c (redisplay_window): Revert last change.
6733 (try_window): Check bottom scroll margin too.
6734
67352008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6736
6737 * config.in: Regenerate.
6738
6739 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
6740 -list-load-path-shadows'.
6741 (nsgui.h): Reduce number of things depending on it.
6742
67432008-08-06 Chong Yidong <cyd@stupidchicken.com>
6744
6745 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
6746 instead of window-end which does the wrong thing at eob.
6747 (try_cursor_movement): Minor optimization.
6748 (redisplay_window): If scroll margin is defined, don't assume
6749 window doesn't need scrolling.
6750
67512008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6752
6753 * config.in: Regenerate.
6754
6755 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
6756 (mostlyclean): Don't delete *.d under NS.
6757
6758 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
6759
67602008-08-06 Kenichi Handa <handa@m17n.org>
6761
6762 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
6763
67642008-08-06 Andreas Schwab <schwab@suse.de>
6765
6766 * config.in: Regenerate.
6767
67682008-08-05 Chong Yidong <cyd@stupidchicken.com>
6769
6770 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
6771 forcing a window start.
6772
6773 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
6774 (auto_save_1): Update modtime when auto-save-list-file-name is on.
6775
67762008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6777
6778 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
6779 argument.
6780
67812008-08-05 Juanma Barranquero <lekktu@gmail.com>
6782
6783 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
6784 <scroll-down-aggressively, before-change-functions>:
6785 <after-change-functions>: Reflow docstrings.
6786
67872008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6788 Ken Raeburn <raeburn@gnu.org>
6789
6790 Dock menu customization, based on a patch by Ken Raeburn, plus some
6791 other fixes.
6792 * nsmenu.m (dockMenu): New variable.
6793 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
6794
6795 * nsterm.h (dockMenu): Declare.
6796
6797 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
6798 (ns_term_init): Initialize dockMenu.
6799 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
6800 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
6801 left.
6802
6803 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
6804
68052008-08-04 Chong Yidong <cyd@stupidchicken.com>
6806
6807 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
6808
6809 * config.in: Regenerate.
6810
68112008-08-04 Seiji Zenitani <zenitani@mac.com>
6812
6813 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
6814
68152008-08-04 Chong Yidong <cyd@stupidchicken.com>
6816
6817 * nsterm.h (find_and_call_menu_selection): Fix prototype.
6818
68192008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6820
6821 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
6822
6823 * keyboard.h: Comment an #endif.
6824
6825 * lisp.h (have_menus_p): Adjust comment.
6826
6827 * menu.c (find_and_return_menu_selection): Fix comparison with
6828 client_data.
6829
6830 * nsmenu.m (popup_activated_flag): New variable.
6831 (popup_activated): New function.
6832 (menu-or-popup-active-p): New exported lisp definition.
6833 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
6834 when popup done.
6835 (ns_popup_dialog): Set popup_activated_flag.
6836
6837 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
6838 version for GNUstep (handled by conditional typedef in nsterm.m).
6839 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
6840 in rgb.txt).
6841
6842 * process.c (init_process): Use DARWIN_OS, not DARWIN.
6843
6844 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
6845
6846 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
6847
6848 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
6849 shortcircuit if popup_activated like GTK and X toolkit.
6850
6851 * m/inter386.h: Change DARWIN to DARWIN_OS.
6852
6853 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
6854 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
6855 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
6856 comment on NO_SOCK_SIGIO.
6857
68582008-08-03 Chong Yidong <cyd@stupidchicken.com>
6859
6860 * nsterm.m (windowDidResize): Remove stopModal call.
6861
68622008-08-03 Andreas Schwab <schwab@suse.de>
6863
6864 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
6865 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
6866
68672008-08-02 Chong Yidong <cyd@stupidchicken.com>
6868
6869 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
6870 Don't use uninitialized pointer variable when using getrlimit.
6871
68722008-08-02 Jason Rumney <jasonr@gnu.org>
6873
6874 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
6875
68762008-08-02 Eli Zaretskii <eliz@gnu.org>
6877
6878 * alloc.c (NSTATICS): Bump to 0x640.
6879
6880 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
6881
6882 * lisp.h: Add prototype for directory_files_internal.
6883
6884 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
6885 New functions.
6886 (syms_of_process): Defsubr them. Add initializations for various
6887 Q* symbols used in procfs_system_process_attributes.
6888 (procfs_list_system_processes, procfs_system_process_attributes)
6889 [HAVE_PROCFS]: New functions.
6890 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
6891 (procfs_get_total_memory): New functions.
6892
68932008-08-01 Juanma Barranquero <lekktu@gmail.com>
6894
6895 * xfaces.c (Fx_load_color_file): Fix previous change;
6896 it is #ifdef WINDOWSNT, not WINDOWS_NT.
6897
68982008-08-01 Michael Albinus <michael.albinus@gmx.de>
6899
6900 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
6901
69022008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6903
6904 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
6905
69062008-08-01 Chong Yidong <cyd@stupidchicken.com>
6907
6908 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
6909
6910 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
6911 define NSApplicationDelegateReplySuccess.
6912 (EmacsView -converstationIdentifier): Use long instead of
6913 NSInteger for GNUstep, since it doesn't have NSInteger.
6914
6915 * xmenu.c: Revert last change.
6916
6917 * keyboard.h: Fix last change.
6918
69192008-08-01 Juanma Barranquero <lekktu@gmail.com>
6920
6921 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
6922 on Windows.
6923
69242008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6925
6926 Warning clearing and clean-up in NS port.
6927 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
6928 Add prototypes.
6929 * nsgui.h (FACE_DEFAULT): Remove, unused.
6930 (XGCValues): Change colors to unsigned long.
6931 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
6932 nsterm.m.
6933 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
6934 (ns_list_fonts): Remove, unused.
6935 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
6936 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
6937 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
6938 (nsfont_draw): Compare face colors to 0, not nil.
6939 * nsmenu.m (struct widget_value): Drop unneeded declaration.
6940 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
6941 (-addSubmenuWithTitle:): Use NSMenuItem class.
6942 (ns_popup_menu): Use NO, not NULL, for enabled setting.
6943 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
6944 (ns_clip_to_row): Make gc arg a BOOL.
6945 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
6946 ns_clip_to_row() call.
6947 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
6948 used). Cast FRAME_FONT assignments.
6949 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
6950 (ns_string_to_lispmod): Change arg to const char.
6951 (ns_term_init): Use NSMenuItem class.
6952 (EmacsApp -openFile:): Move to different section of file.
6953 (EmacsApp -application:openFiles:): Don't return a value, call
6954 -replyToOpenOrPrint:.
6955 (EmacsView -keyDown:): Fix up cast.
6956 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
6957 (EmacsView -menuDown:): Cast tag in call to
6958 find_and_call_menu_selection().
6959 (ns_list_fonts): Remove, unused.
6960 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
6961 (ns_fontname_to_xlfd): Make static.
6962 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
6963 Remove prototypes (now in keyboard.h).
6964 (next_menubar_widget_id): Remove, unused.
6965 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
6966 Remove prototypes (now in keyboard.h).
6967 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
6968
69692008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
6970
6971 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
6972 (floatfns.o): Depend on syssignal.h.
6973 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
6974
6975 * systty.h: Fix previous change that removed BSD_TERMIOS.
6976 Add comments to #ifdefs.
6977
69782008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6979
6980 * w32fns.c (w32-load-color-file): Remove.
6981 (x-open-connection): Use renamed Fx_load_color_file.
6982 * xfaces.c (x-load-color-file): Add.
6983 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
6984 Emacs.clr.
6985 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
6986
69872008-07-31 Michael Albinus <michael.albinus@gmx.de>
6988
6989 * dbusbind.c (Fdbus_call_method_asynchronously)
6990 (Fdbus_method_error_internal): New defuns.
6991 (xd_read_message): Handle also reply messages.
6992 (Vdbus_registered_functions_table): Extend docstring.
6993
69942008-07-31 Juanma Barranquero <lekktu@gmail.com>
6995
6996 * keyboard.c (gobble_input): Fix previous change.
6997
69982008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
6999
7000 * bitmaps/README:
7001 * xfns.c:
7002 * termcap.c:
7003 * term.c:
7004 * syswait.h:
7005 * systty.h:
7006 * systime.h:
7007 * syssignal.h:
7008 * sysdep.c:
7009 * process.h:
7010 * process.c:
7011 * print.c:
7012 * ndir.h:
7013 * lread.c:
7014 * keyboard.c:
7015 * getpagesize.h:
7016 * floatfns.c:
7017 * fileio.c:
7018 * emacs.c:
7019 * doc.c:
7020 * dispnew.c:
7021 * dired.c:
7022 * data.c:
7023 * callproc.c:
7024 * buffer.c:
7025 * README:
7026 * Makefile.in:
7027 * s/template.h:
7028 * s/msdos.h:
7029 * m/vax.h: Remove VMS support.
7030 * s/vms.h:
7031 * vlimit.h:
7032 * uaf.h:
7033 * temacs.opt:
7034 * param.h:
7035 * ioctl.h: Remove file.
7036
70372008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
7038
7039 * s/ms-w32.h (MULTI_KBOARD): Remove.
7040 * xterm.c:
7041 * xselect.c:
7042 * xfns.c:
7043 * window.c:
7044 * w32term.c:
7045 * w32fns.c:
7046 * terminal.c:
7047 * termhooks.h:
7048 * term.c:
7049 * sysdep.c:
7050 * keyboard.h:
7051 * keyboard.c:
7052 * frame.h:
7053 * frame.c:
7054 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
7055 * config.in: Regenerate.
7056
70572008-07-30 Jason Rumney <jasonr@gnu.org>
7058
7059 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
7060
7061 * w32font.c (w32font_encode_char): Leave as unicode if in range.
7062 (w32font_open_internal): Get unicode version of textmetrics.
7063 Don't enable or disable glyph indices here.
7064 (w32font_open): Disable use of glyph indices.
7065
7066 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
7067
70682008-07-30 Chong Yidong <cyd@stupidchicken.com>
7069
7070 * minibuf.c (Vread_buffer_function): Doc fix.
7071
70722008-07-30 John Paul Wallington <jpw@pobox.com>
7073
7074 * minibuf.c (read_buffer_completion_ignore_case): New var.
7075 (Fread_buffer): Use it.
7076
70772008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
7078
7079 * systty.h (sensemode): Remove empty #if. Remove reference to
7080 BSD_TERMIOS, unused.
7081
7082 * sysdep.c: Remove reference to DGUX.
7083 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
7084
7085 * config.in: Regenerate.
7086
70872008-07-30 Jason Rumney <jasonr@gnu.org>
7088
7089 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
7090
70912008-07-29 Jason Rumney <jasonr@gnu.org>
7092
7093 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
7094 is populated.
7095 (uniscribe_encode_char): Always use uniscribe.
7096 Avoid using context if cache is populated.
7097
70982008-07-29 Jan Djärv <jan.h.d@swipnet.se>
7099
7100 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
7101 open menu.
7102
7103 * gtkutil.c (menu_nav_ended): Remove.
7104 (create_menus): Remove signal connect for menu_nav_ended.
7105
71062008-07-28 Chong Yidong <cyd@stupidchicken.com>
7107
7108 * xdisp.c (redisplay_window): Check return value of
7109 compute_window_start_on_continuation_line before forcing a window
7110 start.
7111
71122008-07-28 Jason Rumney <jasonr@gnu.org>
7113
7114 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
7115
7116 * w32term.c (w32_enable_unicode_output, cleartype_active):
7117 Remove obsolete display options.
7118 (x_draw_glyph_string_background): Don't use old cleartype_active
7119 workaround.
7120 (w32_initialize): Remove cleartype_active initialization.
7121 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
7122
71232008-07-28 Andreas Schwab <schwab@suse.de>
7124
7125 * lisp.h (init_weak_hash_tables, syms_of_font)
7126 (xd_read_queued_messages, syms_of_dbusbind): Declare.
7127 (remove_hash_entry): Don't declare.
7128 * eval.c (maybe_call_debugger): Make static and move before use.
7129 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
7130 * xdisp.c: Include "gtkutil.h" if USE_GTK.
7131 * xterm.h (x_set_frame_alpha): Declare.
7132
71332008-07-28 Jan Djärv <jan.h.d@swipnet.se>
7134
7135 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
7136 (create_menus): Connect selection-done to menu_nav_ended.
7137
71382008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7139
7140 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
7141 Set Vx_resource_name to a fallback. Replace read of 'buffered'
7142 parameter with read of 'alpha' one.
7143 (Qns_frame_parameter): Remove.
5582fbc7 7144 * nsselect.m (selection-coding-system)
aac0c6e3
MR
7145 (next-selection-coding-system, Vselection_coding_system)
7146 (Vnext_selection_coding_system): Drop.
7147
71482008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7149
7150 * nsfns.m (do-applescript, do_applescript): Rename to
7151 ns-do-applescript, ns_do_applescript, and move within file.
7152
71532008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
7154
7155 Remove support for Mac Carbon.
7156 * mactoolbox.c:
7157 * macterm.h:
7158 * macterm.c:
7159 * macselect.c:
7160 * macmenu.c:
7161 * macgui.h:
7162 * macfns.c:
7163 * mac.c: Remove file.
7164 * s/darwin.h:
7165 * m/intel386.h:
7166 * xfaces.c:
7167 * xdisp.c:
7168 * window.c:
7169 * tparam.c:
7170 * termhooks.h:
7171 * termcap.c:
7172 * term.c:
7173 * syssignal.h:
7174 * sysselect.h:
7175 * sysdep.c:
7176 * process.c:
7177 * lread.c:
7178 * lisp.h:
7179 * keyboard.c:
7180 * image.c:
7181 * fringe.c:
7182 * frame.h:
7183 * frame.c:
7184 * fontset.c:
7185 * font.h:
7186 * font.c:
7187 * fns.c:
7188 * fileio.c:
7189 * emacs.c:
7190 * dispnew.c:
7191 * dispextern.h:
7192 * config.in:
7193 * atimer.c:
2ae37cf0 7194 * Makefile.in: Remove code for Carbon.
aac0c6e3 7195
f0131492 71962008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
7197
7198 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
7199
72002008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7201
7202 * macterm.h (kCGBitmapByteOrder32Host): New define for
7203 non-universal SDKs.
7204
7205 * image.c (mac_create_cg_image_from_image, image_load_image_io)
7206 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7207
7208 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
7209 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
7210
72112008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
7212
7213 * w32inevt.c: Include dispextern.h.
7214
72152008-07-26 Andreas Schwab <schwab@suse.de>
7216
7217 * print.c (print_object): Fix off-by-one in last change.
7218
72192008-07-25 Juanma Barranquero <lekktu@gmail.com>
7220
7221 * term.c (syms_of_term): Don't initialize default_orig_pair,
7222 default_set_foreground and default_set_background on Windows.
7223
72242008-07-25 Jason Rumney <jasonr@gnu.org>
7225
7226 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
7227 ScriptItemize. Clean up return value checking. Remove unused
7228 variables.
7229 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
7230 shaping engine.
7231
7232 * w32font.c (w32font_has_char): Handle the case where we can't
7233 determine the script for a character.
7234
72352008-07-25 Chong Yidong <cyd@stupidchicken.com>
7236
7237 * term.c (syms_of_term): Initialize default_orig_pair,
7238 default_set_foreground, and default_set_background.
7239
7240 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
7241 clash (bug#86).
7242 (getloadavg): Callers changed.
7243
7244 * image.c (svg_load_image): Fix last change.
7245 (svg_load_image): Use rsvg_handle_get_dimensions to check that
7246 image size is valid. Use g_object_unref instead of deprecated
7247 rsvg_handle_free to free rsvg handle.
7248 (x_from_xcolors): Don't initialize pixmap (silence compiler).
7249
72502008-07-25 Jason Rumney <jasonr@gnu.org>
7251
7252 * w32font.c (w32font_encode_char): Encode characters outside BMP as
7253 surrogates before looking up glyph index.
7254 (w32font_text_extents): Encode as surrogates if falling back to
7255 functions that need UTF-16 wide chars.
7256
7257 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
7258 BMP as surrogates before looking up glyph index.
7259
72602008-07-25 Chong Yidong <cyd@stupidchicken.com>
7261
7262 * image.c (svg_load_image): Check for failure in return value of
7263 rsvg_handle_get_pixbuf. Free rsvg handle when done.
7264
72652008-07-25 Jason Rumney <jasonr@gnu.org>
7266
7267 * w32font.c (Fx_select_font): Reverse sense of second arg.
7268
72692008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
7270
7271 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
7272 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
7273
7274 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
7275 (PURESIZE): Use it.
7276
72772008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
7278
7279 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
7280 * m/alpha.h (TEXT_END):
7281 * m/ibmrs6000.h (TEXT_END):
7282 * m/macppc.h (TEXT_END):
7283 * s/darwin.h (TEXT_END):
7284 * s/msdos.h (TEXT_END): Remove, unused.
7285 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
7286 * s/cygwin.h: Remove comment.
7287
7288 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
7289 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
7290 * m/intel386.h (DOT_GLOBAL_START):
7291 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
7292 (USG): Remove, file not used on USG platforms.
7293
7294 * Makefile.in (HAVE_X11): Remove empty #else.
7295
72962008-07-24 Andreas Schwab <schwab@suse.de>
7297
7298 * fileio.c (Finsert_file_contents): Properly adjust undo list
7299 after format conversion.
7300
73012008-07-24 Jan Djärv <jan.h.d@swipnet.se>
7302
7303 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
7304 (menu_nav_ended): Remove.
7305 (create_menus): Remove signal connect for menu_nav_ended.
7306 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
7307 create_menus.
7308 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
7309
73102008-07-23 Jason Rumney <jasonr@gnu.org>
7311
7312 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
7313 with opened font.
7314 (w32font_open): Set font type to gdi.
7315
7316 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
7317
73182008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
7319
7320 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
7321 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
7322 defines it.
7323 * unexec.c (ADDR_CORRECT): Define unconditionally.
7324
7325 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
7326
7327 * unexec.c: Remove code depending on !COFF and USG, the file is
7328 not used for such systems.
7329
7330 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
7331 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
7332 (LD_SWITCH_SYSTEM_1): Remove, update users.
7333
7334 * s/darwin.h (DATA_END):
7335 * m/intel386.h (DATA_END):
7336 * m/ibmrs6000.h (DATA_END):
7337 * m/alpha.h (DATA_END): Remove, unused.
7338
7339 * config.in: Regenerate.
7340 * s/ms-w32.h (subprocesses): Define unconditionally.
7341 * s/template.h (subprocesses): Update comment.
7342 * s/vms.h (subprocesses):
7343 * s/usg5-4.h (subprocesses):
7344 * s/hpux10-20.h (subprocesses):
7345 * s/gnu-linux.h (subprocesses):
7346 * s/cygwin.h (subprocesses):
7347 * s/bsd-common.h (subprocesses):
7348 * s/aix4-2.h (subprocesses):
7349 * s/darwin.h (subprocesses): Do not define, defined by default now.
7350
7351 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
7352 Remove all references.
7353 (temacs): Add GNUstep specific ld flags.
7354
7355 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
7356 similarly to what X does.
7357
73582008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7359
7360 * nsfns.m (x-list-fonts): Remove.
7361 (syms_of_nsfns): Drop the x-list-fonts declaration.
7362 * nsterm.m: Get rid of remaining "//" comments.
7363
73642008-07-22 Chong Yidong <cyd@stupidchicken.com>
7365
7366 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
7367
7368 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
7369 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
7370 (Fns_own_selection_internal, Fx_disown_selection_internal)
7371 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
7372
7373 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
7374 ... */' style of docstrings. Doc fixes.
7375
73762008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7377
7378 * terminfo.c (UP, BC, PC): Undo previous change.
7379
7380 * nsfns.m: Rename ns prefixed functions/variables to the
7381 corresponding x versions. Update references.
7382
73832008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
7384
7385 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
7386
73872008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
7388
7389 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
7390 Remove forwarding functions.
7391 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
7392 non-static.
7393 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
7394 non-static.
7395 (ns_frame_parm_handlers): Use the new names.
7396 (syms_of_nsfns): Move to the end of file.
7397
7398 * nsterm.m (syms_of_nsterm): Move to the end of file.
7399
7400 * dispnew.c (init_display): Remove code for X10.
7401
74022008-07-22 Jason Rumney <jasonr@gnu.org>
7403
7404 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
7405 bare drive.
7406
74072008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7408
7409 * nsterm.m (syms_of_nsterm): Remove debugging println.
7410
74112008-07-22 David Reitter <david.reitter@gmail.com>
7412
7413 * nsfns.m (do_applescript, F_do_applescript): NS version of the
7414 Carbon implementation of the same functionality: execute arbitrary
7415 AppleScript code.
7416
74172008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
7418
7419 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
7420 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
7421 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
7422 (Fx_display_mm_height, Fx_display_mm_width)
7423 (Fx_display_backing_store, Fx_display_visual_class)
7424 (Fx_display_save_under, Fx_open_connection)
7425 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
7426 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
7427 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7428 (Fx_display_pixel_width, Fx_display_pixel_height)
7429 (Fx_display_usable_bounds, Fx_display_planes)
7430 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
7431 ... */' style of docstrings.
7432
74332008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
7434
7435 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
7436 on this platform.
7437 (mips):
7438 * m/iris4d.h (mips): Do not define.
7439 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
7440
7441 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
7442
7443 * image.c:
7444 * nsfns.m:
7445 * nsselect.m:
7446 * nsterm.h:
7447 * nsterm.m: Rename ns prefixed functions/variables to the
7448 corresponding x versions. Update references.
7449
7450 * m/ibms390x.h (NO_REMAP): Do not undefine.
7451
7452 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
7453
74542008-07-21 Chong Yidong <cyd@stupidchicken.com>
7455
7456 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
7457 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
7458 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
7459 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
7460 (Fns_display_mm_height, Fns_display_mm_width)
7461 (Fns_display_backing_store, Fns_display_visual_class)
7462 (Fns_display_save_under, Fns_open_connection)
7463 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
7464 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
7465 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
7466 (Fns_display_pixel_width, Fns_display_pixel_height)
7467 (Fns_display_usable_bounds, Fx_display_planes)
7468 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
7469
74702008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
7471
7472 * print.c (print_object): Check print_depth before searching for
7473 circularities.
7474
74752008-07-21 Michael Albinus <michael.albinus@gmx.de>
7476
7477 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
7478 only sprintf.
7479
74802008-07-21 Kenichi Handa <handa@m17n.org>
7481
7482 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
7483
74842008-07-20 Andreas Schwab <schwab@suse.de>
7485
7486 * syntax.c (find_start_pos, find_start_value)
7487 (find_start_value_byte, find_start_begv, find_defun_start)
7488 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
7489
74902008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7491
7492 * s/sol2-3.h: Insert contents of s/sol2.h.
7493 (LD_SWITCH_SYSTEM): Remove redundant definition.
7494 * s/sol2.h: Remove, unused.
7495
74962008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7497
7498 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
7499
75002008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
7501
7502 * Makefile.in (ns_appdir): Fix typo in find command.
7503
75042008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
7505
7506 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
7507
7508 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
7509 added not supported anymore.
7510
7511 * s/usg5-4-2.h (LIBS_SYSTEM):
7512 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
7513
7514 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7515 * s/lynxos.h (GETPGRP_NO_ARG):
7516 * s/hpux10-20.h (NO_SIOCTL_H):
7517 * s/gnu.h (GETPGRP_NO_ARG):
7518 * s/gnu-linux.h (NO_SIOCTL_H):
7519 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
7520 * s/cygwin.h (GETPGRP_NO_ARG):
7521 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
7522 (C_DEBUG_SWITCH): Remove duplicate definition.
7523
7524 * m/ibms390.h: Remove boilerplate comments.
7525
7526 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
7527
7528 * process.c (HAVE_SERIAL): Consolidate ifdefs.
7529 (wait_reading_process_output): Remove code for SunOS, platform not
7530 supported anymore. Use SOLARIS2 instead of sun.
7531
75322008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7533
7534 * font.c (font_open_by_name): Under NS, default lface height to zero.
7535 (font_open_for_lface): Under NS, set size based on frame fontsize.
7536 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
7537 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
7538
75392008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7540
7541 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
7542 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
7543 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
7544 YES/NO.
7545 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
7546 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
7547 * Makefile.in (clean): Clear out build destination dir.
7548
75492008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7550
7551 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
7552 xterm, xselect.
7553 * lisp.h: Remove declaration of hash_remove.
7554 * nsgui.h: Remove redefinitions of hash_remove.
7555 * fns.c (hash_remove): Rename to hash_remove_from_table.
7556
75572008-07-19 Seiji Zenitani <zenitani@mac.com>
7558
7559 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
7560 strdup() the family UTF8String before modifying it.
7561
75622008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
7563
7564 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
7565 NS_FACE_BACKGROUND with 0 instead of nil.
7566 * nsfont.m (nsfont_draw): Same.
7567
75682008-07-19 Chong Yidong <cyd@stupidchicken.com>
7569
7570 * nsfns.m (ns_set_background_color): Fix crash.
7571
75722008-07-18 Chong Yidong <cyd@stupidchicken.com>
7573
7574 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
7575
75762008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
7577
7578 * puresize.h (BASE_PURESIZE): Increase to 1240000.
7579
75802008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7581
7582 * gtkutil.c: Include <config.h> instead of "config.h".
7583
7584 * lisp.h (Foverlay_buffer): Add EXFUN.
7585
7586 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
7587 child process to complete child_setup. Undo 2005-09-21 change.
7588
7589 * s/darwin.h: Mention setsid after vfork.
7590
75912008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7592
7593 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
7594 Depend on macgui.h.
7595
7596 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
7597 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
7598
7599 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
7600 and f19.
7601 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
7602
7603 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
7604 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
7605 Remove enumerators.
7606
7607 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
7608 Check if FACE_FROM_ID returns NULL.
7609
76102008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
7611
7612 * w32inevt.c (change_frame_size): Remove extern declaration.
7613 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
7614 change_frame_size.
7615
76162008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7617
7618 * getloadavg.c: Revert last change (2008-07-15).
7619
76202008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
7621
7622 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 7623 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
7624 from configure.
7625
76262008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
7627
7628 * s/sol2.h:
7629 * s/sol2-4.h: Reorganize conditionals.
7630
7631 * ecrt0.c: Remove code depending on m68000, not used anymore.
7632
7633 * fns.c (hash_remove): Make static.
7634 * lisp.h (hash_remove): Don't prototype.
7635
7636 * m/ibmrs6000.h:
7637 * m/ibms390x.h:
7638 * m/macppc.h: Remove boilerplate comments.
7639
7640 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
7641 Solaris, which does not need them.
7642
7643 * m/vax.h: Remove comments about unsupported systems.
7644
7645 * s/darwin.h: Reorganize ifdefs.
7646
76472008-07-17 Andreas Schwab <schwab@suse.de>
7648
7649 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
7650
76512008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
7652
7653 Use SDATA. Follow coding convention of placing operators at
7654 beginning of next line rather than end of previous line, and placing
7655 spaces around infix operators.
7656
7657 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
7658 in case it was defined already.
7659 USE @GNUSTEP_MAKEFILES@ rather than envvars.
7660 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
7661 ns_default.
7662 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
7663 Lisp_Objects.
7664 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
7665 (ns_defined_color, ns_color_to_lisp): Declare.
7666 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
7667 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
7668 it's accepted even with USE_LISP_UNION_TYPE.
7669 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
7670 (update_frame_tool_bar): Remove apparently obsolete tests for
7671 non-integerness of f->tool_bar_lines.
7672 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
7673 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
7674 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
7675 (nsfont_open): Don't confuse NULL for Qnil.
7676 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
7677 * menu.h (find_and_call_menu_selection):
7678 * menu.c (find_and_call_menu_selection): Use just int for vector size.
7679 (find_and_return_menu_selection): Always return something.
7680 * frame.h: Include dispextern.h for Display_Info.
7681 (display_x_get_resource): Declare.
7682
76832008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
7684
7685 * syntax.c: Remove stdio.h include accidentally introduced in
7686 Emacs.app commit.
7687 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
7688 NS_IMPL_COCOA.
7689 * keyboard.c (handle_async_input, input_available_signal): Remove
7690 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
7691
76922008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7693
7694 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
7695 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
7696 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
7697 Use SDATA.
7698
7699 * keymap.c: Remove all NS-specific code.
7700 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
7701 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
7702 where_is_preferred_modifier, return a different value depending on how
7703 preferred is the binding.
7704 (where_is_internal): Adjust accordingly.
7705 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
7706 Adjust to new preferred_sequence_p.
7707 (syms_of_keymap): Declare `where-is-preferred-modifier'.
7708 * keyboard.c (parse_solitary_modifier): Not static any more.
7709 * keyboard.h (parse_solitary_modifier): Declare.
7710
77112008-07-16 Andreas Schwab <schwab@suse.de>
7712
7713 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
7714 of easymenu.
7715
77162008-07-16 Chong Yidong <cyd@stupidchicken.com>
7717
7718 * xdisp.c (move_it_in_display_line): Account for word wrap, so
7719 that we don't move off the line.
7720
77212008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
7722
7723 * keyboard.c (Qsuper): Remove.
7724 (parse_menu_item): Don't call where_is_internal specially for NS.
7725
77262008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7727
7728 * s/gnu-linux.h: Remove boilerplate comments.
7729
7730 * m/alpha.h (__ELF__): Consolidate conditions.
7731
7732 * m/m68k.h (linux): Use GNU_LINUX instead.
7733 Remove boilerplate comments.
7734
7735 * m/intel386.h: Undo refactoring from previous change.
7736 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
7737 too, remove dead code.
7738 (linux): Use GNU_LINUX instead.
7739
77402008-07-16 Jason Rumney <jasonr@gnu.org>
7741
7742 * w32gui.h: Repeat 26 June changes lost by last change.
7743
77442008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
7745
7746 * systty.h: Remove code for Aix on 386, unsupported platform.
7747
7748 * s/ms-w32.h: Remove boilerplate comments.
7749 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
7750
7751 * s/gnu-linux.h (TERM): Remove support.
7752 (HAVE_SYSVIPC): Remove, unused.
7753 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
7754 for this system.
7755
7756 * process.c: Remove support for IRIS, unused.
7757 Remove support for TERM, not relevant anymore.
7758
7759 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
7760 used with the definition.
7761
7762 * s/aix4-2.h (static): Do not undef.
7763
7764 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
7765 only used on Aix.
7766 (HAVE_SYSVIPC): Remove, unused.
7767
7768 * m/hp800.h (CANNOT_DUMP): Do not undef.
7769
7770 * m/alpha.h: Fix comment.
7771
7772 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
7773 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
7774 used by this configuration.
7775 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
7776 * unexec.c: Remove code depending on HPUX and
7777 USG_SHARED_LIBRARIES, not used with this file. Remove code
7778 depending on IRIS, unused. Remove if 0-ed code.
7779
7780 * s/template.h: Remove comments about static.
7781
7782 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
7783 Remove if 0-ed code.
7784 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
7785 were the same as the default.
7786 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
7787 Remove boilerplate comments.
7788 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
7789 (HAVE_SYSVIPC): Remove, unused.
7790 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
7791
7792 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7793 Remove boilerplate comments.
7794 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7795 Remove boilerplate comments.
7796 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
7797 Remove boilerplate comments.
7798 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
7799
7800 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
7801 USG systems which do not use DATA_SEG_BITS.
7802 Refactor code. Remove boilerplate comments.
7803
7804 * m/ibms390.h:
7805 * m/m68k.h:
7806 * s/bsd-common.h:
7807 * s/cygwin.h:
7808 * s/darwin.h:
7809 * s/freebsd.h:
7810 * s/gnu.h:
7811 * s/msdos.h: Remove boilerplate comments.
7812
7813 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 7814 do not use this file.
aac0c6e3
MR
7815 (IRIS_4D): Remove, unused.
7816
7817 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 7818 do not use this file.
aac0c6e3
MR
7819 (SIGN_EXTEND_CHAR):
7820 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
7821 * unexmips.c: Remove file, unused.
7822
7823 * editfns.c (Fuser_full_name): Replace the only use of
7824 USER_FULL_NAME with its value.
7825 * config.in: Regenerate.
7826
78272008-07-16 David Reitter <david.reitter@gmail.com>
7828
7829 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
7830 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
7831
78322008-07-16 Glenn Morris <rgm@gnu.org>
7833
7834 * emacs.c (system-type): Doc fix.
7835
78362008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
7837
7838 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
7839 If the cache doesn't work, let's fix it, rather than work around it.
7840
78412008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7842
7843 * Makefile.in: Correct additions for nsfont.o in last commit.
7844 * nsfont.m: New file (forgot last commit).
7845
78462008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7847
7848 * callproc.c (set_initial_environment): Initialize
7849 Vprocess_environment under CANNOT_DUMP (fixes crash when
7850 batch-compiling for bootstrap).
7851
78522008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
7853 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7854
7855 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
7856 fix crash due to different init order.
7857
78582008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7859
7860 Changes and additions for NeXTstep windowing system (Cocoa and
7861 GNUstep) support.
7862
7863 * Makefile.in:
7864 * config.in: Support defines and build commands for NS port.
7865 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
7866 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
7867 * dispextern.h: Include nsgui.h and add needed typedefs under NS
7868 windowing.
7869 (struct face): Add synth_ital field.
7870 * dispnew.c: Include nsterm.h when compiling under NS windowing.
7871 (init_display): Initialize Vinitial_window_system to "ns" when so
7872 compiled.
7873 * emacs.c: Include GSConfig.h when compiling under GNUstep.
7874 (display_arg): Use under NS.
7875 (main): Under NS, allocate autorelease pool and handle command line
7876 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
7877 (standard_args): Add NS-specific args.
7878 (shut_down_emacs): Shut down NS terminal if compiled under NS.
7879 * font.c (DEFAULT_ENCODING): New variable.
7880 (font_find_for_lface): Use it.
7881 (syms_of_font): Load syms_of_nsfont under NS.
7882 * font.h: Declare nsfont_driver when compiled under NS.
7883 * fontset.c: When compiling under NS, include nsterm.h.
7884 (fontset_from_font): Autoconstruct fontset under NS.
7885 * frame.c (various): Under NS, include nsterm.h, add Qns window system
7886 symbol, document and use it.
7887 (do_switch_frame): When for_deletion under Cocoa, add
7888 Fraise_frame(Qnil).
7889 (x_set_frame_parameters): Ensure font attribute changes are picked up.
7890 (x_get_arg): Allow "yes" and "no" as boolean values.
7891 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
7892 Qright under Cocoa.
7893 (focus-follows-mouse): Default to 0 under NS.
7894 * frame.h (enum output_method): Add output_ns.
7895 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
7896 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
7897 (FRAME_WINDOW_P): NS-specific definition.
7898 * fringe.c (max_used_fringe_bitmap): Make public.
7899 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
7900 (getloadavg): Use NeXT code under descendant OS's.
7901 * image.c (includes and header section, x_create_bitmap_from_data)
7902 (x_create_bitmap_from_file, free_bitmap_record, image_background)
7903 (image_background_transparent, x_clear_image_1)
7904 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
7905 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
7906 (x_to_xcolors, x_from_xcolors, x_disable_image)
7907 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
7908 other GUIs, including XPM support using code originally written for
7909 Carbon GUI.
7910 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
7911 using NS API.
7912 (image_ascent): Use font metrics macros instead of direct struct field
7913 access.
7914 * keyboard.c (includes): Add nsterm.h when compiling under NS.
7915 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
7916 Also, handle NS as GTK for menu bar purposes.
7917 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
7918 toolkit where they differ.
7919 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
7920 use cachelist, still needed under NS.
7921 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
7922 (struct widget_value): Define it here for menu.c.
7923 * keymap.c (includes): Include modifier internals.
7924 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
7925 NS.
7926 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
7927 support for preferring sequences using certain modifiers, specified by
7928 the FIRSTONLY argument.
7929 * lisp.h (hash_remove): Rename to avoid name clash when compiling
7930 under NS GNUstep implementation.
7931 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
7932 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
7933 * menu.c: Include nsterm.h under NS.
7934 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
7935 (free_menubar_widget_tree_value, update_submenu_strings)
7936 (find_and_call_menu_selection): Treat NS as X and NT.
7937 (find_and_return_menu_selection): New function, used for popup menus.
7938 * nsgui.h:
7939 * nsterm.h:
7940 * nsfns.m:
7941 * nsimage.m:
7942 * nsmenu.m:
7943 * nsselect.m:
7944 * nsterm.m: New files.
7945 * process.c (wait_reading_process_output): Under NS, call ns_select()
7946 instead of plain select().
7947 * syntax.c (char_quoted): Under NS, avoid a crash when called near
7948 beginning of buffer.
7949 * sysselect.h (init_process): Rename when compiling under Cocoa to
7950 avoid name conflict.
7951 * termhooks.h (display_info): Add ns_display_info to union.
7952 * terminal.c (Fterminal_live_p): Add ns to terminal types.
7953 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
7954 COCOA environment.
7955 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
7956 unexec() signature. (Note, this will dump, but the resulting file
7957 crashes; unexosx is used instead; keeping around for reference and
7958 possible aid in getting dump working under GNUstep.)
7959 * w32gui.h (button_type, widget_value): Remove definitions (now in
7960 keyboard.h).
7961 * window.c: Include nsterm.h when compiling under NS.
7962 * xdisp.c (includes): Include nsterm.h when compiling under NS.
7963 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
7964 other GUI windowing systems.
7965 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
7966 GTK.
7967 (x_consider_frame_title): Under NS, set icon type and frame
7968 modified-state indicator; use ns_set_name_as_filename() when using
7969 formatted title.
7970 (update_window_cursor): Make public when compiling under NS.
7971 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
7972 (hourglass_atimer, Vhourglass_delay
7973 * xfaces.c (header section, init_frame_faces, clear_font_table)
7974 (defined_color, unload_color, x_face_list_fonts)
7975 (prepare_face_for_display): Add NS support parallel to other GUIs.
7976 Emulate GCs like other non-X GUIs.
7977 (split_font_name): Don't lowercase font name under NS.
7978 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
7979 under NS.
7980 * s/darwin.h: Add support for compilation under NS.
7981
79822008-07-15 Jason Rumney <jasonr@gnu.org>
7983
7984 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
7985 (w32_show_hourglass): Rename from show_hourglass.
7986 (w32_hide_hourglass): Rename from hide_hourglass.
7987 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
7988 (Vhourglass_delay): Declare extern.
7989 (hourglass_started): Remove.
7990
7991 * xdisp.c (Vhourglass_delay): Remove static.
7992 (hourglass_started, start_hourglass, cancel_hourglass):
7993 Don't include these versions on WINDOWSNT.
7994
79952008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
7996
7997 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
7998 variables (formerly in xfns.c).
7999 (show_hourglass, hide_hourglass): New prototypes (same).
8000 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
8001 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
8002 in xfns.c).
8003 (syms_of_xdisp): Declare/initialize display-hourglass,
8004 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
8005 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
8006 formerly in xfns.c.
8007 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8008 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8009 (start_hourglass, cancel_hourglass): Remove.
8010 (show_hourglass, hide_hourglass): Remove prototypes and static
8011 modifiers.
8012 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
8013 hourglass_atimer, hourglass_shown_p declaration/initialization.
8014 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
8015 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
8016 (start_hourglass, cancel_hourglass): Remove.
8017 (show_hourglass, hide_hourglass): Remove prototypes and static
8018 modifiers.
8019 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
8020 hourglass_atimer, hourglass_shown_p declaration/initialization.
8021 * w32fns.c (display_hourglass_p, Vhourglass_delay)
8022 (DEFAULT_HOURGLASS_DELAY): Remove.
8023 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
8024 hourglass_shown_p declaration/initialization.
8025
80262008-07-14 Jason Rumney <jasonr@gnu.org>
8027
8028 * w32fns.c (w32_get_arg): Remove wrapper function.
8029 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
8030 directly.
8031 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
8032
80332008-07-14 Kenichi Handa <handa@m17n.org>
8034
8035 * xfont.c (xfont_open): Add workaround for X's bug.
8036
80372008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
8038
8039 * fontset.c: Include <stdio.h> unconditionally.
8040
80412008-07-13 Michael Albinus <michael.albinus@gmx.de>
8042
8043 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
8044 for filtering.
8045
80462008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
8047
8048 * s/vms.h: Use __GNUC__ instead of _GNUC_.
8049
8050 * m/macppc.h:
8051 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
8052
8053 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
8054 (SPECIAL_EMACS_INT):
8055 * m/ia64.h (SPECIAL_EMACS_INT):
8056 * m/amdx86-64.h (SPECIAL_EMACS_INT):
8057 * s/gnu.h (NLIST_STRUCT):
8058 * s/aix4-2.h (X11R5_INHIBIT_I18N):
8059 * s/gnu-linux.h (LINUX):
8060 * s/msdos.h (HAVE_FACES):
8061 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
8062
8063 * systty.h:
8064 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
8065 anymore.
8066
80672008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
8068
8069 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
8070 always defined as int.
8071
8072 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
8073 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
8074 * s/gnu-linux.h (HAVE_WAIT_HEADER):
8075 * s/freebsd.h (HAVE_WAIT_HEADER):
8076 * s/bsd-common.h (HAVE_UNION_WAIT):
8077 * s/aix4-2.h (HAVE_WAIT_HEADER):
8078 * m/mips.h (HAVE_UNION_WAIT):
8079 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
8080 (COFF, static): Do not define, they are undefined later in the file.
8081
8082 * process.c (update_status): Don't use a union.
8083 (status_convert):
8084 (sigchld_handler): Use int instead of WAITTYPE.
8085
80862008-07-12 Chong Yidong <cyd@stupidchicken.com>
8087
8088 * indent.c (Fvertical_motion): Restore hscroll before moving to
8089 goal column.
8090
80912008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8092
8093 * lisp.h: Remove left over code.
8094
80952008-07-11 Andreas Schwab <schwab@suse.de>
8096
8097 * lisp.h: Fix logic in last change.
8098
8099 * menu.h: New file.
8100 * menu.c: Include it.
8101 * xmenu.c: Likewise.
8102 * Makefile.in: Update dependencies.
8103
81042008-07-11 Kenichi Handa <handa@m17n.org>
8105
8106 * fontset.c (fontset_from_font): Cancel the previous change.
8107
81082008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
8109
8110 * lisp.h:
8111 * w32heap.c:
8112 * emacs.c:
8113 * alloc.c: Replace all references of NO_UNION_TYPE with
8114 USE_LISP_UNION_TYPE.
8115
8116 * m/xtensa.h (NO_UNION_TYPE):
8117 * m/vax.h (NO_UNION_TYPE):
8118 * m/template.h (NO_UNION_TYPE):
8119 * m/sparc.h (NO_UNION_TYPE):
8120 * m/mips.h (NO_UNION_TYPE):
8121 * m/macppc.h (NO_UNION_TYPE):
8122 * m/m68k.h (NO_UNION_TYPE):
8123 * m/iris4d.h (NO_UNION_TYPE):
8124 * m/intel386.h (NO_UNION_TYPE):
8125 * m/ibms390x.h (NO_UNION_TYPE):
8126 * m/ibms390.h (NO_UNION_TYPE):
8127 * m/ibmrs6000.h (NO_UNION_TYPE):
8128 * m/ia64.h (NO_UNION_TYPE):
8129 * m/hp800.h (NO_UNION_TYPE):
8130 * m/arm.h (NO_UNION_TYPE):
8131 * m/amdx86-64.h (NO_UNION_TYPE):
8132 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
8133 defining it the same.
8134
81352008-07-10 Chong Yidong <cyd@stupidchicken.com>
8136
8137 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
8138
81392008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8140
8141 * fileio.c:
8142 * sysdep.c
8143 * systty.h:
8144 * m/ibmrs6000.h:
8145 * m/iris4d.h:
8146 * s/aix4-2.h:
8147 * s/freebsd.h:
8148 * s/gnu-linux.h:
8149 * s/hpux10-20.h:
8150 * s/hpux11.h:
8151 * s/netbsd.h:
8152 * s/sol2-3.h:
8153 * s/sol2-4.h:
8154 * s/sol2.h:
8155 * s/usg5-4.h:
8156 * s/vms.h: Remove references to unused variables.
8157
81582008-07-10 Andreas Schwab <schwab@suse.de>
8159
8160 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
8161 pattern before matching the generic family.
8162
81632008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
8164
8165 * unexec.c:
8166 * s/vms.h:
8167 * s/usg5-4-2.h:
8168 * s/sol2-5.h:
8169 * s/freebsd.h:
8170 * s/darwin.h: Remove dead code.
8171
8172 * m/template.h:
8173 * m/sparc.h:
8174 * m/mips.h:
8175 * m/m68k.h:
8176 * m/iris4d.h:
8177 * m/intel386.h:
8178 * m/ibms390x.h:
8179 * m/ibms390.h:
8180 * m/ia64.h:
8181 * m/hp800.h:
8182 * m/arm.h:
8183 * m/amdx86-64.h: Remove dead code and references to unused
8184 and compiler defined symbols.
8185
8186 * unexmips.c:
8187 * unexelf.c: Remove references to desupported systems.
8188
8189 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
8190
8191 * m/powermac.h: Remove boilerplate comments.
8192 (NO_REMAP): Remove unused definition.
8193
8194 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
8195 define them.
8196
81972008-07-10 Kenichi Handa <handa@m17n.org>
8198
8199 * xfont.c (xfont_open): Log the reason of failure.
8200
82012008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
8202
8203 * fontset.c (fontset_get_font_group):
8204 * font.c (font_check_otf): Specify argument types.
8205
82062008-07-09 Kenichi Handa <handa@m17n.org>
8207
8208 * coding.c (detect_coding_utf_8): Set detect_info->found only when
8209 non-ASCII char is found.
8210
8211 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
8212 (reorder_font_vector): Change the arg preferred_family to font.
8213 Prefer the spec matching with font.
8214 (fontset_get_font_group): New function.
8215 (fontset_find_font): Change the format of an element of a realized
8216 fontset. Use fontset_get_font_group.
8217 (fontset_font): Try the current fontset, the default fontset, the
8218 fallbacks of the current fontset, and the fallbacks of the default
8219 fontset in this order.
8220 (face_for_char): Delete the shortcut to use the current font.
8221 (fontset_from_font): Don't set fonts for Latin in the fontset.
8222
8223 * font.h (font_make_object, font_match_p): Adjust prototypes.
8224
8225 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
8226
8227 * font.c (font_make_object): New arg entity and pixelsize.
8228 (font_check_otf_features, font_check_otf): New functions.
8229 (font_match_p): Check :lang, :script, and :otf properties.
8230
8231 * xfont.c (xfont_open): Adjust it for the change of
8232 font_make_object.
8233 (xfont_text_extents): Fix initial setting of metrics.
8234
8235 * ftfont.c (struct ftfont_info): New member index, delete member
8236 fc_charset_idx. Make the member order compatible with struct
8237 xftfont_info.
8238 (fc_charset_table): Change charset names to registry names.
8239 (ftfont_pattern_entity): Delete the args registry and
8240 fc_charset_idx. Change the value of :font-entity property
8241 to (FONTNAME . INDEX). Always set :registry property to
8242 `iso10646-1'.
8243 (struct ftfont_cache_data): New struct.
8244 (ftfont_lookup_cache): New arg for_face.
8245 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
8246 (ftfont_driver): Set the member otf_capability.
8247 (ftfont_get_charset): Adjust it for the change of
8248 fc_charset_table.
8249 (OTF_TAG_SYM): New macro.
8250 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
8251 for the change of fc_charset_table.
8252 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
8253 ftfont_pattern_entity. Add FC_INDEX to objset.
8254 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
8255 and ftfont_pattern_entity.
8256 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
8257 font_make_object, struct ftfont_info.
8258 (ftfont_has_char): Use ftfont_get_fc_charset.
8259 (ftfont_otf_features, ftfont_otf_capability): New functions.
8260 (ftfont_shape): Use ftfont_get_otf.
8261 (ftfont_text_extents): Fix initial setting of metrics.
8262
8263 * xftfont.c (struct xftfont_info): New member ft_size. Make the
8264 member order compatible with struct ftfont_info.
8265 (xftfont_open): Add FC_CHARSET to the pattern. Set
8266 xftfont_info->ft_size. Don't unlock the face. Check BDF
8267 properties if appropriate.
8268 (xftfont_close): Unlock the face.
8269 (xftfont_anchor_point, xftfont_shape): Deleted.
8270 (syms_of_xftfont): Don't set members anchor_point and shape of
8271 xftfont_driver.
8272
8273 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
8274 font_make_object.
8275
8276 * w32font.c (w32font_open): Adjust it for the change of
8277 font_make_object.
8278 (w32font_open_internal): Don't set properties of font_object here.
8279
82802008-07-08 Chong Yidong <cyd@stupidchicken.com>
8281
8282 * macfns.c (x_create_tip_frame):
8283 * w32fns.c (x_create_tip_frame):
8284 * xfns.c (x_create_tip_frame): Pass parameter argument to
8285 face-set-after-frame-default.
8286
8287 * xfaces.c (Finternal_merge_in_global_face): Save merged
8288 attributes for the default face back into the face vector.
8289
82902008-07-08 Andreas Schwab <schwab@suse.de>
8291
8292 * fontset.h: Declare fontset_from_font. Don't declare
8293 new_fontset_from_font and fontset_from_font_name.
8294 * xterm.c: Include "fontset.h".
8295 * Makefile.in (xterm.o): Update dependencies.
8296
82972008-07-08 Glenn Morris <rgm@gnu.org>
8298
8299 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
8300 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
8301
83022008-07-07 Chong Yidong <cyd@stupidchicken.com>
8303
8304 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
8305 (x_set_frame_parameters): Don't bind it.
8306
83072008-07-07 Juanma Barranquero <lekktu@gmail.com>
8308
8309 * w32fns.c (map_w32_filename): Declare extern.
8310
83112008-07-07 Jason Rumney <jasonr@gnu.org>
8312
8313 * w32term.c (WS_EX_LAYERED): Define if not already.
8314
83152008-07-06 Chong Yidong <cyd@stupidchicken.com>
8316
8317 * xfaces.c (set_font_frame_param): Don't try to set the font
8318 parameter if it is still unspecified in the lface.
8319
83202008-07-05 Chong Yidong <cyd@stupidchicken.com>
8321
8322 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
8323 face if it didn't already exist.
8324
8325 * xdisp.c (try_window_id): Give up if word-wrapping is on.
8326
83272008-07-05 Andreas Schwab <schwab@suse.de>
8328
8329 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
8330
83312008-07-05 Chong Yidong <cyd@stupidchicken.com>
8332
8333 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
8334 word-wrapping.
8335 (IT_DISPLAYING_WHITESPACE): New macro.
8336 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
8337 when word-wrapping. Simplify word-wrapping logic. Use correct
8338 pixel positions when saving copies of the iterator.
8339 (display_line): Use proper wrap point if the last character on a
8340 line was preceded by whitespace.
8341
83422008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
8343
8344 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
8345
83462008-07-04 Kenichi Handa <handa@m17n.org>
8347
8348 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
8349
8350 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
8351
83522008-07-02 Jason Rumney <jasonr@gnu.org>
8353
8354 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 8355 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
8356
8357 * xdisp.c (next_element_from_display_vector): Move assignment out
8358 of if statement.
8359
83602008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
8361
8362 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
8363
8364 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
8365 (syms_of_fileio): Initialize and export them.
8366 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
8367
8368 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
8369 (Fsystem_move_file_to_trash): New function.
8370 (syms_of_w32fns): Export it to lisp.
8371
83722008-07-01 Jason Rumney <jasonr@gnu.org>
8373
8374 * w32font.c (w32font_text_extents): Don't count overhang as part
8375 of width.
8376
83772008-06-30 Miles Bader <miles@gnu.org>
8378
8379 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
8380 Add `avoid_cursor_p' field.
8381
8382 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
8383 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
8384 (append_glyph, append_composite_glyph, produce_image_glyph)
8385 (append_stretch_glyph): Initialize avoid_cursor_p.
8386 (get_it_property): Rename from `get_line_height_property'.
8387 (x_produce_glyphs): Use get_it_property.
8388 (handle_line_prefix, push_display_prop): New functions.
8389 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
8390 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
8391 New variables.
8392 (syms_of_xdisp): Initialize them.
8393
83942008-06-30 Kenichi Handa <handa@m17n.org>
8395
8396 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
8397 XftDefaultSubstitute (they are called in XftFontMatch).
8398 (xftfont_open): Fix args to ftfont_font_format.
8399
8400 * ftfont.c (fc_charset_table): New member lang.
8401 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 8402 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
8403 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
8404 (ftfont_open): Fix args to ftfont_font_format.
8405 (ftfont_font_format): New arg filename.
8406
84072008-06-30 Chong Yidong <cyd@stupidchicken.com>
8408
8409 * xfaces.c (Finternal_merge_in_global_face): If default face was
8410 modified, realize it again. Update the font face attribute.
8411
84122008-06-29 Jason Rumney <jasonr@gnu.org>
8413
8414 * w32term.c (x_set_frame_alpha): Fix logic.
8415
84162008-06-29 Kenichi Handa <handa@m17n.org>
8417
8418 * fontset.c (Finternal_char_font): Return font-object instead of
8419 font-name.
8420
8421 * composite.c (get_composition_id): Fix the width calculation for TAB.
8422
84232008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
8424
8425 * indent.c (Fvertical_motion): Properly handle float column arg.
8426
84272008-06-28 Jason Rumney <jasonr@gnu.org>
8428
8429 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
8430 (pfnSetLayeredWindowAttributes): New function pointer.
8431 (w32_initialize): Initialize it when supported.
8432 (x_set_frame_alpha): New function.
8433
8434 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
8435 (w32_frame_parm_handlers): Set alpha handler.
8436
8437 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
8438
84392008-06-27 Jason Rumney <jasonr@gnu.org>
8440
8441 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
8442 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
8443 (w32_to_x_charset, x_to_w32_charset)
8444 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8445 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8446 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8447 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8448 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8449 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8450 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
8451 (Qw32_charset_unicode): Remove.
8452 (syms_of_w32fns): Update for above changes.
8453
8454 * w32font.c (w32_to_x_charset, x_to_w32_charset)
8455 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
8456 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
8457 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
8458 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
8459 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
8460 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
8461 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
8462 (syms_of_w32font): Update for above changes.
8463
84642008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
8465
8466 * s/usg5-4.h: Fix previous change: keep the correct branch of a
8467 removed #if.
8468 (USG_SHARED_LIBRARIES): Remove duplicate definition.
8469
84702008-06-26 Juanma Barranquero <lekktu@gmail.com>
8471 Eli Zaretskii <eliz@gnu.org>
8472
8473 * makefile.w32-in (LOCAL_FLAGS):
8474 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
8475
8476 * sysdep.c (_spawnlp, _getpid):
8477 Declare with explicit _cdecl instead of _CRTAPI1.
8478
8479 * editfns.c (Fget_internal_run_time):
8480 Check for WINDOWSNT with #ifdef, not #if.
8481
84822008-06-26 Jason Rumney <jasonr@gnu.org>
8483
8484 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
8485
8486 * w32term.c (x_draw_glyph_string_foreground)
8487 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
8488 Use FONT_HANDLE macro.
8489 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
8490
8491 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8492 (uniscribe_encode_char): Use FONT_HANDLE macro.
8493
8494 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
8495 (w32font_text_extents): Use precast w32_font.
8496 (w32font_close): Free cached metrics.
8497 (w32font_open_internal): Allocate space for name on stack.
8498
84992008-06-26 Chong Yidong <cyd@stupidchicken.com>
8500
8501 * xdisp.c (extend_face_to_end_of_line): Fix last change.
8502
85032008-06-26 Jason Rumney <jasonr@gnu.org>
8504
8505 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
8506 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
8507
85082008-06-26 Juanma Barranquero <lekktu@gmail.com>
8509
8510 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
8511
85122008-06-26 Jason Rumney <jasonr@gnu.org>
8513
8514 * w32bdf.c, w32bdf.h: Remove obsolete files.
8515
8516 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
8517
8518 * w32gui.h: Don't include w32bdf.h.
8519 (XCharStruct, enum w32_char_font_type, W32FontStruct):
8520 Remove obsolete font support.
8521
8522 * w32font.h (struct w32font_info): Remove compat_w32_font.
8523 Add hfont member.
8524 (FONT_COMPAT): Remove obsolete macro.
8525
8526 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
8527 (w32font_encode_char, w32font_text_extents): Use new hfont member.
8528 (w32font_open_internal): Remove compat code. Set new hfont member.
8529 (Fx_select_font): Use new hfont member.
8530
8531 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
8532 (uniscribe_encode_char): Use new hfont member.
8533
8534 * w32term.c (x_draw_glyph_string_foreground)
8535 (x_draw_composite_glyph_string_foreground): Use new hfont member.
8536 (x_draw_glyph_string): Use metrics in w32font_info.
8537
85382008-06-26 Kenichi Handa <handa@m17n.org>
8539
8540 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
8541
85422008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
8543
8544 * unexnext.c:
8545 * m/ews4800.h:
8546 * m/hp9000s300.h:
8547 * m/ibm370aix.h:
8548 * m/mips-siemens.h:
8549 * m/ncr386.h:
8550 * m/next.h:
8551 * m/pmax.h:
8552 * m/powerpcle.h:
8553 * m/tandem-s2.h:
8554 * s/386bsd.h:
8555 * s/bsd386.h:
8556 * s/bsd4-1.h:
8557 * s/bsd4-2.h:
8558 * s/bsdos2-1.h:
8559 * s/bsdos2.h:
8560 * s/bsdos3.h:
8561 * s/bsdos4.h:
8562 * s/nextstep.h:
8563 * s/ultrix4-3.h:
8564 * s/usg5-0.h:
8565 * s/usg5-2-2.h:
8566 * s/usg5-2.h:
8567 * s/usg5-4-3.h:
8568 * s/ux4800.h:
8569 * s/uxpds.h:
8570 * s/uxpv.h: Remove support for obsolete systems.
8571 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 8572 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
8573 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
8574 Remove, insert contents in s/aix4-2.h.
8575 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
8576 * s/bsd4-3.h: Rename to ...
8577 * s/bsd-common.h: ... this.
8578 * data.c:
8579 * doc.c:
8580 * ecrt0.c:
8581 * emacs.c:
8582 * fileio.c:
8583 * floatfns.c:
8584 * keyboard.c:
8585 * mem-limits.h:
8586 * print.c:
8587 * process.c:
8588 * sysdep.c:
8589 * syssignal.h:
8590 * systty.h:
8591 * syswait.h:
8592 * term.c:
8593 * unexec.c:
8594 * unexelf.c:
8595 * unexhp9k800.c:
8596 * m/hp800.h:
8597 * m/ibmrs6000.h:
8598 * m/mips.h:
8599 * m/vax.h:
8600 * s/darwin.h:
8601 * s/freebsd.h:
8602 * s/gnu.h:
8603 * s/ms-w32.h:
8604 * s/msdos.h:
8605 * s/netbsd.h:
8606 * s/template.h: Remove references to obsolete variables.
8607
8608 * Makefile.in: Add dependencies for all unexec files.
8609 (admindir): Remove unused variable.
8610 (UNEXEC_SRC): Remove references.
8611
86122008-06-25 Chong Yidong <cyd@stupidchicken.com>
8613
8614 * xfns.c (x_default_font_parameter): If Xft is available, first
8615 try Monospace-12 for the default font.
8616
86172008-06-25 Jason Rumney <jasonr@gnu.org>
8618
8619 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
8620
86212008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
8622
8623 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
8624
8625 * buffer.c (syms_of_buffer): Remove default-word-wrap.
8626
86272008-06-25 Juanma Barranquero <lekktu@gmail.com>
8628
8629 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
8630 <scroll-conservatively>: Fix typo in docstring.
8631
8632 * xselect.c (Fx_send_client_event): Doc fix.
8633
86342008-06-25 Kenichi Handa <handa@m17n.org>
8635
8636 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
8637
8638 * font.c (font_parse_fcname): Remove unused variables.
8639 (font_sort_entites): Delete the arg SPEC. Caller changed.
8640 Fix for the case of ! best_only.
8641 (font_delete_unmatched): Check DPI and AVGWIDTH too.
8642
8643 * lisp.h (Fstring_to_unibyte): EXFUN it.
8644
8645 * character.h (str_to_unibyte): Extern it.
8646
8647 * character.c (str_to_unibyte): New function.
8648
8649 * fns.c (Fstring_to_unibyte): New function.
8650 (syms_of_fns): Defsubr it.
8651
86522008-06-24 Kenichi Handa <handa@m17n.org>
8653
8654 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
8655 DPI too.
8656 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
8657
86582008-06-24 Andreas Schwab <schwab@suse.de>
8659
8660 * Makefile.in (${lispsource}loaddefs.el): Rename from
8661 ../lisp/loaddefs.el.
8662 (bootstrap-clean): Do what distclean does but don't remove
8663 Makefile.
8664 (distclean): Depend on bootstrap-clean and remove Makefile.
8665
86662008-06-24 Chong Yidong <cyd@stupidchicken.com>
8667
8668 * buffer.h (struct buffer): New member word_wrap.
8669
8670 * buffer.c (syms_of_buffer): New variables default-word-wrap and
8671 word-wrap.
8672 (init_buffer_once): Initialize them.
8673
8674 * dispextern.h (struct it): Replace bool truncate_lines_p with a
8675 line_wrap enum possessing three possible values.
8676
8677 * termopts.h: Replace truncate_partial_width_windows with
8678 Vtruncate_partial_width_windows.
8679
8680 * dispnew.c (direct_output_for_insert): Avoid direct output when
8681 inserting a space with word wrap on.
8682
8683 * indent.c (compute_motion): Obey integer values of
8684 truncate-partial-width-windows.
8685
8686 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
8687 replacing truncate_partial_width_windows.
8688 (init_iterator): If Vtruncate_partial_width_windows is an integer,
8689 truncate only if the window width is below that integer.
8690 (start_display, resize_mini_window, produce_stretch_glyph)
8691 (display_string, move_it_in_display_line_to): Use line_wrap.
8692 (back_to_previous_visible_line_start, reseat_1): Reset
8693 string_from_display_prop_p.
8694 (display_line): Extend default face to end of line when wrapping.
8695
86962008-06-24 Kim F. Storm <storm@cua.dk>
8697
8698 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
8699 to wrap continued lines at word boundaries.
8700
87012008-06-24 Jason Rumney <jasonr@gnu.org>
8702
8703 * font.c (Ffont_face_attributes): Multiply pixel size before point
8704 conversion to avoid multiplying rounding error.
8705
87062008-06-23 Jason Rumney <jasonr@gnu.org>
8707
8708 * w32term.c (x_draw_glyph_string_background)
8709 (x_draw_glyph_string): Remove old bdf font code.
8710
8711 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
8712
87132008-06-22 Kenichi Handa <handa@m17n.org>
8714
8715 * font.c (font_find_for_lface): Try the adstyle specified in
8716 the property of LFACE_FONT of LFACE (if any).
8717
87182008-06-21 Seiji Zenitani <zenitani@mac.com>
8719 Ryo Yoshitake <ryo@shiftmode.net>
8720
8721 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
8722
87232008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
8724
8725 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
8726 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
8727 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
8728 (witness-emacs): Remove.
8729 (lisp, shortlisp): Move loaddefs.el earlier.
8730 (mostlyclean): Forget about witness-emacs.
8731
87322008-06-22 Glenn Morris <rgm@gnu.org>
8733
8734 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
8735 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
8736
87372008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8738
8739 * Makefile.in (PRECOMP): Remove.
8740 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
8741 (witness-emacs): Run `compile-first'.
8742 (.el.elc): Use the new compile-onefile target.
8743
87442008-06-21 Kenichi Handa <handa@m17n.org>
8745
8746 * xftfont.c (xftfont_open): Handle QCembolden only when
8747 FC_EMBOLDEN is defined.
8748
87492008-06-21 Andreas Schwab <schwab@suse.de>
8750
8751 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
8752 (.el.elc): Likewise.
8753
87542008-06-21 Miles Bader <miles@gnu.org>
8755
8756 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
8757 build dir, not the lisp source dir.
8758
87592008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
8760
8761 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
8762 (bootstrapclean): Remove.
8763 (.el.elc): New rule.
8764 (PRECOMP): New var.
8765 (../lisp/subdirs.el): Remove.
8766 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
8767 (witness-emacs): New target.
8768 (mostlyclean): Remove witness-emacs as well.
8769 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
8770 Add witness-emacs dependency.
8771
87722008-06-20 Chong Yidong <cyd@stupidchicken.com>
8773
8774 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
8775 defined by the font.
8776
87772008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8778
8779 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
8780 (bootstrap-clean): New target that keeps TAGS around.
8781 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
8782 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
8783
87842008-06-20 Jason Rumney <jasonr@gnu.org>
8785
8786 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
8787 Remove obsolete font code.
8788
8789 * w32font.c (font_matches_spec): Use csb bitfield from font signature
8790 to determine language support.
8791
87922008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8793
8794 * sysdep.c (cfsetspeed): New fun extracted from the code.
8795 (cfmakeraw): Move before first use.
8796
87972008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
8798
8799 * sysdep.c (cfmakeraw): Provide fallback implementation.
8800 (serial_configure): Provide fallback implementation of cfsetspeed.
8801
88022008-06-20 Kenichi Handa <handa@m17n.org>
8803
8804 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
8805 the pattern.
8806
8807 * fontset.c (fontset_from_font): Copy font_spec before changing
8808 the elements.
8809
8810 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
8811
88122008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
8813
8814 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
8815 for explicit `font' parameters.
8816
8817 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
8818
88192008-06-19 Kenichi Handa <handa@m17n.org>
8820
8821 * frame.c: Include <ctype.h>.
8822 (x_set_font_backend): Allow spacing characters in the X resource
8823 for FontBackend.
8824
88252008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
8826
8827 * w32fns.c, xfns.c (Qfont_param): New var.
8828 (syms_of_w32fns): Initialize it.
8829 (x_default_font_parameter): Record explicit `font' into
8830 `font-parameter'.
8831
88322008-06-18 Kenichi Handa <handa@m17n.org>
8833
8834 * font.c (font_parse_xlfd): Fix previous change.
8835 (font_parse_fcname): Don't use :fc-unknown-spec.
8836 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
8837 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
8838 (font_add_log): Prepend the driver name to the resulting fonts.
8839
8840 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
8841 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
8842 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
8843
8844 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
8845 (QCembolden): New variables.
8846 (syms_of_xftfont): DEFSYM them.
8847 (xftfont_open): Call XftFontMatch. Don't trust the result of
8848 XftTextExtents8 if the pixel_size is less than 5.
8849
88502008-06-18 Andreas Schwab <schwab@suse.de>
8851
8852 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
8853 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
8854
88552008-06-18 Jason Rumney <jasonr@gnu.org>
8856
8857 * w32font.c (w32font_list, w32font_match): Add logging.
8858
8859 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
8860
88612008-06-17 Chong Yidong <cyd@stupidchicken.com>
8862
8863 * font.c (font_parse_fcname): Store divider characters for
8864 unknown-spec list. For known key symbols, intern using correct
8865 symbol name.
8866
88672008-06-17 Kenichi Handa <handa@m17n.org>
8868
8869 * xfaces.c (realize_default_face): If the frame is not on window
8870 system, set the fontset of face to nil.
8871
88722008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8873
8874 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
8875
88762008-06-16 Juanma Barranquero <lekktu@gmail.com>
8877
8878 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
8879 (build_font_name_from_vector): Delete externs.
8880
8881 * xfaces.c (struct font_name): Don't declare.
8882
88832008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
8884
8885 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
8886
88872008-06-16 Chong Yidong <cyd@stupidchicken.com>
8888
8889 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
8890
88912008-06-16 Juanma Barranquero <lekktu@gmail.com>
8892
8893 * font.c (Ffont_spec): Fix usage in docstring.
8894 (Ffont_face_attributes): Doc fix.
8895
88962008-06-16 Andreas Schwab <schwab@suse.de>
8897
8898 * font.c (Ffont_face_attributes): Fix definition.
8899
89002008-06-16 Jason Rumney <jasonr@gnu.org>
8901
8902 * font.h (font_style_symbolic_from_value): Remove.
8903
8904 * font.c (font_style_symbolic_from_value): Remove.
8905 (font_style_symbolic): Revert to pre 2008-06-13 version.
8906
8907 * w32font.c (w32_to_fc_weight): New function.
8908 (w32font_full_name, logfont_to_fcname): Use it.
8909
89102008-06-16 Kenichi Handa <handa@m17n.org>
8911
8912 * font.c (font_check_object): Delete it.
8913 (font_clear_cache): Check if a font-object is alive.
8914 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
8915 font-object to nil.
8916 (font_close_object): Don't check FONT_CLOSE_OBJECT.
8917 (font_at): Don't call font_check_object.
8918 (Ffont_get): Return a symbol for :weight, :slant, and :width.
8919
89202008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
8921
8922 * puresize.h (BASE_PURESIZE): Increase to 1230000.
8923
89242008-06-16 Chong Yidong <cyd@stupidchicken.com>
8925
8926 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
8927
89282008-06-15 Chong Yidong <cyd@stupidchicken.com>
8929
8930 * font.c (font_parse_fcname): Only one decimal point.
8931 (font_unparse_fcname): Handle data in family and foundry indices
8932 as symbols, not strings.
8933 (font_unparse_gtkname, Ffont_face_attributes): New functions.
8934
8935 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
8936
8937 * font.h (font_unparse_gtkname): Add prototype.
8938
89392008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
8940
8941 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
8942
89432008-06-15 Andreas Schwab <schwab@suse.de>
8944
8945 * font.c (font_update_drivers): Fix crash when no drivers match.
8946
89472008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
8948
8949 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
8950 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
8951
89522008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
8953
8954 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
8955
89562008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
8957
8958 * process.c (Fserial_process_configure, Fprocess_send_eof):
8959 Use EQ to compare Lisp_Objects.
8960
89612008-06-13 Jason Rumney <jasonr@gnu.org>
8962
8963 * w32fns.c (Fw32_select_font): Remove old font API function.
8964
8965 * w32font.c (logfont_to_fcname): New function.
8966 (Fx_select_font): New font dialog function compatible with
8967 GTK/fontconfig version.
8968
8969 * font.c (font_style_symbolic_from_value): New function.
8970 (font_style_symbolic): Use it.
8971
8972 * font.h (font_style_symbolic_from_value): Declare new function.
8973
89742008-06-13 Juanma Barranquero <lekktu@gmail.com>
8975
8976 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
8977 <font-width-table>: Fix typos in docstrings.
8978
89792008-06-13 Daniel Engeler <engeler@gmail.com>
8980
8981 These changes add serial port access.
8982 * process.c: Add HAVE_SERIAL.
8983 (Fdelete_process, Fprocess_status, Fset_process_buffer)
8984 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
8985 (list_processes_1, select_wrapper, Fstop_process)
8986 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
8987 (status_notify): Modify to handle serial processes.
8988 [HAVE_SERIAL] (Fserial_process_configure)
8989 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
8990 New functions.
8991 * process.h (struct Lisp_Process): Add `type'.
8992 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
8993 New functions.
8994 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
8995 serial ports.
b71ac3dd 8996 (serial_open, serial_configure): New functions.
aac0c6e3
MR
8997 * w32.h: Add FILE_SERIAL.
8998 (struct _child_process): Add ovl_read, ovl_write.
8999
90002008-06-13 Kenichi Handa <handa@m17n.org>
9001
9002 * dispextern.h (enum lface_attribute_index): New member
9003 LFACE_FOUNDRY_INDEX.
9004
9005 * font.c (font_score): Delete arg alternate_families. Check only
9006 weight, slant, width, and size. Ignore the difference of alias
9007 style symbols.
9008 (font_sort_entites): Adjust for the above change. Reflect the
9009 order of font-driver to scores.
9010 (font_list_entities): Don't check alternate_familes here.
9011 (font_clear_prop): Handle foundry.
9012 (font_update_lface): Don't parse "foundry-family" form here.
9013 Handle FONT_FOUNDRY_INDEX.
9014 (font_find_for_lface): Likewise. Handle alternate families here.
9015 If registry is nil, try iso8859-1 and ascii-0.
9016 (font_open_for_lface): Pay attention to size in ENTITY.
9017 (font_open_by_name): Simplify by calling font_load_for_lface.
9018 (free_font_driver_list): Delete it.
9019 (font_update_drivers): Preserve the order of backends.
9020 (syms_of_font): Setting of sort_shift_bits adjusted for the change
9021 of font_score and font_sort_entites.
9022 (font_update_sort_order): Likewise.
9023
9024 * xfaces.c (LFACE_FOUNDRY): New macro.
9025 (check_lface_attrs): Check foundry.
9026 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
9027 (merge_face_vectors): Check foundry.
9028 (merge_face_ref): Likewise.
9029 (Finternal_set_lisp_face_attribute): Likewise.
9030 (x_update_menu_appearance): Likewise.
9031 (Finternal_get_lisp_face_attribute): Likewise.
9032 (lface_hash): Likewise.
9033 (lface_same_font_attributes_p): Likewise.
9034 (x_supports_face_attributes_p): Likewise.
9035 (tty_supports_face_attributes_p): Likewise.
9036 (Finternal_set_alternative_font_family_alist): Intern strings.
9037 (Finternal_set_alternative_font_registry_alist): Downcase strings.
9038 (realize_default_face): Set LFACE_FOUNDRY (lface).
9039
9040 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
9041 font-driver at first.
9042
9043 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
9044
90452008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9046
9047 * lread.c (Fload): Use xfree, not free on saved_doc_string.
9048
90492008-06-12 Jim Meyering <meyering@redhat.com>
9050
9051 Make unexec_free handle NULL the same way free does.
9052 * unexmacosx.c (unexec_free): Ignore a NULL argument.
9053
90542008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
9055
9056 * character.h (CHAR_TO_BYTE_SAFE): New macro.
9057 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
9058 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
9059 (WEAK_ALIAS): Simplify.
9060 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
9061 when searching a unibyte buffer.
9062
90632008-06-12 Chong Yidong <cyd@stupidchicken.com>
9064
9065 * xfns.c (Fx_select_font): Rename from x-font-dialog.
9066
90672008-06-12 Juanma Barranquero <lekktu@gmail.com>
9068
9069 * w32font.c: Include ctype.h.
9070
90712008-06-11 Jason Rumney <jasonr@gnu.org>
9072
9073 * w32font.c (w32font_encode_char): Detect missing glyphs that are
9074 misreported as space.
9075 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
9076 as aliases for registry iso10646-1.
9077
90782008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
9079
9080 * buffer.c (clone_per_buffer_values): Skip `name'.
9081
90822008-06-11 Chong Yidong <cyd@stupidchicken.com>
9083
9084 * font.c (font_parse_fcname): Fix last change; accept decimal
9085 points in font size.
9086
90872008-06-10 Jason Rumney <jasonr@gnu.org>
9088
9089 * w32uniscribe.c (add_opentype_font_name_to_list):
9090 Skip non unicode fonts.
9091
90922008-06-10 Chong Yidong <cyd@stupidchicken.com>
9093
9094 * xfns.c (Fx_font_dialog): New function.
9095
9096 * gtkutil.c (xg_dialog_response_cb): Rename from
9097 xg_file_response_callback.
9098 (pop_down_dialog): Rename from pop_down_file_dialog.
9099 (xg_get_file_name): Callers changed.
9100 (xg_get_font_name): New function.
9101
9102 * gtkutil.h (xg_get_font_name): Insert prototype.
9103
91042008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9105
9106 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
9107 x_underline_minimum_display_offset.
9108 (syms_of_xdisp): Declare it here rather than in xterm.c.
9109 * dispextern.h (underline_minimum_offset): Declare it.
9110 * w32term.c (x_draw_glyph_string): Use it.
9111 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
9112 (syms_of_xterm): Don't declare it any more.
9113 (x_draw_glyph_string): Adjust to the new name.
9114
91152008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
9116
9117 * xterm.c (x_underline_minimum_display_offset): New var.
9118 (x_draw_glyph_string): Use it.
9119 (syms_of_xterm): Declare it.
9120
91212008-06-10 Chong Yidong <cyd@stupidchicken.com>
9122
9123 * font.c (font_parse_fcname): Accept GTK-style font names too.
9124
91252008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
9126
9127 * dired.c (file_name_completion): Don't return t if the match is exact
9128 but with different capitalization.
9129 * minibuf.c (Ftry_completion): Simplify.
9130
9131 * window.c (Vwindow_point_insertion_type): New var.
9132 (set_window_buffer): Use it.
9133 (syms_of_window): Init and export it to Lisp.
9134
91352008-06-10 Kenichi Handa <handa@m17n.org>
9136
9137 * font.h (font_intern_prop): Prototype adjusted.
9138
9139 * font.c (font_intern_prop): New arg force_symbol.
9140 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
9141 Adjust for the change of font_intern_prop.
9142
9143 * ftfont.c (ftfont_pattern_entity):
9144 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
9145 (w32_registry):
9146 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
9147 the change of font_intern_prop.
9148
91492008-06-09 Juanma Barranquero <lekktu@gmail.com>
9150
9151 * w32menu.c (digest_single_submenu): Declare extern.
9152
91532008-06-09 Jason Rumney <jasonr@gnu.org>
9154
9155 * w32term.c (x_make_frame_visible): Use alternate restore flags.
9156
9157 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
9158 (parse_single_submenu): Remove.
9159 (digest_single_submenu): Remove.
9160 (syms_of_w32menu): Don't initialise variables that have moved
9161 to menu.c.
9162 (set_frame_menubar): Sync with version in xmenu.c.
9163 (w32_menu_show): Sync with xmenu_show in xmenu.c.
9164
9165 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
9166 Make static again.
9167
91682008-06-09 Jason Rumney <jasonr@gnu.org>
9169
9170 Changes to w32 files related to the move of common menu code
9171 to menu.c on 2008-06-08 by Chong Yidong.
9172
9173 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
9174 defs to w32gui.h.
9175 (single_keymap_panes, push_menu_item, push_menu_pane):
9176 Make globally visible.
9177
9178 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
9179 (local_free, malloc_widget_value, free_widget_value)
9180 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
9181 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
9182 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
9183 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
9184 (menu_items, menu_items_allocated, menu_items_used)
9185 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
9186 (init_menu_items, finish_menu_items, discard_menu_items)
9187 (grow_menu_items, push_submenu_start, push_submenu_end)
9188 (push_left_right_boundary, push_menu_pane, push_menu_item)
9189 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
9190 (free_menubar_widget_tree_value, parse_single_submenu)
9191 (update_submenu_strings): Remove functions.
9192 (xmalloc_widget_value): Remove and declare extern.
9193
9194 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
9195 (OBJ1): Build it.
9196
9197 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
9198 (local_heap, local_alloc, local_free, malloc_widget_value)
9199 (free_widget_value): Define here.
9200
92012008-06-09 Kenichi Handa <handa@m17n.org>
9202
9203 * font.h (Qascii_0): Extern it.
9204
9205 * font.c (Qascii_0): New variable.
9206 (syms_of_font): DEFSYM it.
9207 (font_open_by_name): If the registry "iso8859-1" fails, try also
9208 "ascii-0".
9209
9210 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
9211
92122008-06-08 Kenichi Handa <handa@m17n.org>
9213
9214 * .gdbinit (xfont): New command.
9215
92162008-06-08 Andreas Schwab <schwab@suse.de>
9217
9218 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
9219 * Makefile.in (menu.o): Update dependencies.
9220
9221 * Makefile.in (obj): Always add menu.o.
9222 * emacs.c (main): Always call syms_of_menu.
9223 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
9224
92252008-06-08 Chong Yidong <cyd@stupidchicken.com>
9226
9227 * Makefile.in: Compile menu.c.
9228
9229 * lisp.h: Declare syms_of_menu.
9230
9231 * emacs.c (main): Call syms_of_menu.
9232
9233 * keyboard.h: Relocate platform-independent menu definitions from
9234 xmenu.c.
9235
9236 * menu.c: New file. Relocate platform-independent menu
9237 definitions from xmenu.c. Suggested by Adrian Robert.
9238
9239 * xmenu.c: Remove platform-independent menu definitions.
9240 (menu_items menu_items_inuse, menu_items_allocated)
9241 (menu_items_used, menu_items_n_panes)
9242 (menu_items_submenu_depth): Move to keyboard.h.
9243 (init_menu_items, finish_menu_items, unuse_menu_items)
9244 (discard_menu_items, restore_menu_items, save_menu_items)
9245 (grow_menu_items, push_submenu_start, push_submenu_end)
9246 (push_left_right_boundary, push_menu_pane, push_menu_item)
9247 (keymap_panes, single_keymap_panes, single_menu_item)
9248 (list_of_panes, list_of_items, find_and_call_menu_selection)
9249 (xmalloc_widget_value, free_menubar_widget_value_tree)
9250 (parse_single_submenu, digest_single_submenu)
9251 (update_submenu_strings): Move to menu.c.
9252
92532008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
9254
9255 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
9256
92572008-06-06 Miles Bader <miles@gnu.org>
9258
9259 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
9260 face, not frame default.
9261
92622008-06-05 Martin Rudalics <rudalics@gmx.at>
9263
9264 * window.c (pop_up_windows, pop_up_frames)
9265 (display_buffer_reuse_frames, Vpop_up_frame_function)
9266 (Vdisplay_buffer_function, Veven_window_heights)
9267 (Vspecial_display_buffer_names, Vspecial_display_regexps)
9268 (Vspecial_display_function, Vsame_window_buffer_names)
9269 (Vsame_window_regexps, split_height_threshold)
9270 (Vsplit_window_preferred_function): Move those vars to window.el.
9271 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
9272 (Fdisplay_buffer): Move those functions to window.el.
9273 (syms_of_window): Remove corresponding declarations.
9274 (display_buffer): New function.
9275 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
9276 * dispnew.c (Flast_nonminibuf_frame): New function.
9277 * buffer.c (Fpop_to_buffer): Move to window.el.
9278
92792008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9280
9281 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
9282
92832008-06-05 Kenichi Handa <handa@m17n.org>
9284
9285 * coding.c (detect_coding): Fix previous change.
9286 (detect_coding_system): Likewise.
9287
92882008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9289
9290 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
9291
9292 * keymap.c (Vminibuffer_local_filename_must_match_map):
9293 Rename from Vminibuffer_local_must_match_filename_map.
9294 (syms_of_keymap):
9295 * minibuf.c (Fcompleting_read): Adjust accordingly.
9296 * commands.h: Rename declaration as well.
9297
92982008-06-05 Kenichi Handa <handa@m17n.org>
9299
9300 * font.c (Ffont_spec): Don't use font_parse_family_registry for
9301 family name.
9302 (Ffont_put): Likewise.
9303
9304 * fontset.c (fontset_find_font): Call font_open_for_lface with the
9305 current font-spec.
9306
9307 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
9308 is unspecified.
9309
9310 * xfaces.c (realize_x_face): If the font-related face attributes
9311 are the same as those of default face, realize a new fontset from
9312 default->fontset.
9313 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
9314
93152008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
9316
9317 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
9318 (move_it_in_display_line): New wrapper.
9319
9320 * window.c (window_scroll_pixel_based_preserve_x)
9321 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
9322 (window_scroll_pixel_based, window_scroll_line_based):
9323 Use them to preserve column positions.
9324 (syms_of_window): Initialize them.
9325
9326 * indent.c (Fvertical_motion): Extend first arg to allow passing an
9327 (HPOS . VPOS) pair.
9328
9329 * dispextern.h (move_it_in_display_line): Declare.
9330
93312008-06-05 Juanma Barranquero <lekktu@gmail.com>
9332
9333 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
9334 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
9335 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
9336
93372008-06-04 Juanma Barranquero <lekktu@gmail.com>
9338
9339 * window.c (Fset_window_parameter): Doc fix.
9340 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
9341
93422008-06-04 Joakim Verona <joakim@verona.se>
9343
9344 * window.h (struct window): Add new member window_parameters.
9345
9346 * window.c (Fwindow_parameters, Fwindow_parameter)
9347 (Fset_window_parameter): New defuns.
9348 (syms_of_window): Defsubr the new defuns.
9349 (make_window): Initialize window_parameters to nil.
9350
93512008-06-04 John Paul Wallington <jpw@pobox.com>
9352
9353 * eval.c (Fdefmacro): Doc fix.
9354
93552008-06-04 Kenichi Handa <handa@m17n.org>
9356
9357 * coding.c (detect_coding): Fix handling of coding->head_ascii.
9358 Be sure to call setup_coding_system when we find a proper coding system.
9359 (detect_coding_system): Fix handling of coding->head_ascii.
9360
93612008-06-03 Andreas Schwab <schwab@suse.de>
9362
9363 * font.c (font_prop_validate_spacing): Fix last change.
9364
93652008-06-03 Kenichi Handa <handa@m17n.org>
9366
9367 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
9368 (font_parse_fcname): Fix handling of unknown key.
9369
9370 * xfont.c (xfont_list): Try an alias.
9371
9372 * charset.c (char_charset): Return NULL if the arg charset_list is
9373 specified and C doesn't belong to any of them.
9374
93752008-06-02 Chip Coldwell <coldwell@redhat.com>
9376
9377 * font.c (font_pixel_size): Don't take cdr of an integer.
9378
93792008-06-02 Jim Meyering <meyering@redhat.com>
9380
9381 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
9382 * alloc.c (xfree): Return right away for a NULL arg.
9383 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
9384 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
9385 * mac.c (create_apple_event_from_event_ref): Likewise.
9386 (create_apple_event_from_drag_ref, cfstring_create_normalized):
9387 Likewise.
9388 * doprnt.c (doprnt1): Likewise.
9389 * frame.c (frame): Likewise.
9390 * keyboard.c (wipe_kboard): Likewise.
9391 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
9392 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
9393 * term.c (tty_default_color_capabilities, maybe_fatal)
9394 (delete_tty): Likewise.
9395 * w16select.c (string): Likewise.
9396 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
9397 * w32bdf.c (w32_free_bdf_font): Likewise.
9398 * w32fns.c (w32_unload_font): Likewise.
9399 * w32font.c (w32font_close): Likewise.
9400 * window.c (size_window): Likewise.
9401 * xselect.c (receive_incremental_selection): Likewise.
9402 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
9403 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
9404 * w32.c (stat): Likewise.
9405
9406 Remove useless if-before-free tests.
9407 * editfns.c (Fset_time_zone_rule): Likewise.
9408 * lread.c (nosuffix): Likewise.
9409 * ralloc.c (get_bloc): Likewise.
9410 * regex.c (reg_free): Likewise.
9411 * xftfont.c (xftfont_open, xftfont_close): Likewise.
9412 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
9413 * xsmfns.c (smc_save_yourself_CB): Likewise.
9414
94152008-06-02 Kenichi Handa <handa@m17n.org>
9416
9417 * font.c (font_find_for_lface): Handle float font size.
9418 (font_open_for_lface): Likewise.
9419
9420 * xfaces.c (x_supports_face_attributes_p): Check face->font before
9421 comparing the properties.
9422
94232008-06-01 Jason Rumney <jasonr@gnu.org>
9424
9425 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
9426 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
9427 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
9428 Don't add empty script list.
9429 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
9430
94312008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
9432
9433 * Makefile.in (dot, dotdot): Remove, update users.
9434 ".." has been used elsewhere in the file for a long time.
9435 (LIBXT_STATIC): Remove conditional based on unused variable.
9436
94372008-06-01 Miles Bader <miles@gnu.org>
9438
9439 * xfaces.c (Vface_remapping_alist): New variable.
9440 (syms_of_xfaces): Initialize it.
9441 (enum named_merge_point_kind): New type.
9442 (struct named_merge_point): Add `named_merge_point_kind' field.
9443 (push_named_merge_point): Make cycle detection respect different
9444 named-merge-point kinds.
9445 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
9446 Remove face-name alias resolution.
9447 (lface_from_face_name): New definition using
9448 `lface_from_face_name_no_resolve'.
9449 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
9450 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
9451 (get_lface_attributes): New definition that layers face-remapping on
9452 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
9453 (lookup_basic_face): New function.
9454 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
9455 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
9456 `get_lface_attributes'.
9457 (face_at_buffer_position): Use `lookup_basic_face' to lookup
9458 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
9459 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
9460
9461 * xdisp.c (init_iterator): Pass base_face_id through
9462 `lookup_basic_face' when we actually use it as a face-id.
9463 (handle_single_display_prop): Use `lookup_basic_face' to lookup
9464 DEFAULT_FACE_ID.
9465
9466 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
9467 lookup the initial face-id.
9468
9469 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
9470
94712008-06-01 Juanma Barranquero <lekktu@gmail.com>
9472
9473 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
9474 (Fremove_text_properties): Fix typos in docstrings.
9475
94762008-05-31 Kenichi Handa <handa@m17n.org>
9477
9478 * font.c (font_list_entities): Fix the car part of data to be
9479 stored in the cache.
9480
9481 * ftfont.c (ftfont_font_format): Don't use strcasestr.
9482
94832008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9484
9485 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
9486 Add a `test' argument so another predicate than `equal' can be used.
9487 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
9488 (map_char_table): Remove unused vars `c' and `i'.
9489 * lisp.h (Foptimize_char_table): Adjust declaration.
9490 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
9491
94922008-05-30 Kenichi Handa <handa@m17n.org>
9493
9494 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
9495 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
9496 defined.
9497
94982008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
9499
9500 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
9501 (Fmake_variable_frame_local): Disallow mixing buffer-local and
9502 frame-local settings for the same variable.
9503
95042008-05-30 Kenichi Handa <handa@m17n.org>
9505
9506 * fontset.c (Ffont_info): Move to font.c.
9507 (syms_of_fontset): Delete defsubr of Sfont_info.
9508
9509 * font.c (font_style_to_value, font_score): Delete casting of the
9510 args to xstcasecmp.
9511 (register_font_driver): Increment num_font_drivers only when
9512 registering the driver globally.
9513 (Ffont_info): Move from fontset.c. Handle a font object too.
9514 (syms_of_font): Defsubr Sfont_info.
9515
95162008-05-29 Kenichi Handa <handa@m17n.org>
9517
9518 * coding.h (enum define_coding_utf8_arg_index): New enum.
9519 (enum coding_attr_index): Change coding_attr_utf_16_bom to
9520 coding_attr_utf_bom.
9521 (enum utf_bom_type): Rename from utf_16_bom_type.
9522 (struct utf_16_spec): Adjust for the above change.
9523 (struct coding_system): Add utf_8_bom in `spec' union.
9524
9525 * coding.c (CODING_UTF_8_BOM): New macro.
9526 (enum coding_category): Delete coding_category_utf_8, add
9527 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
9528 coding_category_utf_8_sig.
9529 (CATEGORY_MASK_UTF_8): Delete it.
9530 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
9531 (CATEGORY_MASK_UTF_8_SIG): New macros.
9532 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
9533 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
9534 CATEGORY_MASK_UTF_8_SIG.
9535 (CATEGORY_MASK_UTF_8): New macro.
9536 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
9537 (detect_coding_utf_8): Check BOM.
9538 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
9539 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
9540 (encode_coding_utf_16): Likewise.
9541 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
9542 (detect_coding, detect_coding_system): Handle utf-8-auto.
9543 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
9544 (syms_of_coding): Fix setting up of Vcoding_category_table.
9545
95462008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
9547
9548 * process.c (Faccept_process_output): If `millisec' is non-nil,
9549 `seconds' default to 0.
9550 (wait_reading_process_output): Also return non-nil if we read output
9551 from a non-running process.
9552
95532008-05-29 Jason Rumney <jasonr@gnu.org>
9554
9555 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
9556 `raster' specified.
9557 (add_font_entity_to_list): Allow non-opentype truetype fonts back
9558 in the uniscribe backend, but disallow any font that has no
9559 unicode subrange support.
9560
95612008-05-29 Juanma Barranquero <lekktu@gmail.com>
9562
9563 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
9564 Fix typos in docstrings.
9565
95662008-05-29 Kenichi Handa <handa@m17n.org>
9567
9568 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
9569 (Fx_family_fonts): Set frame correctly.
9570
95712008-05-28 Jason Rumney <jasonr@gnu.org>
9572
9573 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
9574
95752008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9576
9577 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
9578 calling build_annotations.
9579
95802008-05-28 Juanma Barranquero <lekktu@gmail.com>
9581
9582 * coding.c (Fdecode_coding_region, Fencode_coding_region)
9583 (Fencode_coding_string):
9584 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
9585 <latin-extra-code-table>: Fix typos in docstrings.
9586 (syms_of_coding) <coding-system-alist>: Doc fix.
9587 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
9588
95892008-05-28 Kenichi Handa <handa@m17n.org>
9590
9591 * fontset.c (Ffont_info): Don't call font_close_object.
9592
9593 * font.c (font_parse_family_registry): Use Ffont_put to validate
9594 foundry and family.
9595 (font_delete_unmatched): Don't check spacing.
9596 (font_list_entities): Add spacing to the spec to list fonts.
9597
9598 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
9599 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
9600
9601 * coding.c (encode_coding_raw_text): Fix previous change.
9602 (encode_coding_object): When the dst_object is a buffer and is
9603 different from src_object, move gap to PT.
9604
96052008-05-27 Chong Yidong <cyd@stupidchicken.com>
9606
9607 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
9608
96092008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9610
9611 * coding.c (encode_coding_raw_text): Set coding->produced_char for
9612 all branches. Compute it differently.
9613
9614 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
9615
96162008-05-27 Juanma Barranquero <lekktu@gmail.com>
9617
9618 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
9619 into "else if () ... else ...".
9620
96212008-05-27 Jason Rumney <jasonr@gnu.org>
9622
9623 * w32font.c (w32font_open_internal): Determine if glyph indices
9624 are likely to work here.
9625
96262008-05-27 Chong Yidong <cyd@stupidchicken.com>
9627
9628 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
9629 draw overlap glyphs with appropriate highlighting.
9630
96312008-05-27 Kenichi Handa <handa@m17n.org>
9632
9633 * xfont.c (xfont_open): Fix calculation of font->average_width.
9634
96352008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
9636
9637 * casefiddle.c (casify_object): Try to guess better whether the
9638 argument is a byte or a char.
9639
96402008-05-26 Andreas Schwab <schwab@suse.de>
9641
9642 * xselect.c (x_reply_selection_request): Properly handle format == 32.
9643 Always send multiples of format size.
9644
9645 * xterm.c (x_set_frame_alpha): Fix type mismatch.
9646
96472008-05-26 Jason Rumney <jasonr@gnu.org>
9648
9649 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
9650 (compute_metrics): Don't set failure if we just cleared the cache.
9651 (w32_weight_table): Remove unused variable.
9652 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
9653 backwards compatibility.
9654
96552008-05-25 Kenichi Handa <handa@m17n.org>
9656
9657 * w32term.c (x_draw_glyph_string):
9658 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
9659
9660 * xfaces.c: Delete unused function prototypes.
9661 (xstrlwr, font_frame): Delete them.
9662 (clear_face_cache): Delete unused variable.
9663
9664 * xftfont.c (xftfont_open): Delete unused variable.
9665 If underline_thickness is not 1, adjust underline_position.
9666
9667 * ftxfont.c (ftxfont_open): Delete unused variable.
9668
9669 * fontset.c (face_for_char): Optimize for the case of no charset
9670 property.
9671
9672 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
9673 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
9674 (otf_open, font_otf_capability, generate_otf_features)
9675 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9676 Comment out by surrounding "#if 0" and "#endif" for the moment.
9677 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
9678 (syms_of_font): Codes for accessing above commented out.
9679
96802008-05-24 Eli Zaretskii <eliz@gnu.org>
9681
9682 * w32proc.c: Include dispextern.h.
9683
9684 * w32.c: Include dispextern.h.
9685
96862008-05-23 Juanma Barranquero <lekktu@gmail.com>
9687
9688 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
9689 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
9690 Fix typos in docstrings.
9691
96922008-05-23 Jason Rumney <jasonr@gnu.org>
9693
9694 * xsmfns.c: Remove includes that are already included by config.h.
9695
96962008-05-23 Kenichi Handa <handa@m17n.org>
9697
9698 * charset.c (Qemacs, charset_emacs): New variables.
9699 (char_charset): Fix for non-Unicode characters.
9700 (syms_of_charset): Define charset_emacs.
9701
9702 * w32term.c (x_draw_glyph_string): Be sure to update
9703 s->underline_thickness and s->underline_position. Be sure to draw
9704 underline within the current line area.
9705
9706 * xterm.c (x_draw_glyph_string): Be sure to update
9707 s->underline_thickness and s->underline_position. Be sure to draw
9708 underline within the current line area.
9709
9710 * fontset.c: Delete unused variables and add casting for char *
9711 throughout the file.
9712 (fontset_font): Try the fallback fonts of the current fontset
9713 before consulting the default fontset.
9714
9715 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
9716
9717 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
9718
97192008-05-22 Jason Rumney <jasonr@gnu.org>
9720
9721 * font.c: Don't include strings.h.
9722
9723 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
9724
9725 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
9726 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
9727 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
9728 to call xstrcasecmp.
9729
9730 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
9731
9732 * fontset.c (fs_query_fontset): Use xstrcasecmp.
9733
9734 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
9735
9736 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
9737
97382008-05-22 Kenichi Handa <handa@m17n.org>
9739
9740 * puresize.h (BASE_PURESIZE): Increase to 1220000.
9741
9742 * font.c (font_prop_validate_style): Adjust for the format
9743 change of font_style_table.
9744
9745 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
9746 two args.
9747
9748 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
9749 two args.
9750
97512008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
9752
9753 * minibuf.c (keys_of_minibuf): Delete.
9754 * lisp.h (keys_of_minibuf): Delete.
9755 * emacs.c (main): Don't call keys_of_minibuf.
9756
97572008-05-22 Kenichi Handa <handa@m17n.org>
9758
9759 * ftfont.c (ftfont_resolve_generic_family): Rename from
9760 ftfont_list_generic_family. Return a single family for each
9761 generic family.
9762 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
9763 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
9764 Call font_add_log.
9765 (ftfont_match): Call font_add_log.
9766
9767 * font.h (Ffont_xlfd_name): EXFUN adjusted.
9768 (FONT_DEBUG): Define it.
9769 (font_add_log): Extern it.
9770 (font_assert): Rename from xassert.
9771
9772 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
9773 (xfont_list_family): Call font_add_log.
9774 (xfont_match): Likewise.
9775 (memq_no_quit): Delete.
9776
9777 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
9778 call of Ffont_xlfd_name.
9779
9780 * xfaces.c (struct table_entry, slant_table, weight_table)
9781 (swidth_table): Move to font.c.
9782
9783 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
9784 xassert are changed to font_assert. Delete many unused variables.
9785 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
9786 New variables.
9787 (struct table_entry): Move from xfaces.c and modified.
9788 (weight_table, slant_table, width_table): Move from xfaces.c and
9789 contents adjusted for the change of struct table_entry.
9790 (font_style_to_value, font_style_symbolic): Adjust for the
9791 format change of font_style_table.
9792 (font_parse_family_registry): Don't overwrite existing foundry and
9793 family of font_spec.
9794 (font_score): Fix calculation of diff for sizes.
9795 (font_sort_entites): Call font_add_log.
9796 (font_delete_unmatched): Return a newly created list.
9797 (font_list_entities): Fix previous change. Call font_add_log.
9798 (font_matching_entity, font_open_entity, font_close_entity):
9799 Call font_add_log.
9800 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
9801 (Finternal_set_font_style_table): Delete.
9802 (BUILD_STYLE_TABLE): New macro.
9803 (build_style_table): New function.
9804 (Vfont_log, font_log_env_checked): New variables.
9805 (font_add_log): New function.
9806 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
9807 Declare Lisp variables "font-weight-table", "font-slant-table",
9808 "font-width-table", and "font-log". Initialize font_style_table.
9809
98102008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
9811
9812 * xterm.c (x_set_frame_alpha): Move declarations before statements.
9813
98142008-05-21 Seiji Zenitani <zenitani@mac.com>
9815 Ryo Yoshitake <ryo@shiftmode.net>
9816
9817 * frame.c (Qalpha): Add a new frame parameter `alpha'.
9818 (Vframe_alpha_lower_limit): New variable.
9819 (x_set_alpha): New function.
9820
9821 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
9822
9823 * xfns.c (x-create-frame, Qalpha):
9824 Initialize the frame parameter `alpha'.
9825 * xterm.c (OPAQUE, OPACITY): New.
9826 (x_set_frame_alpha): New function.
9827 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
9828
9829 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
9830 * w32fns.c (w32_frame_parm_handlers): Likewise.
9831
98322008-05-20 Jason Rumney <jasonr@gnu.org>
9833
9834 * w32font.c (add_font_entity_to_list): Don't add non-opentype
9835 truetype fonts to opentype list.
9836
98372008-05-20 Juanma Barranquero <lekktu@gmail.com>
9838
9839 * fontset.c (Ffontset_info): Doc fix.
9840 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
9841 <ignore-relative-composition>: Fix typos in docstrings.
9842
9843 * font.c (syms-of-font) <font-encoding-alist>:
9844 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
9845 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
9846 (Ffont_otf_alternates): Doc fixes.
9847
98482008-05-20 Kenichi Handa <handa@m17n.org>
9849
9850 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
9851 font.h through out the file.
9852 (FONT_DRIVERS): Rename from FONTOBJ.
9853 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
9854 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
9855
9856 * emacs.c (main): Call syms_of_font unconditionally.
9857
9858 * font.h (find_font_encoding): Extern it.
9859
9860 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
9861 fontset.c.
9862 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
9863 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
9864 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
9865 only when HAVE_WINDOW_SYSTEM is defined.
9866 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
9867 when HAVE_WINDOW_SYSTEM is defined.
9868
9869 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
9870 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
9871
9872 * xfaces.c: Include font.h unconditionally.
9873 (merge_face_ref, merge_face_vectors)
9874 (Finternal_set_lisp_face_attribute): Cancel the previous change.
9875
98762008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
9877
9878 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
9879 indirect_variable.
9880 * eval.c (lisp_indirect_variable): New fun.
9881 (Fuser_variable_p): Use it.
9882
98832008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
9884
9885 * lisp.h (indirect_variable):
9886 * data.c (indirect_variable, let_shadows_buffer_binding_p):
9887 Use Lisp_Symbol pointers rather than Lisp_Object.
9888 Adjust callers.
9889 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
9890 To this end, change calling-convention.
9891
9892 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
9893 if some non-hidden buffers are selected by string&pred.
9894
98952008-05-19 Chong Yidong <cyd@stupidchicken.com>
9896
9897 * process.c (wait_reading_process_output): Always check status
9898 when in batch mode.
9899
99002008-05-19 Kenichi Handa <handa@m17n.org>
9901
9902 * font.c (font_list_entities): Fix handling of cache.
9903 (font_matching_entity): Likewise.
9904
9905 * ftfont.c (cs_iso8859_1): Delete.
9906 (ft_face_cache): New variable.
9907 (struct ftfont_info): New member fc_charset_idx.
9908 (ftfont_build_basic_charsets): Delete.
9909 (fc_charset_table): New variable.
9910 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
9911 . FC_CHARSET_IDX) as :font-entity property in the font entity.
9912 Callers changed.
9913 (ftfont_lookup_cache, ftfont_get_charset): New functions.
9914 (ftfont_spec_pattern): New argument fc_charset_idx.
9915 Check registry more rigidly. Change callers.
9916 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
9917 change of :font-entity property of the font.
9918
9919 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
9920 property of the font.
9921
99222008-05-18 Juanma Barranquero <lekktu@gmail.com>
9923
9924 * coding.c (Fcoding_system_p): Rename argument to match docstring.
9925 (Funencodable_char_position, Fcheck_coding_systems_region)
9926 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
9927 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
9928 (Ffind_operation_coding_system, Fset_coding_system_priority)
9929 (Fcoding_system_eol_type): Doc fixes.
9930
99312008-05-17 Glenn Morris <rgm@gnu.org>
9932
9933 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
9934
99352008-05-16 Eli Zaretskii <eliz@gnu.org>
9936
9937 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
9938 and st_gid.
9939
9940 * frame.c (Fdelete_frame): Don't call font_update_drivers if
9941 HAVE_WINDOW_SYSTEM is not defined.
9942
9943 * xfaces.c (merge_face_ref, merge_face_vectors)
9944 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
9945 HAVE_WINDOW_SYSTEM is defined.
9946 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
9947
99482008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
9949
9950 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
9951
99522008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9953
9954 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
9955
99562008-05-15 Kenichi Handa <handa@m17n.org>
9957
9958 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
9959 preference.
9960
99612008-05-15 Glenn Morris <rgm@gnu.org>
9962
9963 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
9964
99652008-05-15 Chong Yidong <cyd@stupidchicken.com>
9966
9967 * fns.c (init_fns): Don't initialize weak_hash_tables here.
9968 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
9969
9970 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
9971
99722008-05-15 Kenichi Handa <handa@m17n.org>
9973
9974 * ftfont.c (ftfont_list): Downcase family name to check generic
9975 families.
9976
9977 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
9978 font-spec for QCfont value.
9979
9980 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
9981 buffer. Check the return value of it.
9982
99832008-05-14 Jason Rumney <jasonr@gnu.org>
9984
9985 * w32term.c (w32_get_glyph_overhangs): Remove.
9986 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
9987
99882008-05-14 Kenichi Handa <handa@m17n.org>
9989
9990 * font.c (font_prop_validate): Make nil a valid value.
9991 (font_clear_cache): Check if the cached vector of entities is nil
9992 or not.
9993
99942008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9995
9996 * emacs.c (main_thread): Conditionalize on
9997 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
9998 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
9999
10000 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
10001 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
10002 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
10003
100042008-05-14 Kenichi Handa <handa@m17n.org>
10005
10006 * coding.c (detect_coding_iso_2022): Ignore a coding category that
10007 has no corresponding coding system.
10008
100092008-05-14 Jason Rumney <jasonr@gnu.org>
10010
10011 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
10012
10013 * w32font.h (w32font_open_internal): Update declaration.
10014
10015 * w32font.c (w32font_open_internal): Change last argument from
10016 w32font_info struct to font object. Fill in font object from
10017 font_entity. Get Outline metrics if possible. Use them to
10018 calculate underline position and thickness. Use xlfd name as name
10019 property. Don't set codepage.
10020 (w32font_open): Pass font_object to w32font_open_internal. Don't
10021 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
10022 (w32font_draw): Use s->font.
10023 (clear_cached_metrics): Don't clear non-existent blocks.
10024
10025 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
10026 font was not found.
10027 (x_draw_glyph_string): Use underline position and thickness from font.
10028
10029 * w32uniscribe.c (uniscribe_open): Pass font_object to
10030 w32font_open_internal.
10031
100322008-05-14 Kenichi Handa <handa@m17n.org>
10033
10034 These changes are to delete all legacy font-handling codes, and
10035 make Emacs use only font-backends.
10036
10037 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
10038 (frame.o, image.o, print.o): Depend on $(FONTSRC).
10039
10040 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
10041
10042 * charset.h (Vcharset_non_preferred_head)
10043 (Vcurrent_iso639_language): Extern them.
10044
10045 * charset.c (Vcharset_non_preferred_head): New variable.
10046 (Vcurrent_iso639_language): New variable.
10047 (syms_of_charset): Declare it as a Lisp variable.
10048 (char_charset): Don't check non preferred charsets. As a last
10049 resort, return charset_unicode.
10050 (Fset_charset_priority): Update Vcharset_non_preferred_head.
10051
10052 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
10053 conditionals. Don't check enable_font_backend. Delete all codes
10054 used only when USE_FONT_BACKEND is not defined.
10055
10056 * dispextern.h (struct glyph_string): Change type of `font' to
10057 `struct font *'.
10058 (struct glyph_string): New member underline_position and
10059 underline_thickness.
10060 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
10061 (struct face): Change type of `font' to `struct font *'. Remove
10062 members `font_name', `font_info_id'.
10063 (per_char_metric, encode_char): Delete externs.
10064 (calc_pixel_width_or_height): Adjust the prototype.
10065
10066 * emacs.c (enable_font_backend): Delete extern.
10067 (main): Don't set enable_font_backend. Don't check the command
10068 line argument "-disable-font-backend".
10069
10070 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
10071 (enum font_property_index): New members FONT_DPI_INDEX,
10072 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
10073 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
10074 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
10075 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
10076 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
10077 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
10078 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
10079 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
10080 (struct font_spec, struct font_entity): New structs.
10081 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
10082 (struct font): Many members from old "struct font_info" moved to
10083 here. Members font and entity deleted.
10084 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
10085 the new font-related objects.
10086 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
10087 (CHECK_FONT_GET_OBJECT): Likewise.
10088 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
10089 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
10090 (struct font_driver): New members case_sensitive anc check. Type
10091 of the member list and open changed.
10092 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
10093 (font_symbolic_width, font_find_object, font_get_spec)
10094 (font_set_lface_from_name): Delete extern.
10095 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
10096
10097 * font.c: Include <strings.h>.
10098 (enable_font_backend): Delete it.
10099 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
10100 (CHECK_VALIDATE_FONT_SPEC): Delete it.
10101 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
10102 (null_string): Delete it.
10103 (null_vector): Make it static.
10104 (font_family_alist): Delete it.
10105 (Qnormal): Extern it.
10106 (QCextra, QClanguage): Delete it.
10107 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
10108 (font_make_spec, font_make_entity, font_make_object)
10109 (font_intern_prop): Renamed from intern_downcase. Don't downcase
10110 the string. Callers changed.
10111 (font_pixel_size): Adjusted for the format change of font-related
10112 objects.
10113 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
10114 (font_style_to_value, font_style_symbolic): New function.
10115 (build_font_family_alist): Delete it.
10116 (font_registry_charsets): Use Fassoc_string instead of
10117 assq_no_quit.
10118 (font_prop_validate_symbol): Don't return null_string.
10119 (font_prop_validate_style): Adjusted for the change of
10120 style-related values in a font vector.
10121 (font_property_table): Delete entries for QClanguage and
10122 QCantialias, add entries for QCavgwidth.
10123 (get_font_prop_index): Delete the 2nd argument FROM.
10124 (font_prop_validate): Arguments changed.
10125 (font_put_extra): Adjusted for the change of font-related objects.
10126 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
10127 (font_parse_fcname, font_unparse_fcname)
10128 (font_prepare_composition): Likewise.
10129 (font_parse_family_registry): Renamed from font_merge_old_spec.
10130 (otf_open): Delete the 1st arg entity.
10131 (font_otf_capability): Adjusted for the above change.
10132 (font_score): New arg alternate_families. Adjusted for the change
10133 of font-related objects.
10134 (font_sort_entites): New arg best_only.
10135 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
10136 Delete them.
10137 (font_match_p): Check alternate families.
10138 (font_find_object): Delete it.
10139 (font_check_object): New function.
10140 (font_clear_cache): Adjusted for the change of font-related objects.
10141 (font_delete_unmatched): New arg.
10142 (font_list_entities): Call font_driver->list with a spec that
10143 doesn't specify style-related properties.
10144 (font_matching_entity): Arguments changed. Caller changed.
10145 (font_open_entity): Adjusted for the change of font-related objects.
10146 (font_close_object, font_has_char, font_encode_char)
10147 (font_get_name, font_get_spec): Likewise.
10148 (font_spec_from_name, font_clear_prop, font_update_lface):
10149 New functions.
10150 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
10151 (font_prepare_for_face, font_done_for_face, font_open_by_name)
10152 (font_at): Adjusted for the change of font-related objects.
10153 (font_range): New function.
10154 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
10155 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
10156 (Fcopy_font_spec, Fmerge_font_spec): New function.
10157 (Ffont_family_list): Renamed from list-families.
10158 (Finternal_set_font_style_table): Arguments changed.
10159 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
10160 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
10161 change of font-related objects.
10162 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
10163
10164 * fontset.h (struct font_info): Delete it. Most members go to
10165 struct font.
10166 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
10167 (enum FONT_SPEC_INDEX): Delete it.
10168 (font_info, list_fonts_func, load_font_func, query_font_func)
10169 (set_frame_fontset_func, find_ccl_program_func)
10170 (get_font_repertory_func, new_fontset_from_font_name): Delete
10171 externs.
10172 (fontset_from_font_name): Extern it.
10173 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
10174 (FONT_INFO_FROM_FACE): Deleted.
10175 (face_for_font): Adjust prototype.
10176
10177 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
10178 conditionals. Don't check enable_font_backend. Delete all codes
10179 used only when USE_FONT_BACKEND is not defined.
10180 (get_font_info_func, list_font_func, load_font_func)
10181 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
10182 (get_font_repertory_func): Delete them.
10183 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
10184 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
10185 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
10186 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
10187 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
10188 (fontset_compare_rfontdef): New function.
10189 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
10190 rfont-defs by qsort. Adjusted for the change of font-group vector.
10191 (load_font_get_repertory): Deleted.
10192 (fontset_find_font): Use new macros to ref/set elements of
10193 font-def and rfont-def.
10194 (fontset_font): Fix the timing of remembering that no font for C.
10195 (free_face_fontset): Do nothing if the face has no fontset.
10196 (face_suitable_for_char_p): Use new macros to ref/set elements of
10197 rfont-def.
10198 (face_for_char): Likewise. Call face_for_char with font_object.
10199 (fs_load_font): Delete. Delete #pragma surrounding it.
10200 (fs_query_fontset): Use strcasecmp instead of strcmp.
10201 (generate_ascii_font_name): Adjusted for the format change of
10202 font-spec.
10203 (Fset_fontset_font): Likewise. Use new macros to set elements of
10204 font-def.
10205 (Fnew_fontset): Use font_unparse_xlfd to generate
10206 FONTSET_ASCII (fontset).
10207 (new_fontset_from_font_name): Deleted.
10208 (fontset_from_font): Renamed from new_fontset_from_font. Check if
10209 a fontset is already created for the font. FIx updating of
10210 Vfontset_alias_alist.
10211 (fontset_ascii_font): Deleted.
10212 (Ffont_info): Adjusted for the format change of font-spec.
10213 (Finternal_char_font): Likewise.
10214 (Ffontset_info): Likewise.
10215 (syms_of_fontset): Don't check load_font_func.
10216
10217 * fns.c (internal_equal): Handle PREV_FONT.
10218
10219 * frame.h: Delete USE_FONT_BACKEND conditional.
10220
10221 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
10222 conditionals. Don't check enable_font_backend. Delete all codes
10223 used only when USE_FONT_BACKEND is not defined.
10224 (x_set_font): Call x_new_font, not x_new_fontset2.
10225 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
10226 already set for the frame.
10227
10228 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
10229 a font-entity by font_make_entity. Use font_intern_prop instead
10230 of intern_downcase. Use FONT_SET_STYLE to set a style-related
10231 font property. If a font is scalable, set avgwidth property to 0.
10232 Set font-entity property by font_put_extra.
10233 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
10234 (ffont_driver): Adjusted for the change of struct font_driver.
10235 (ftfont_spec_pattern): New function.
10236 (ftfont_list): Return a list, not vector.
10237 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
10238 (ftfont_list_family): Don't downcase names.
10239 (ftfont_free_entity): Deleted.
10240 (ftfont_open): Return a font-object. Adjusted for the change of
10241 struct font. Get underline_thickness and underline_position from
10242 font property. Don't update dpyinfo->smallest_font_height and
10243 dpyinfo->smallest_char_width.
10244 (ftfont_close): Don't free `struct font'.
10245 (ftfont_has_char): Adjusted for the format change of font-entity.
10246 (ftfont_encode_char, ftfont_text_extents): Likewise.
10247
10248 * ftxfont.c (ftxfont_list): Return a list, not vector.
10249 (ftxfont_open): Return a font-object. Adjusted for the change of
10250 struct font. Get underline_thickness and underline_position from
10251 font property. Don't update dpyinfo->smallest_font_height and
10252 dpyinfo->smallest_char_width.
10253 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
10254 (ftxfont_draw): Adjusted for the change of struct font.
10255
10256 * image.c (image_ascent): Don't include "charset.h". Include
10257 "character.h" and "font.h".
10258
10259 * lisp.h (enum pvec_type): New member PREV_FONT.
10260 (Fassoc_string): EXFUN it.
10261
10262 * print.c: Include font.h.
10263 (print_object): Handle font-related objects.
10264
10265 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
10266 conditionals. Don't check enable_font_backend. Delete all codes
10267 used only when USE_FONT_BACKEND is not defined.
10268 (handle_auto_composed_prop): Do nothing if it->f is not on a
10269 window system. Check how many following characters can be
10270 displayed by the same font.
10271 (calc_pixel_width_or_height): Type of the 4th arg is changed to
10272 'struct font *'.
10273 (get_char_face_and_encoding): Assign the whole encoding task to
10274 the `encode-char' method of a font driver.
10275 (fill_composite_glyph_string): Adjusted for the change of `struct
10276 face' and `struct glyph_string'.
10277 (fill_glyph_string): Likewise.
10278 (get_per_char_metric): Arguments changed.
10279 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
10280 and `struct glyph_string'.
10281 (produce_stretch_glyph, calc_line_height_property)
10282 (x_produce_glyphs): Likewise.
10283
10284 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
10285 conditionals. Don't check enable_font_backend. Delete all codes
10286 used only when USE_FONT_BACKEND is not defined. Use
10287 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
10288 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
10289 (Qp): Extern them.
10290 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
10291 Deleted.
10292 (struct font_name): Deleted.
10293 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
10294 (compare_fonts_by_sort_order): New function.
10295 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
10296 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
10297 Deleted.
10298 (Fx_family_fonts): Use font_list_entities, and sort fonts by
10299 compare_fonts_by_sort_order.
10300 (Fx_font_family_list): Call Ffont_family_list.
10301 (face_numeric_value, face_numeric_weight, face_numeric_slant)
10302 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
10303 (face_symbolic_slant, face_symbolic_swidth)
10304 (split_font_name_into_vector, build_font_name_from_vector)
10305 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
10306 (font_rescale_ratio, split_font_name, build_font_name)
10307 (free_font_names, sort_fonts, x_face_list_fonts)
10308 (face_font_available_p, sorted_font_list, cmp_font_names)
10309 (font_list_1, concat_font_list, font_list, remove_duplicates):
10310 Deleted.
10311 (Fx_list_fonts): Use Ffont_list.
10312 (LFACE_AVGWIDTH): Deleted.
10313 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
10314 by FONTP.
10315 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
10316 (set_lface_from_font_name): Delete it.
10317 (set_lface_from_font): Renamed from
10318 set_lface_from_font_and_fontset. Caller changed. Don't set
10319 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
10320 for face.
10321 (merge_face_vectors): Copy font-spec if necessary.
10322 Clear properties of the font-spec if necessary.
10323 (merge_face_ref): Clear properties of the font-spec if necessary.
10324 (Finternal_set_lisp_face_attribute): Likewise.
10325 (set_font_frame_param): Use font_load_for_lface to load a
10326 font-object, and call Fmodify_frame_parameters with it.
10327 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
10328 font name by Ffont_xlfd_name.
10329 (Finternal_lisp_face_attribute_values): Don't check QCweight,
10330 QCslant, and QCwidth.
10331 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
10332 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
10333 Compare fonts by EQ.
10334 (lookup_non_ascii_face): Deleted.
10335 (face_for_font): The 2nd argument changed.
10336 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
10337 Check atomic font properties by case insensitive.
10338 (realize_non_ascii_face): Set face->overstrike correctly.
10339 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
10340 (dump_realized_face): Get font name from
10341 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
10342
10343 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
10344 conditionals. Don't check enable_font_backend. Delete all codes
10345 used only when USE_FONT_BACKEND is not defined.
10346 (xic_create_xfontset): Original code deleted and renamed from
10347 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
10348 (x_make_gc): Don't set GCFont in GCs.
10349 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
10350 opened by "fixed".
10351 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
10352 find_ccl_program_func, query_font_func, set_frame_fontset_func,
10353 get_font_repertory_func.
10354
10355 * xfont.c: Include <stdlib.h> and "ccl.h".
10356 (struct xfont_info): New structure.
10357 (xfont_query_font): Deleted.
10358 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
10359 moved from xterm.c.
10360 (xfont_driver): Adjusted for the change of struct font_driver.
10361 (compare_font_names): New function.
10362 (xfont_list_pattern): Sort font names case insensitively. Make
10363 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
10364 (xfont_list): Return a list, not vector.
10365 (xfont_match): If the font doesn't have QCname property, generate
10366 a name from the other font properties.
10367 (xfont_open): Return a font-object. Adjusted for the change of
10368 struct font. Get underline_thickness and underline_position from
10369 font property. Don't update dpyinfo->smallest_font_height and
10370 dpyinfo->smallest_char_width.
10371 (xfont_close): Don't free struct font.
10372 (xfont_prepare_face): Adjusted for the change of struct font.
10373 (xfont_done_face): Deleted.
10374 (xfont_has_char): Adjusted for the change of struct font.
10375 (xfont_encode_char, xfont_draw): Likewise.
10376 (xfont_check): New function.
10377
10378 * xftfont.c (xftfont_list): Adjusted for the change of `list'
10379 callback function.
10380 (xftfont_match): Adjusted for the format change of font-entity.
10381 (xftfont_open): Adjusted for the format change of font-entity and
10382 font-object. Adjusted for the change of struct font. Return a
10383 font-object. Don't update dpyinfo->smallest_font_height and
10384 dpyinfo->smallest_char_width.
10385 (xftfont_close): Block input while calling XftFontClose.
10386 (xftfont_prepare_face): Don't block input while calling
10387 xftfont_get_colors. Adjusted for the change of struct font.
10388 (xftfont_shape): Return value of error case fixed.
10389
10390 * xrdb.c (x_load_resources): Don't setup a fontset resource.
10391
10392 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
10393 conditionals.
10394 (FONT_WIDTH): Return (f)->max_width.
10395 (struct x_display_info): Delete member `font'.
10396 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
10397 (x_find_ccl_program, x_get_font_repertory): Delete externs.
10398 (struct x_output): Change type of `font' to `struct font *'.
10399
10400 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
10401 conditionals. Don't check enable_font_backend. Delete all codes
10402 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
10403 (x_per_char_metric, x_encode_char): Deleted.
10404 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
10405 (x_compute_glyph_string_overhangs): Adjusted for the change of
10406 `struct face'.
10407 (x_draw_glyph_string_foreground)
10408 (x_draw_composite_glyph_string_foreground): Likewise.
10409 (x_draw_glyph_string): Likewise. Use font->underline_position and
10410 font->underline_thickness.
10411 (x_new_font): Renamed from x_new_fontset2.
10412 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
10413 (x_check_font): Call `check' method of a font driver.
10414 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
10415 (x_query_font, x_get_font_repertory): Deleted.
10416 (x_find_ccl_program): Renamed and moved to xfont.c.
10417 (x_redisplay_interface): Adjusted for the change of `struct
10418 redisplay_interface'.
10419
10420 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
10421 conditionals. Don't check enable_font_backend. Delete all codes
10422 used only when USE_FONT_BACKEND is not defined. Surround non-used
10423 code by "#ifdef OLD_FONT" and "endif".
10424 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
10425
10426 * w32font.h (struct w32font_info): New member.
10427 (FONT_COMPAT): New macro.
10428 (w32font_open_internal): Prototype adjusted.
10429
10430 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
10431 OLD_FONT" and "endif".
10432
10433 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
10434 conditionals. Don't check enable_font_backend. Delete all codes
10435 used only when USE_FONT_BACKEND is not defined.
10436 (w32font_open): Return a font-object. Make a font-object by
10437 font_make_object. Adjusted for the change of struct w32font_info.
10438 (w32font_close): Don't free struct font. Adjusted for the change
10439 of struct w32font_info.
10440 (w32font_encode_char, w32font_text_extents, w32font_draw):
10441 Adjusted for the change of struct w32font_info.
10442 (w32font_draw): Likewise.
10443 (w32font_list_internal): Return a list, not vector.
10444 (w32font_open_internal): Change the 4th arg to font-object.
10445 Adjusted for the change of struct w32font_info and font-object format.
10446 (add_font_name_to_list): Don't downcase names.
10447 (w32_enumfont_pattern_entity): Make a font-entity by
10448 font_make_entity. Adjusted for the format change of font-entity.
10449 Use FONT_SET_STYLE to set a style-related font property. If a
10450 font is scalable, set avgwidth property to 0. Set font-entity
10451 property by font_put_extra.
10452 (font_matches_spec): Adjusted for the format change of font-entity.
10453 (w32_weight_table, w32_decode_weight): New variables.
10454 (w32_encode_weight): New function.
10455 (fill_in_logfont): Adjusted for the format change of font-spec.
10456 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
10457 weight value.
10458 (w32font_driver): Adjusted for the change of struct font_driver.
10459
10460 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
10461 conditionals. Don't check enable_font_backend. Surround non-used
10462 code by "#ifdef OLD_FONT" and "endif".
10463 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
10464 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
10465
10466 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
10467 conditionals. Don't check enable_font_backend. Delete all codes
10468 used only when USE_FONT_BACKEND is not defined. Surround non-used
10469 code by "#ifdef OLD_FONT" and "endif".
10470
10471 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
10472 (uniscribe_open): Return value changed to font-object.
10473 Adjusted for the format change of font-object.
10474 (uniscribe_otf_capability): Adjusted for the change of struct font.
10475 (add_opentype_font_name_to_list): Don't downcase names.
10476 (uniscribe_font_driver): Adjusted for the change of struct
10477 font_driver.
10478
104792008-05-13 Chong Yidong <cyd@stupidchicken.com>
10480
10481 * dispnew.c (update_frame_1): Check if tty output is still valid
10482 before flushing it.
10483
104842008-05-13 Jan Djärv <jan.h.d@swipnet.se>
10485
10486 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
10487 to Gtk+ menus.
10488
104892008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10490
10491 * dired.c (file_name_completion): Tweak the code so as to always do it
10492 in a single pass. Tighten the scope of some variables.
10493
10494 * dired.c (Qdefault_directory): New var.
10495 (file_name_completion): Use it instead of Fexpand_file_name.
10496 (syms_of_dired): Initialize it.
10497
104982008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
10499
10500 * fileio.c (double_dollars): Remove dead code.
10501
105022008-05-10 Eli Zaretskii <eliz@gnu.org>
10503
10504 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
10505 Mention w32-get-true-file-attributes in doc string.
10506
10507 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
10508
105092008-05-09 Glenn Morris <rgm@gnu.org>
10510
10511 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
10512 2008-04-23.
10513
105142008-05-09 Eli Zaretskii <eliz@gnu.org>
10515
10516 Support for reporting owner and group of each file on MS-Windows:
10517 * dired.c (stat_uname, stat_gname): New functions, with special
10518 implementation for w32.
10519 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
10520
10521 * w32.c: Rename the_passwd_* to dflt_passwd_*.
10522 (dflt_group_name): New static variable.
10523 (dflt_group): Rename from the_group.
10524 (init_user_info): Init dflt_group fields. Get user's group name
10525 from LookupAccountSid.
10526 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
10527 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
10528 New initialization states.
10529 (globals_of_w32): Initialize them to zero. Initialize the default
10530 group name to "None".
10531 (GetFileSecurity_Name): New global var, the name of the function
10532 to call for GetFileSecurity.
10533 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
10534 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
10535 (get_file_security, get_security_descriptor_owner)
10536 (get_security_descriptor_group, is_valid_sid)
10537 (get_file_security_desc, get_rid, get_name_and_id)
10538 (get_file_owner_and_group): New functions.
10539 (stat): Use get_file_security_desc and get_file_owner_and_group to
10540 report the owner and primary group of each file. Don't ignore the
10541 high 32 bits of file's size, now that st_size is 64-bit wide.
10542 Fix test when to get true file attributes.
10543 (init_user_info): Use get_rid instead of equivalent inline code.
10544 (fstat): Don't ignore the high 32 bits of file's size.
10545
105462008-05-09 Chong Yidong <cyd@stupidchicken.com>
10547
10548 * image.c (png_load): Use correct bit-depth for setting background
10549 color.
10550
105512008-05-08 Eli Zaretskii <eliz@gnu.org>
10552
10553 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
10554 epa-hook.elc.
10555
105562008-05-08 Juanma Barranquero <lekktu@gmail.com>
10557
10558 * font.c (Ffont_match_p): Don't use `iff' in docstring.
10559
105602008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
10561
10562 * macfns.c (Fx_create_frame): Make a copy of frame parameters
10563 because the original parameters are in pure storage now.
10564 (mac_window): Remove unused params. Update callers.
10565
105662008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
10567
10568 * lread.c (substitute_object_recurse): Use lower-level primitives.
10569 Don't signal errors when traversing sub-char-tables.
10570 Don't loop over all the possible characters when traversing char-tables.
10571
10572 * print.c (print_preprocess): Add sub-char-tables to the print-table,
10573 just like we do in print.c.
10574
105752008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
10576
10577 * minibuf.c (Ftry_completion): Remove code left over from when we used
10578 scmp instead of Fcompare_strings.
10579
105802008-05-04 Juanma Barranquero <lekktu@gmail.com>
10581
10582 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
10583
105842008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10585
10586 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
10587 Create bitmap context in native byte order.
10588
10589 * macterm.c (XDrawLine)
10590 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
10591 context in native byte order.
10592
105932008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10594
10595 * config.in: Regenerate.
10596
10597 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
10598 New definitions for Image I/O support.
10599 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10600 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
10601 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10602 (mac_data_provider_release_data, image_load_image_io)
10603 [USE_MAC_IMAGE_IO]: New functions.
10604 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
10605 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
10606 (init_image_func_pointer) [MAC_OSX]: Remove function.
10607 (image_load_quartz2d) [MAC_OSX]: Check availability of
10608 CGImageCreateWithPNGDataProvider at compile time.
10609 Use lowercase `false' for boolean constant.
10610 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
10611 Use image_load_image_io.
10612 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
10613 Don't check MyCGImageCreateWithPNGDataProvider.
10614 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
10615 Don't call init_image_func_pointer.
10616
10617 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
10618
10619 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
10620 Make variable non-static.
10621 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10622 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
10623
10624 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
10625 (RED_FROM_ULONG): Mask off higher bits.
10626 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
10627
10628 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
10629 Include AvailabilityMacros.h.
10630 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
10631 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
10632
106332008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
10634
10635 * chartab.c (Fset_char_table_range): If range is t, really set all
10636 chars to that value.
10637
106382008-05-03 Eli Zaretskii <eliz@gnu.org>
10639
10640 * dired.c (Ffile_attributes): Don't allow the device number become
10641 negative.
10642
106432008-05-02 Daiki Ueno <ueno@unixuser.org>
10644
10645 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
10646
106472008-05-02 Juri Linkov <juri@jurta.org>
10648
10649 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
10650 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
10651 DEFAULT argument as a list of default values in docstrings.
10652
106532008-05-01 Chong Yidong <cyd@stupidchicken.com>
10654
10655 * puresize.h (BASE_PURESIZE): Increase to 1210000.
10656
106572008-05-01 Martin Rudalics <rudalics@gmx.at>
10658
10659 * dispnew.c (change_frame_size_1): Preserve small windows when
10660 shrinking frames by calling set_window_height|width with third
10661 arg 2.
10662
10663 * window.h (struct window): Replace field too_small_ok by field
10664 resize_proportionally.
10665
10666 * window.c (make_window): Initialize resize_proportionally.
10667 (enlarge_window): Temporarily set resize_proportionally to make
10668 sure that shrink_windows does scale the window proportionally.
10669 (shrink_windows): When window has resize_proportionally set try
10670 to shrink it proportionally by stealing from other windows.
10671 (struct saved_window, Fset_window_configuration)
10672 (compare_window_configurations): Handle resize_proportionally.
10673 (WINDOW_TOTAL_SIZE): New macro.
10674 (window_min_size, shrink_windows, size_window): Use it.
10675 (check_min_window_sizes): Remove. Invalid values of
10676 window-min-height|width are handled by window_min_size_2 now.
10677 (size_window, Fsplit_window, enlarge_window)
10678 (adjust_window_trailing_edge, grow_mini_window): Don't call
10679 check_min_window_sizes.
10680 (window_min_size_2, window_min_size_1, window_min_size):
10681 New argument safe_p for retrieving "safe" minimum sizes.
10682 (Fdisplay_buffer, Fsplit_window, enlarge_window)
10683 (adjust_window_trailing_edge, grow_mini_window):
10684 Adjust arguments of window_min_size... functions.
10685 (shrink_windows): Argument min_size removed. New argument
10686 safe_p allows shrinking windows to their safe minimum sizes.
10687 Calculate minimum size and decide whether a window shall be
10688 deleted for each window individually.
10689 (size_window): When nodelete_p equals 2, tell shrink_windows to
10690 delete windows only if their new minimum size is no more safe.
10691 (shrink_window_lowest_first): Call window_min_size_1 to make
10692 sure to preserve modeline of bottom-most window when resizing
10693 the minibuffer.
10694 (Fset_window_configuration, Fcurrent_window_configuration)
10695 (compare_window_configurations): Do not handle
10696 window-min-height|width any more.
10697 (syms_of_window): Clarify window-min-height|width doc-strings.
10698
106992008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
10700
10701 * dired.c (file_name_completion): Fix up the encoding/decoding issue
10702 some more. Copy some of the code from Ftry_completions.
10703 Remove special case code that dates back to initial revision when the
10704 slash was only added when necessary and that can't trigger nowadays.
10705
107062008-04-27 Kenichi Handa <handa@m17n.org>
10707
10708 * font.c (font_prop_validate): Signal `error' instead of `font'.
10709
107102008-04-29 Jason Rumney <jasonr@gnu.org>
10711
10712 * w32fns.c (Fw32_battery_status): New defun.
10713 (syms_of_w32fns): Defsubr it.
10714
107152008-04-28 Andreas Schwab <schwab@suse.de>
10716
10717 * dired.c (file_name_completion): Fix another mixing of encoded
10718 and decoded names.
10719
107202008-04-28 Juanma Barranquero <lekktu@gmail.com>
10721
10722 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
10723
107242008-04-27 Juanma Barranquero <lekktu@gmail.com>
10725
10726 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
10727
107282008-04-27 Andreas Schwab <schwab@suse.de>
10729
10730 * dired.c (file_name_completion): Fix inappropriate mixing of
10731 encoded and decoded names.
10732
10733 * xterm.c (XTread_socket): Fix use of uninitialized variable.
10734
10735 * puresize.h (BASE_PURESIZE): Increase to 1200000.
10736
107372008-04-26 Eli Zaretskii <eliz@gnu.org>
10738
10739 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
10740 2008-03-31, it's not needed anymore with `struct stat' definition
10741 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
10742 for the same reasons.
10743
107442008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
10745
10746 * m/sparc.h: Additional redefinitions for GNU/Linux.
10747
107482008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10749
10750 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
10751 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
10752 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
10753 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
10754 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10755 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
10756 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10757 Likewise.
10758
10759 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
10760 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
10761 (mac_ax_number_of_characters): Add externs.
10762 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
10763 [USE_MAC_TSM]: Likewise.
10764 (mac_handle_text_input_event) [MAC_OSX]:
10765 Handle kEventTextInputOffsetToPos for no active input area case.
10766 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10767 (mac_handle_document_access_event)
10768 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
10769 (install_application_handler) [MAC_OSX]: Register handlers for
10770 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
10771 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
10772 Register mac_handle_document_access_event.
10773
10774 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
10775 Make functions non-static.
10776
107772008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
10778
10779 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
10780 (read_file_name_completion_ignore_case, insert_default_directory)
10781 (Qdefault_directory): Move to minibuffer.el.
10782 (Fread_file_name): Call the new `read-file-name' instead.
10783
107842008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10785
10786 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
10787 Make function non-static.
10788 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
10789 Remove function.
10790 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10791 Move to mactoolbox.c.
10792 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
10793
10794 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
10795 (mac_rect_make): New macro.
10796
10797 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
10798 instead of float.
10799 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10800 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
10801 (XSetBackground) [USE_CG_DRAWING]: Likewise.
10802 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
10803 CGRectMake.
10804 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
10805 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
10806 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
10807 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10808 instead of WindowRef in argument type.
10809 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
10810 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
10811 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
10812 instead of DISPLAY. All uses changed.
10813 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
10814 (x_calc_absolute_position): Simplify so as not to use
10815 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
10816
10817 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
10818 instead of WindowRef in argument type.
10819 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
10820 [TARGET_API_MAC_CARBON]: Remove externs.
10821 (create_apple_event, mac_event_parameters_to_lisp)
10822 [TARGET_API_MAC_CARBON]: Add externs.
10823
10824 * mactoolbox.c (Vmac_ts_script_language_on_focus)
10825 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
10826 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
10827 is clicked.
10828 (x_activate_menubar): Remove extern for saved_menu_event_location.
10829 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
10830 Move from mac.c.
10831
108322008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10833
10834 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
10835 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
10836
108372008-04-23 Jason Rumney <jasonr@gnu.org>
10838
10839 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
10840 attributes only for local files.
10841
10842 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
10843 default to Qlocal.
10844
108452008-04-22 Juri Linkov <juri@jurta.org>
10846
10847 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
10848 read-buffer-to-switch instead of using the letter "B".
10849
108502008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10851
10852 * fileio.c (Qdefault_directory): New variable.
10853 (Fread_file_name): Use it to pass `dir' to the completion functions.
10854
108552008-04-20 Chong Yidong <cyd@stupidchicken.com>
10856
10857 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
10858
108592008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
10860
10861 * keyboard.c (Vpre_help_message): Remove.
10862 (show_help_echo): Remove default C code.
10863
10864 * dired.c (directory_files_internal, file_name_completion):
10865 Only call ENCODE_FILE if the string is indeed decoded.
10866
108672008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
10868
10869 * Makefile.in (TOOLKIT_DEFINES): Remove.
10870 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
10871
108722008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10873
10874 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
10875 (mactoolbox.o): New target.
10876
10877 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
10878 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
10879
10880 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
10881 Use mac_set_frame_window_background instead of XSetWindowBackground.
10882 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
10883 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
10884 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
10885 instead of SetWindowTitleWithCFString.
10886 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
10887 Move function to mactoolbox.c.
10888 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
10889 Use mac_set_window_modified instead of SetWindowModified.
10890 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
10891 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
10892 (Fx_focus_frame): Use mac_front_non_floating_window instead of
10893 FrontNonFloatingWindow. Use mac_activate_window instead of
10894 ActivateWindow. Use mac_active_non_floating_window instead of
10895 ActiveNonFloatingWindow.
10896 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
10897 Use mac_show_hourglass and mac_hide_hourglass.
10898 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
10899 instead of GetGlobalMouse.
10900 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
10901 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
10902 Use mac_bring_window_to_front instead of BringToFront.
10903 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
10904 mactoolbox.c.
10905 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
10906 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
10907 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
10908 mactoolbox.c.
10909
10910 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
10911 (XtPointer): Move typedef from macmenu.c.
10912 (enum button_type): Move enum from macmenu.c.
10913 (widget_value): Move typedef from macmenu.c.
10914 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
10915 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10916 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10917 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10918 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10919 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10920 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10921 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
10922 (Selection): Move typedef from macselect.c.
10923 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
10924 macterm.c.
10925 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
10926 (mac_is_window_collapsed, mac_bring_window_to_front)
10927 (mac_send_window_behind, mac_hide_window, mac_show_window)
10928 (mac_collapse_window, mac_front_non_floating_window)
10929 (mac_active_non_floating_window, mac_activate_window)
10930 (mac_move_window_structure, mac_move_window, mac_size_window)
10931 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
10932
10933 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
10934 (enum mac_menu_kind): Move enum to mactoolbox.c.
10935 (min_menu_id): Move variable to mactoolbox.c.
10936 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
10937 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
10938 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
10939 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
10940 [TARGET_API_MAC_CARBON]: Likewise.
10941 (XtPointer): Move typedef to macgui.h.
10942 (enum button_type): Move enum to macgui.h.
10943 (widget_value): Move typedef to macgui.h.
10944 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
10945 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
10946 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
10947 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
10948 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
10949 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
10950 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
10951 (popup_activated_flag): Make variable non-static.
10952 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
10953 (add_menu_item, fill_menu, dispose_menus):
10954 Move functions to mactoolbox.c.
10955 (restore_show_help_function, menu_target_item_handler)
10956 (install_menu_target_item_handler, mac_handle_dialog_event)
10957 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
10958 [TARGET_API_MAC_CARBON]: Likewise.
10959 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
10960 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
10961 (find_and_call_menu_selection, name_is_separator): Make function
10962 non-static.
10963 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
10964 to mactoolbox.c.
10965 (set_frame_menubar): Don't call install_menu_quit_handler.
10966 (menu_item_selection): New variable.
10967 (mac_menu_show): Use create_and_show_popup_menu.
10968 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
10969 selection but set variable menu_item_selection. All uses changed.
10970 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
10971 Call install_menu_quit_handler. Move to mactoolbox.c.
10972
10973 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
10974 (Selection): Move typedef to macgui.h.
10975 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
10976 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
10977 Make variables non-static.
10978 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
10979 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
10980 Make functions non-static.
10981 (Vmac_service_selection) [MAC_OSX]: Likewise.
10982 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
10983 (mac_valid_selection_target_p, mac_clear_selection)
10984 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
10985 (mac_put_selection_value, mac_selection_has_target_p)
10986 (mac_get_selection_value, mac_get_selection_target_list)
10987 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
10988 Move functions to mactoolbox.c.
10989 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
10990 Likewise.
10991 (copy_scrap_flavor_data, mac_handle_service_event)
10992 (install_service_handler) [MAC_OSX]: Likewise.
10993 (syms_of_macselect) <Vmac_dnd_known_types>:
10994 Use mac_dnd_default_known_types.
10995
10996 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
10997 Move to mactoolbox.c.
10998 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
10999 (Fx_selection_owner_p): Add EXFUN.
11000 (install_window_handler, remove_window_handler, XSetWindowBackground):
11001 Remove externs.
11002 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
11003 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
11004 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
11005 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
11006 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
11007 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
11008 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
11009 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
11010 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
11011 (create_and_show_popup_menu, mac_get_selection_from_symbol)
11012 (mac_valid_selection_target_p, mac_clear_selection)
11013 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
11014 (mac_put_selection_value, mac_selection_has_target_p)
11015 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
11016 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
11017 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
11018 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
11019 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
11020 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
11021 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
11022 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11023 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
11024
11025 * mactoolbox.c: New file.
11026
110272008-04-18 Jason Rumney <jasonr@gnu.org>
11028
11029 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
11030
110312008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
11032
11033 * character.c (Fmultibyte_char_to_unibyte):
11034 Return latin1 chars unchanged.
11035
11036 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
11037 relocated if it points to `name'.
11038
110392008-04-17 Kenichi Handa <handa@m17n.org>
11040
11041 * data.c (Faset): Allow setting a multibyte character in an
11042 ASCII-only unibyte string.
11043
11044 * lisp.h (STRING_SET_MULTIBYTE): New macro.
11045
110462008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
11047
11048 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
11049 done in config.h.
11050
110512008-04-16 Juanma Barranquero <lekktu@gmail.com>
11052
11053 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
11054 (Fchar_direction): Add usage in the docstring.
11055
110562008-04-15 Chong Yidong <cyd@stupidchicken.com>
11057
11058 * keyboard.c (read_key_sequence): Remove always-true checks.
11059
110602008-04-14 Jason Rumney <jasonr@gnu.org>
11061
11062 * w32font.c (w32font_open_internal): Set max_bounds.descent in
11063 compatibility struct, for better underline positioning.
11064
110652008-04-13 David Hansen <david.hansen@gmx.net>
11066
11067 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
11068 string.
11069
110702008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
11071
11072 * m/hp800.h (XUINT, XSET): Remove.
11073
110742008-04-12 Juanma Barranquero <lekktu@gmail.com>
11075
11076 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
11077 previous change.
11078
110792008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
11080
11081 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
11082 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
11083
110842008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11085
11086 * keymap.h (map_keymap_canonical): Declare.
11087 * xmenu.c (single_keymap_panes): Use it.
11088
110892008-04-11 Glenn Morris <rgm@gnu.org>
11090
11091 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
11092 set the target's value to that of the alias.
11093
110942008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
11095
11096 * term.c (set_tty_color_mode): Left over typo.
11097
110982008-04-10 Michael Albinus <michael.albinus@gmx.de>
11099
11100 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
11101 only after check for file name handler functions. Signal, when
11102 native functionality is not supported.
11103 (syms_of_fileio): Declare it unconditionally.
11104
111052008-04-10 Jason Rumney <jasonr@gnu.org>
11106
11107 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
11108 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
11109
11110 * w32.c (logon_network_drive): Also logon to remote drives that
11111 are mapped to drive letters.
11112
111132008-04-10 Glenn Morris <rgm@gnu.org>
11114
11115 * xdisp.c (truncate-partial-width-windows): Doc fix.
11116
111172008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
11118
11119 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
11120 Move functions to minibuffer.el.
11121 (syms_of_fileio): Don't declare them.
11122
111232008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11124
11125 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
11126 (syms_of_minibuf): Remove its initialization.
11127
11128 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
11129
111302008-04-09 Juanma Barranquero <lekktu@gmail.com>
11131
11132 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
11133
111342008-04-09 Jason Rumney <jasonr@gnu.org>
11135
11136 * makefile.w32-in (distclean): Delete makefile too.
11137 (maintainer-clean): New target.
11138
11139 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
11140
11141 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
11142 for new font backend and composite cases.
11143
111442008-04-09 Jan Djärv <jan.h.d@swipnet.se>
11145
11146 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
11147 Most of the code moved to run_timers.
11148 (do_pending_atimers): Call run_timers.
11149 (run_timers): New function.
11150
11151 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
11152 run atimers.
11153
11154 * process.c (wait_reading_process_output): The same as above.
11155
111562008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
11157
11158 * minibuf.c (last_exact_completion): Remove variable.
11159 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
11160 (complete_and_exit_1, complete_and_exit_2)
11161 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
11162 (Fdisplay_completion_list, display_completion_list_1)
11163 (Fminibuffer_completion_help, Fself_insert_and_exit)
11164 (Fexit_minibuffer, Fminibuffer_message): Move functions to
11165 minibuffer.el.
11166 (syms_of_minibuf): Remove corresponding initializations.
11167
11168 * keyboard.c (Qdeactivate_mark): New var.
11169 (command_loop_1): Use it to call `deactivate-mark'.
11170 (syms_of_keyboard): Initialize it.
11171
11172 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
11173 to another frame.
11174 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
11175 Don't call set_tty_color_mode.
11176 (store_frame_param): Reset previous_frame rather than call
11177 set_tty_color_mode.
11178 * term.c (set_tty_color_mode): Rewrite.
11179 * dispextern.h (set_tty_color_mode): New type.
11180 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
11181
111822008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
11183
11184 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
11185 for generic chars, which do not exist any more in emacs-unicode.
11186
111872008-04-08 Michael Albinus <michael.albinus@gmx.de>
11188
11189 * coding.c (detect_coding_emacs_mule)
11190 (Ffind_operation_coding_system): Fix typo.
11191
111922008-04-08 Jason Rumney <jasonr@gnu.org>
11193
11194 * w32uniscribe.c (SNAME): Extract only symbol name.
11195
11196 * w32font.h (struct w32_metric_cache): New struct.
11197 (w32font_info): Use it.
11198 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
11199 (CACHE_BLOCKSIZE): New constants.
11200
11201 * w32font.c (Qja, Qko, Qzh): New symbols.
11202 (syms_of_w32font): Initialise them.
11203 (font_matches_spec): Use them to filter by language.
11204 (recompute_cached_metrics): Remove function.
11205 (compute_metrics, clear_cached_metrics): New functions.
11206 (w32font_encode_char): Use them to manage metric cache.
11207 (w32font_text_extents): Cache metrics for all glyphs on demand.
11208 Delay converting glyph indices to WORD until needed.
11209 (w32font_open_internal): Initialize metric cache to empty.
11210 (registry_to_w32_charset): Charset should always be a symbol.
11211 (fill_in_logfont, list_all_matching_fonts): Family should
11212 always be a symbol.
11213
112142008-04-06 Jason Rumney <jasonr@gnu.org>
11215
11216 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
11217 Give up if glyph indices not supported. Use uniscribe obtained
11218 ABC widths for individual metrics. Map glyph clusters back to
11219 characters using fClusterStart flag. Return number of glyphs
11220 produced, not chars processed.
11221 (uniscribe_shape): Map char at FROM to current glyph.
11222
112232008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11224
11225 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
11226 Use SetMenuItemHierarchicalMenu.
11227
112282008-04-05 Jason Rumney <jasonr@gnu.org>
11229
11230 * image.c (pbm_load): Allow color values up to 65535.
11231 Throw an error if max_color_idx is outside the supported range.
11232 Report an error when image size is invalid.
11233 Read two bytes at a time when raw images have max_color_idx above 255.
11234
112352008-04-05 Eli Zaretskii <eliz@gnu.org>
11236
11237 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11238 cFileName a file name that includes `?' characters, use the 8+3
11239 alias in cAlternateFileName instead.
11240
112412008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
11242
11243 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
11244 append "CCL: Quitted" when the CCL program is quitted.
11245 (setup_ccl_program): Initialize ccl->quit_silently to zero.
11246
11247 * ccl.h (struct ccl_program): New member quit_silently.
11248
112492008-04-05 Chong Yidong <cyd@stupidchicken.com>
11250
11251 * search.c (compile_pattern_1): Treat non-nil and non-string of
11252 search-spaces-regexp as nil.
11253
11254 * minibuf.c (Fassoc_string): Tweak docstring.
11255
112562008-04-05 Eli Zaretskii <eliz@gnu.org>
11257
11258 * dired.c (Ffile_attributes): Support inode numbers wider than 32
11259 bits. Remove ugly WINDOWSNT-specific kludge introduced on
11260 2008-03-14 to force inode be positive.
11261
11262 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
11263 _S_* ones, since we now use our own sys/stat.h.
11264 (stat, fstat): Don't mangle the inode number.
11265 (init_user_info): Don't restrict UID and GID to 0-60000 range.
11266
112672008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
11268
11269 * frame.h (struct frame): Give one more bit to `visible' since we use
11270 values larger than 1 to indicate obscured frames on ttys.
11271
11272 * keymap.c (Qkeymap_canonicalize): New var.
11273 (Fmap_keymap_internal): New fun.
11274 (describe_map): Use keymap-canonicalize.
11275
11276 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
11277 (Fundo_boundary): Set them.
11278 (syms_of_undo): Initialize them.
11279 (record_point): Use them instead of last_point_position*.
11280 (last_undo_buffer): Change type.
11281
112822008-04-04 Jason Rumney <jasonr@gnu.org>
11283
11284 * w32font.c (w32font_text_extents): Use font's ascent and descent.
11285 (recompute_cached_metrics): Don't set ascent and descent per char.
11286
11287 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
11288 (uniscribe_check_otf): Add GC protection before consing.
11289 Rearrange loop for counting features.
11290
112912008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
11292
11293 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
11294 buffer with byte-size of source buffer.
11295
112962008-04-03 Chong Yidong <cyd@stupidchicken.com>
11297
11298 * callint.c (Fcall_interactively): Handle temporary region even
11299 when shift-select-mode is off.
11300
113012008-04-03 Jason Rumney <jasonr@gnu.org>
11302
11303 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
11304
113052008-04-03 Kenichi Handa <handa@m17n.org>
11306
11307 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
11308 (CATEGORY_MASK_UTF_16): Likewise.
11309 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
11310 binary file.
11311 (detect_coding): Add null-byte detection for a binary file.
11312 (detect_coding_system): Likewise.
11313
113142008-04-03 Jason Rumney <jasonr@gnu.org>
11315
11316 * w32uniscribe.c: New file.
11317
11318 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
11319
11320 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
11321
11322 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
11323 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
11324 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
11325 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
11326 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
11327 (Qphonetic): New symbols.
11328 (syms_of_w32font): Initialize them.
11329 (font_supported_scripts): Use them.
11330 (w32font_list_family): List all charsets.
11331 (w32font_text_extents, recompute_cached_metrics): Fix metric
11332 calculations.
11333 (w32_enumfont_pattern_entity): Make full_type a DWORD.
11334 Give opentype fonts their own format.
11335 (font_matches_spec): New arguments backend and logfont.
11336 Handle :otf spec for uniscribe backend.
11337 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
11338 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
11339
11340 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
11341 font backend.
11342 (globals_of_w32fns): Initialize uniscribe font backend.
11343
11344 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
11345 dependencies.
11346 (w32uniscribe.$(O)): New file to build.
11347 (FONT_OBJ): Include w32uniscribe.$(O).
11348 (LIBS): Add uniscribe libraries.
11349
11350 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
11351
113522008-04-02 Chong Yidong <cyd@stupidchicken.com>
11353
11354 * callint.c (Vshift_select_mode): New var.
11355 (Finteractive): Document new ^ spec.
11356 (Fcall_interactively): Call handle-shift-selection if the ^ spec
11357 is present.
11358
11359 * keyboard.c (Vthis_command_keys_shift_translated): New var.
11360 (command_loop_1): Avoid running the direct display versions of
11361 forward-char and backward-char if shift-selection may occur.
11362 (read_key_sequence): Set Vthis_command_keys_shift_translated if
11363 shift-translation takes place.
11364
11365 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
11366 avoid clobbering by define-minor-mode.
11367
11368 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
11369 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
11370
11371 * syntax.c (Fforward_word): Add ^ interactive spec.
11372
11373 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
11374 (Fscroll_right): Add ^ interactive spec.
11375
113762008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
11377
11378 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
11379
11380 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
11381
11382 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
11383
113842008-03-31 Juri Linkov <juri@jurta.org>
11385
11386 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
11387
113882008-03-30 Jan Djärv <jan.h.d@swipnet.se>
11389
11390 * gtkutil.c (xg_set_geometry): Fix indentation.
11391 (xg_resize_outer_widget): Remove.
11392 (x_wm_size_hint_off): Fix indentation.
11393 (xg_frame_set_char_size): Call flush_and_sync after
11394 gtk_window_resize.
11395 (x_wm_set_size_hint): Pass NULL as geometry window to
11396 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
11397 Add menu bar and tool bar height to base height.
11398 (xg_update_frame_menubar, free_frame_menubar)
11399 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
11400 (update_frame_tool_bar, free_frame_tool_bar):
11401 Change xg_resize_outer_widget to xg_frame_set_char_size.
11402
114032008-03-30 Michael Albinus <michael.albinus@gmx.de>
11404
11405 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
11406 (Fdbus_call_method): New parameter TIMEOUT.
11407 (dbus-send-signal): Optimize UNGCPRO call.
11408
114092008-03-29 Juri Linkov <juri@jurta.org>
11410
11411 * window.c (Fdisplay_buffer): Move call to
11412 Vsplit_window_preferred_function out of conditions that check
11413 if window is eligible for vertical splitting.
11414 When Vsplit_window_preferred_function is non-nil, call it and use
11415 its non-nil return value as window. Otherwise, continue doing
11416 vertical splitting using Fsplit_window with arg horflag=nil.
11417 (syms_of_window) <Vsplit_window_preferred_function>: Change the
11418 default value from `split-window' to nil.
11419
114202008-03-29 Juri Linkov <juri@jurta.org>
11421
11422 * callint.c (Fcall_interactively): Revert 2008-03-16 change
11423 for interactive code letters 'b' and 'B'.
11424
114252008-03-29 Eli Zaretskii <eliz@gnu.org>
11426
11427 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
11428 multibyte string.
11429
114302008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
11431
11432 * keyboard.c (pending_funcalls): New var.
11433 (timer_check): Run it.
11434 (syms_of_keyboard): Initialize it.
11435 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
11436 (Vdelete_terminal_functions): New vars.
11437 (syms_of_terminal): Initialize them.
11438 (Fdelete_terminal): Run delete-terminal-functions.
11439 * xdisp.c (safe_eval): Rewrite.
11440 (safe_call2): New fun.
11441 * frame.c (Qdelete_frame_functions): New var.
11442 (syms_of_frame): Initialize it.
11443 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
11444 * lisp.h (safe_call2, pending_funcalls): Declare.
11445
114462008-03-28 Andreas Schwab <schwab@suse.de>
11447
11448 * indent.c (Fmove_to_column): Move declaration before statements.
11449
114502008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
11451
11452 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
11453 (struct frame): Use bit fields for boolean vars.
11454
11455 * process.c (server_accept_connection): Simplify naming.
11456 (emacs_get_tty_pgrp): Use SDATA.
11457
11458 * coding.c (decode_coding_object): Fix last change.
11459
114602008-03-27 Jason Rumney <jasonr@gnu.org>
11461
11462 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
11463
114642008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
11465
11466 * charset.c (Fdefine_charset_internal): Change the way of
11467 registering charsets in Vcharset_order_list.
11468 (syms_of_charset): Make the charset `eight-bit' supplementary.
11469
114702008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
11471
11472 * regex.c (EXTEND_BUFFER): Change order of pointer addition
11473 operations, to avoid having the difference between pointers
11474 overflow.
11475
114762008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
11477
11478 * indent.c (check_display_width): New fun.
11479 (scan_for_column): Use it.
11480
11481 * data.c (syms_of_data): Mark most-positive-fixnum and
11482 most-negative-fixnum as constants.
11483
11484 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
11485
11486 * indent.c (scan_for_column): Extract from current_column_1.
11487 Merge with the same code from Fmove_to_column.
11488 (current_column_1, Fmove_to_column): Use it.
11489
114902008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
11491
11492 * keymap.c (map_keymap_internal): New fun.
11493 (map_keymap): Use it.
11494 (Fmap_keymap_internal): New fun.
11495 (Fmap_keymap): Remove left-out test from before make_save_value.
11496
11497 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
11498
11499 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
11500 Use XCAR/XCDR.
11501
11502 * process.h (struct Lisp_Process): Remove filter_multibyte.
11503 * process.c (QCfilter_multibyte): Remove.
11504 (setup_process_coding_systems): Don't use filter_multibyte.
11505 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
11506 (read_process_output): Don't adjust multibyteness to filter_multibyte.
11507 (Fset_process_filter_multibyte): Change the coding-system to
11508 approximate the previous behavior.
11509 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
11510 coding-system.
11511
11512 * coding.c (decode_coding_object): When not decoding into a buffer,
11513 obey the coding system's preference of (uni|multi)byte.
11514
115152008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
11516
11517 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
11518 every char is changed and has a different byte-length.
11519 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
11520 Fix int -> EMACS_INT.
11521
115222008-03-23 David Hansen <david.hansen@gmx.net>
11523
11524 * dbusbind.c (xd_read_message): Remove extra copying of message
11525 strings. Check for NULL `interface' or `member'.
11526
115272008-03-22 Eli Zaretskii <eliz@gnu.org>
11528
11529 * w32.c (readdir): If FindFirstFile/FindNextFile return in
11530 cFileName a file name that includes `?' characters, use the 8+3
11531 alias in cAlternateFileName instead.
11532
115332008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
11534
11535 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
11536
115372008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11538
11539 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
11540 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
11541 work on current_buffer only instead (that was already the case
11542 for some of the code anyway).
11543 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
11544 (temp_set_point, temp_set_point_both): Use EMACS_INT.
11545 (SET_PT, SET_PT_BOTH): Adjust.
11546 * intervals.h (set_point, temp_set_point, set_point_both)
11547 (temp_set_point_both): Remove redundant declarations.
11548
115492008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
11550
11551 * fileio.c (Finsert_file_contents):
11552 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
11553 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
11554 when buffer != current_buffer anyway.
11555
115562008-03-20 Andreas Schwab <schwab@suse.de>
11557
11558 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
11559 as default.
11560
115612008-03-19 Jason Rumney <jasonr@gnu.org>
11562
11563 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
11564 (syms_of_w32fns): Initialize them.
11565 (HOURGLASS_ID): New constant.
11566 (x_window_to_frame): Don't check hourglass_window.
11567 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
11568 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
11569 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
11570 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
11571 Only change the cursor if hourglass is not active.
11572 (Fx_create_frame): Initialize frame's current_cursor.
11573 (hourglass_atimer): Remove.
11574 (hourglass_started): New function.
11575 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
11576 (show_hourglass): Adapt to w32, changing argument to frame.
11577
11578 * w32term.h (struct w32_output): Remove hourglass_window.
11579 Add current_cursor.
11580
11581 * eval.c (call_debugger, Fsignal):
11582 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
11583 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
11584 (Fexecute_extended_command, cancel_hourglass_unwind):
11585 * minibuf.c (read_minibuf):
11586 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
11587
115882008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
11589
11590 * window.c (run_funs): New fun.
11591 (run_window_configuration_change_hook): Use it to run the buffer-local
11592 and the global part of the hook.
11593
11594 * xdisp.c (format_mode_line_unwind_data): Add window argument.
11595 (unwind_format_mode_line): Restore selected window.
11596 (x_consider_frame_title, Fformat_mode_line): Set selected window.
11597
115982008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11599
11600 * editfns.c (Fchar_equal): Check they are valid characters.
11601
11602 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
11603
116042008-03-17 Andreas Schwab <schwab@suse.de>
11605
11606 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
11607 against a charset.
11608
11609 * lisp.h (Fbuffer_list): Declare.
11610
116112008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 11612
aac0c6e3
MR
11613 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
11614 handlebox_widget is != 0.
11615
116162008-03-16 Juri Linkov <juri@jurta.org>
11617
11618 * callint.c (Fcall_interactively): For interactive code letters
11619 'b' and 'B' put the buffer list into the list of default "future"
11620 values of the minibuffer.
11621
116222008-03-16 Andreas Schwab <schwab@suse.de>
11623
11624 * keyboard.c (read_key_sequence): Fix downcasing of letters with
11625 modifiers.
11626
11627 * regex.c (re_match_2_internal): Correct matching of a charset
11628 against latin-1 characters.
11629
116302008-03-16 Kenichi Handa <handa@m17n.org>
11631
11632 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
11633 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
11634 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
11635 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
11636 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
11637 CHAR_STRING_ADVANCE.
11638 (produce_chars): Fix for the case that the source and the
11639 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
11640 instead of CHAR_STRING_ADVANCE.
11641 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
11642 STRING_CHAR_ADVANCE.
11643
116442008-03-15 Andreas Schwab <schwab@suse.de>
11645
11646 * regex.c (re_match_2_internal): Correct matching of eight bit
11647 characters in unibyte strings.
11648
116492008-03-15 Martin Rudalics <rudalics@gmx.at>
11650
11651 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
11652 at end of range when it coincides with the end of the buffer.
11653
116542008-03-14 Eli Zaretskii <eliz@gnu.org>
11655
11656 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
11657
11658 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
11659
116602008-03-14 Jason Rumney <jasonr@gnu.org>
11661
11662 * editfns.c (initial_tz): New variable.
11663 (syms_of_editfns): Initialize it.
11664 (Fset_time_zone_rule): Set it when first called.
11665 Use it when TZSTRING is nil.
11666
11667 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
11668 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
11669 (monitor_from_point_fn, get_monitor_info_fn): New globals.
11670 (globals_of_w32fns): Initialize them.
11671 (compute_tip_xy): Use them to position tooltips.
11672
116732008-03-14 Glenn Morris <rgm@gnu.org>
11674
11675 * emacs.c (main): Revert previous change.
11676 (standard_args): Revert -internal-script back to -scriptload,
11677 and remove the long-option form.
11678
116792008-03-13 Glenn Morris <rgm@gnu.org>
11680
11681 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
11682 Remove option -enable-font-backend.
11683
116842008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
11685
11686 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
11687
116882008-03-11 Jan Djärv <jan.h.d@swipnet.se>
11689
11690 * xterm.c (x_connection_closed): For GTK: If this is the last
11691 terminal just exit without closing the display.
11692
116932008-03-11 Jason Rumney <jasonr@gnu.org>
11694
11695 * w32font.c (w32font_full_name): Use floor to round.
11696
f0131492 116972008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
11698
11699 * sound.c (alsa_configure): Declare vol at beginning of block.
11700
11701 * fontset.c (Ffontset_info): Remove extra semicolon.
11702
117032008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
11704
11705 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
11706 size of resulting string.
11707
117082008-03-10 Jason Rumney <jasonr@gnu.org>
11709
11710 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
11711
117122008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11713
11714 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
11715 Don't pretend as if characters with display property haven't been
11716 consumed for string-replacing-string case.
11717
117182008-03-08 Kim F. Storm <storm@cua.dk>
11719
11720 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
11721 (get_next_display_element, next_element_from_string)
11722 (next_element_from_ellipsis, next_element_from_buffer): Use it.
11723
117242008-03-08 Andreas Schwab <schwab@suse.de>
11725
11726 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
11727
117282008-03-06 Jason Rumney <jasonr@gnu.org>
11729
11730 * w32font.c (w32_registry): Take font_type argument. Use ANSI
11731 when charset not specified. Only translate ANSI to unicode when
11732 font_type is truetype.
11733 (w32font_coverage_ok): New function.
11734 (add_font_entity_to_list): Use it to filter unsuitable fonts.
11735
117362008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
11737
11738 * lread.c (Fread_char): Resolve modifiers.
11739 (Fread_char_exclusive): Likewise.
11740
11741 * character.c (char_resolve_modifier_mask): New function.
11742 (char_string): Use char_resolve_modifier_mask.
11743 (Fchar_resolve_modifiers): New function.
11744 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
11745 function.
11746
117472008-03-04 Jason Rumney <jasonr@gnu.org>
11748
11749 * makefile.w32-in: Always include w32font.c in the build.
11750 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
11751
117522008-03-04 Andreas Schwab <schwab@suse.de>
11753
11754 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
11755 (versionclean): Likewise.
11756
117572008-03-04 Juanma Barranquero <lekktu@gmail.com>
11758
11759 * .cvsignore: Add oo.
11760
117612008-03-03 Andreas Schwab <schwab@suse.de>
11762
11763 * coding.c (decode_coding_object): Inhibit gap shrinking while
11764 decoding in place.
11765
117662008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
11767
11768 * w32term.c: Remove unused include "gnu.h".
11769 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
11770
11771 * gnu.h: Rename to ...
11772 * emacs-icon.h: ... this.
11773 * xterm.c: Use emacs-icon.h instead of gnu.h.
11774 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
11775
117762008-03-03 Juanma Barranquero <lekktu@gmail.com>
11777
11778 * w32font.c: Include math.h.
11779
117802008-03-03 Jason Rumney <jasonr@gnu.org>
11781
11782 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
11783 Compute options separately.
11784 (w32font_open_internal): Set glyph_idx before caching metrics.
11785
11786 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
11787 Define if system headers don't.
11788 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
11789 (w32font_encode_char): Don't declare here.
11790
11791 * w32font.c (Quniscribe, QCformat): New symbols.
11792 (syms_of_w32font): Define them.
11793 (w32font_has_char): Indicate uncertainty.
11794 (w32font_encode_char): Encode as glyph point. Make static.
11795 (recompute_cached_metrics): New function.
11796 (w32font_open_internal): Use it. Set font to use glyph points
11797 initially. Set format based on type of font.
11798 (w32font_text_extents, w32font_draw): Optionally use glyph points.
11799 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
11800 on it. Set format based on information available here.
11801 (add_font_entity_to_list): Identify backend based on opentype_only.
11802
118032008-03-02 Andreas Schwab <schwab@suse.de>
11804
11805 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
11806
11807 * coding.c (decode_coding_big5, produce_chars):
11808 Fix typos in last change.
11809
118102008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
11811
11812 * gnu.h: New icon.
11813
118142008-03-02 Kenichi Handa <handa@m17n.org>
11815
11816 * coding.c (decode_coding_utf_8): When eol-type of CODING is
11817 `dos', don't decode '\r' if that is the last in the source.
11818 (decode_coding_utf_16, decode_coding_emacs_mule)
11819 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11820 (decode_coding_raw_text, decode_coding_charset): Likewise.
11821 (produce_chars): Don't decode EOL here. Use EMACS_INT.
11822
118232008-03-01 Jason Rumney <jasonr@gnu.org>
11824
11825 * w32font.c (w32font_full_name): Report point size for scalable fonts.
11826
118272008-03-01 Kim F. Storm <storm@cua.dk>
11828
11829 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
11830
118312008-03-01 Jason Rumney <jasonr@gnu.org>
11832
11833 * w32font.c (w32font_full_name): New function.
11834 (w32font_open_internal): Use it.
11835
118362008-03-01 Kim F. Storm <storm@cua.dk>
11837
11838 * dispnew.c (line_draw_cost): Fix invalid glyph check.
11839
118402008-03-01 Jason Rumney <jasonr@gnu.org>
11841
11842 * font.c (font_unparse_fcname): Increase len when style is a symbol.
11843
118442008-03-01 Jan Djärv <jan.h.d@swipnet.se>
11845
11846 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
11847 xg_frame_resized when the event is for the edit widget.
11848
11849 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
11850
11851 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
11852 set_char_size.
11853 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
11854 operations on widgets here. Just set frame size if needed.
11855 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
11856 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
11857 (x_wm_set_size_hint): Set size hints on the edit widget only, not
11858 the whole frame.
11859 (xg_create_tool_bar): Move attachment of the tool bar to
11860 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
11861 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
11862
118632008-03-01 Jason Rumney <jasonr@gnu.org>
11864
11865 * w32fns.c (w32_msg_pump): Disable debug code.
11866
118672008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11868
11869 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
11870
118712008-02-29 Chong Yidong <cyd@stupidchicken.com>
11872
11873 * xdisp.c (next_overlay_string): Don't set
11874 overlay_strings_at_end_processed_p if we're currently reading from
11875 a display string.
11876
118772008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
11878
11879 * xdisp.c (get_overlay_strings_1): Fix typo.
11880
118812008-02-29 Chong Yidong <cyd@stupidchicken.com>
11882
11883 * xdisp.c (get_overlay_strings_1): Add missing argument type.
11884
118852008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
11886
11887 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
11888
11889 * xdisp.c (display_mode_element): Cancel the previous change.
11890 (decode_mode_spec): Likewise.
11891 (handle_auto_composed_prop): Don't make composition if it->string
11892 is a string.
11893
118942008-02-27 Kim F. Storm <storm@cua.dk>
11895
11896 * lisp.h (GLYPH): Change type from int to struct with separate char
11897 and face_id members.
11898 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
11899 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
11900 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
11901 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
11902 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
11903 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
11904 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
11905 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
11906 handle new Lisp glyph code encoding, either an integer or a cons.
11907
11908 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
11909 (GLYPH_ALIAS): Delete.
11910 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
11911 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
11912 (GLYPH_FROM_CHAR): Replace macro by ...
11913 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
11914
11915 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
11916 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
11917 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
11918 (GLYPH_INVALID_P): New macro.
11919 (spec_glyph_lookup_face): Update prototype.
11920
11921 * dispnew.c (line_draw_cost): Adapt to new glyph type.
11922 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
11923 new glyph code encoding.
11924 (spec_glyph_lookup_face): No return value; update passed glyph instead.
11925 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
11926
11927 * xdisp.c (get_next_display_element, next_element_from_display_vector):
11928 Adapt to new glyph type and new glyph code encoding.
11929
11930 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
11931
11932 * indent.c (current_column, current_column_1, Fmove_to_column)
11933 (compute_motion): Adapt to new glyph code encoding.
11934
11935 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
11936
119372008-02-27 Chong Yidong <cyd@stupidchicken.com>
11938
11939 * process.c (wait_reading_process_output): Check for window
11940 changes caused by timers.
11941 Suggested by Johan Bockgård.
11942
119432008-02-27 Glenn Morris <rgm@gnu.org>
11944
11945 * emacs.c (USAGE1): Add `--disable-font-backend'.
11946
119472008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
11948
11949 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
11950 is made to the buffer.
11951
119522008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
11953
11954 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
11955 (face_at_string_position):
11956 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
11957 (face_at_string_position):
11958 * xdisp.c (display_string, next_overlay_change):
11959 * buffer.h (overlays_at):
11960 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
11961 Update callers.
11962
119632008-02-26 Chong Yidong <cyd@stupidchicken.com>
11964
11965 * editfns.c (Fformat): Doc fix.
11966
119672008-02-26 Juanma Barranquero <lekktu@gmail.com>
11968
11969 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
11970 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
11971 (Ffont_otf_alternates, Fquery_font): Doc fixes.
11972
119732008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11974
11975 * buffer.c (Fbuffer_swap_text): New function.
11976 (syms_of_buffer): Defsubr it.
11977
119782008-02-25 Chong Yidong <cyd@stupidchicken.com>
11979
11980 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
11981
119822008-02-25 Jason Rumney <jasonr@gnu.org>
11983
11984 * w32font.c (w32font_draw): Draw one character at a time when padding.
11985
119862008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
11987
11988 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
11989 Handle a nil arg. Use run_window_configuration_change_hook.
11990 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
11991 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
11992 Use run_window_configuration_change_hook.
11993
119942008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
11995
11996 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
11997 1-pixel width.
11998
119992008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
12000
12001 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
12002 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
12003 if the glyph in the font is zero pixel with.
12004
12005 * dispextern.h (struct glyph_string): New member padding_p.
12006
12007 * w32font.c (w32font_draw): Pay attention to s->padding_p.
12008
12009 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
12010
12011 * xfont.c (xfont_draw): Pay attention to s->padding_p.
12012
12013 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
12014
12015 * font.c: If the font driver doesn't have `shape' function, return Qnil.
12016
120172008-02-25 Jason Rumney <jasonr@gnu.org>
12018
12019 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
12020
120212008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
12022
12023 Allow fine-grained image-cache flushing.
12024 * dispextern.h (struct image): Add `dependencies' field.
12025 (clear_image_caches): Change arg to Lisp_Object.
12026 * image.c (make_image): Initialize `dependencies' field.
12027 (clear_image_cache): Change arg to allow fine-grained flushing.
12028 Perform the flush even if image-cache-eviction-delay is nil.
12029 (clear_image_caches): Change arg to Lisp_Object.
12030 (Fclear_image_cache): Expand meaning of the argument.
12031 (mark_image): Mark `dependencies' field.
12032 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
12033 (lface_hash): Use XHASH rather than XFASTINT.
12034 (face_at_buffer_position): Fix int -> EMACS_INT position.
12035 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
12036 (select_frame_for_redisplay): Remove code duplication.
12037 (redisplay_internal): Adapt arg to call to clear_image_caches.
12038
120392008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
12040
12041 * s/vms4-0.h:
12042 * s/vms4-2.h:
12043 * s/vms4-4.h:
12044 * s/vms5-5.h: Remove, unused.
12045
12046 * s/irix5-2.h:
12047 * s/irix6-0.h:
12048 * s/riscos5.h:
12049 * s/mach-bsd4-3.h:
12050 * m/mips4.h: Remove files for obsolete systems.
12051
12052 * Makefile.in:
12053 * filelock.c:
12054 * unexmips.c:
12055 * m/hp9000s300.h:
12056 * m/iris4d.h:
12057 * s/aix3-1.h:
12058 * s/hpux.h:
12059 * s/msdos.h:
12060 * s/usg5-0.h:
12061 * s/usg5-2-2.h:
12062 * s/usg5-2.h:
12063 * s/usg5-3.h: Remove references to obsolete variables.
12064
12065 * s/irix5-0.h: Remove, move all the contents ...
12066 * s/irix6-5.h: ... here. Simplify.
12067 * config.in: Regenerate.
12068
120692008-02-24 Jason Rumney <jasonr@gnu.org>
12070
12071 * w32term.c (x_draw_glyph_string_background): Clear the background
12072 manually when cleartype is in use.
12073 (x_draw_glyph_string_foreground): Draw text transparently when
12074 cleartype is in use.
12075
12076 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
12077 a font into it unless we have to.
12078
120792008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12080
12081 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
12082 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 12083
aac0c6e3
MR
120842008-02-18 Jason Rumney <jasonr@gnu.org>
12085
12086 * w32fns.c (Fw32_shell_execute): Encode parameters.
12087
120882008-02-09 Eli Zaretskii <eliz@gnu.org>
12089
12090 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
12091
120922008-02-05 Juanma Barranquero <lekktu@gmail.com>
12093
12094 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
12095
120962008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
12097
12098 * xterm.c (x_set_offset): Don't change the gravity if
12099 CHANGE_GRAVITY is -1.
12100
121012008-02-23 Chong Yidong <cyd@stupidchicken.com>
12102
12103 * fileio.c (auto_save_error_occurred): New var.
12104 (auto_save_error): Set it.
12105 (Fdo_auto_save): Don't overwrite the error message if an auto-save
12106 error occurred.
12107
121082008-02-23 Eli Zaretskii <eliz@gnu.org>
12109
12110 * w32.c (globals_of_w32): Add initializations for
12111 g_b_init_get_sid_sub_authority and
12112 g_b_init_get_sid_sub_authority_count.
12113
121142008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
12115
12116 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
12117 (font_parse_xlfd): Use them for sanity check.
12118 (Finternal_set_font_style_table): Make sure the table is bijective.
12119
12120 Consolidate the image_cache to the terminal struct.
12121 * termhooks.h (P_): Remove redundant def.
12122 (struct terminal): New field `image_cache'.
12123 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
12124 of FRAME_X_IMAGE_CACHE.
12125 * xterm.h (struct x_display_info): Remove image_cache field.
12126 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12127 * w32term.h (struct w32_display_info): Remove image_cache field.
12128 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12129 * macterm.h (struct mac_display_info): Remove image_cache field.
12130 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
12131 * xterm.c (x_term_init):
12132 * w32term.c (w32_term_init):
12133 * macterm.c (mac_term_init): Set the image_cache in the terminal.
12134 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
12135 Remove declarations.
12136 (clear_image_caches, mark_image_cache): New declarations.
12137 * xfaces.c (clear_face_cache):
12138 * xdisp.c (redisplay_internal): Use clear_image_caches.
12139 * image.c (clear_image_cache): Don't check that a frame is on
12140 a window-system before checking if it shares the same cache.
12141 (clear_image_caches): New function.
12142 (Fclear_image_cache): Use it.
12143 (mark_image): Move from allo.c.
12144 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
12145 * alloc.c (mark_image, mark_image_cache): Move to image.c.
12146 (mark_object): Don't call mark_image_cache for frames.
12147 (mark_terminals): Call mark_image_cache.
12148
12149 * lisp.h (Fdelete_terminal): Declare.
12150
12151 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
12152 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
12153 wrong_type_argument.
12154
121552008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
12156
12157 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
12158 malayalam.el, and tamil.el. Add sinhala.el.
12159
121602008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
12161
12162 * xterm.c (x_connection_closed): Consolidate identical tests.
12163 (x_delete_terminal): Don't crash if called via x_connection_closed.
12164
121652008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
12166
12167 * xdisp.c (decode_mode_spec): New arg string.
12168 (display_mode_element): Adjust for the above change.
12169
121702008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12171
12172 * callint.c (Fcall_interactively): Use AREF.
12173
121742008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
12175
12176 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
12177
121782008-02-18 Jan Djärv <jan.h.d@swipnet.se>
12179
12180 * xfns.c (Fx_show_tip): Set string to " " if empty.
12181
121822008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
12183
12184 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
12185 with Qt.
12186
121872008-02-17 Kenichi Handa <handa@m17n.org>
12188
12189 * ftfont.c (ftfont_shape): Return Lispy number.
12190
12191 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
12192 for GCs.
12193 (Finternal_set_font_selection_order): Call font_update_sort_order
12194 only when enable_font_backend is set.
12195 (realize_x_face): Set face->font_info to that of default face only
12196 when enable_font_backend is set.
12197
12198 * xdisp.c (handle_composition_prop): Set it->c to the fist
12199 character of the composed region.
12200 (fill_composite_glyph_string): Set base_face->font_info to
12201 s->font_info. Get a face for ascii from base_face->ascii_face.
12202 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
12203 with a face already decided.
12204 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
12205 non-negative.
12206 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
12207 call font_prepare_composition unconditionally.
12208
12209 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
12210
12211 * xterm.h (struct x_display_info): New member font.
12212
12213 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
12214 (x_set_mouse_face_gc, x_new_font): Likewise.
12215 (x_term_init): Setup display_info->font.
12216 (x_delete_terminal): Free display_info->font.
12217
12218 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
12219
12220 * ftxfont.c (ftxfont_default_fid): Delete it.
12221 (ftxfont_open): Set xfont->fid to 0.
12222 (ftxfont_end_for_frame): Clear data specific to the frame and the
12223 font-driver.
12224
12225 * xftfont.c (xftfont_default_fid): Delete it.
12226 (xftfont_open): Set xfont->fid to 0.
12227
12228 * fontset.c (FONTSET_OBJLIST): New macro.
12229 (fontset_find_font): Update font-object list of the fontset.
12230 (free_realized_fontset): New function.
12231 (free_face_fontset): Call free_realized_fontset.
12232 (Ffont_info): Call font_close_object only when enable_font_backend
12233 is set.
12234
12235 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
12236 [HAVE_NTGUI]: Include w32term.h.
12237 [MAC_OS]: Include macterm.ch.
12238 (font_otf_ValueRecord): Use make_number.
12239 (font_finish_cache): Fix handling of reference count.
12240 (font_clear_cache): Update num_fonts.
12241 (font_open_entity): Update smallest_char_width and
12242 smallest_font_height of the frame.
12243 (font_close_object): Update num_fonts.
12244 (Fclear_font_cache): Fix finding the target cache data.
12245
122462008-02-16 Glenn Morris <rgm@gnu.org>
12247
12248 * fontset.c (Finternal_char_font): Fix compilation warning.
12249
122502008-02-16 Eli Zaretskii <eliz@gnu.org>
12251
12252 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
12253 instead of char arrays. Enlarge the size of array passed to
12254 get_token_information.
12255
12256 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
12257 warnings.
12258
122592008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
12260
12261 * .gdbinit: Don't set `args', it breaks gdb --args.
12262
122632008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
12264
12265 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
12266 within a narrowed buffer.
12267
122682008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
12269
12270 * coding.c (decode_coding_object, encode_coding_object):
12271 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
12272
122732008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
12274
12275 * coding.c (coding_set_destination): Use BEG_BYTE rather than
12276 hardcoding 1.
12277 (detect_coding_system):
12278 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
12279 (string_char_to_byte, string_byte_to_char, insert_from_gap):
12280 * insdel.c (insert_from_gap):
12281 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
12282 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
12283 (string_to_multibyte):
12284 * character.c (chars_in_text, multibyte_chars_in_text):
12285 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
12286
12287 * character.h (FETCH_STRING_CHAR_ADVANCE)
12288 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
12289 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
12290 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
12291
12292 * casefiddle.c (casify_region): Only call after-change and composition
12293 functions on the part of the region that was changed.
12294
12295 * keyboard.c (read_avail_input):
12296 * frame.c (Fdelete_frame): Call Fdelete_terminal.
12297
122982008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12299
12300 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
12301 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
12302
123032008-02-11 Juanma Barranquero <lekktu@gmail.com>
12304
12305 * w32menu.c (push_submenu_start, push_submenu_end)
12306 (push_left_right_boundary, push_menu_pane, push_menu_item):
12307 * keyboard.c (read_key_sequence): Don't pass args with side effects
12308 to AREF, it fails when compiling with -DENABLE_CHECKING.
12309
123102008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
12311
12312 * Makefile.in (${lispsource}international/charprop.el):
12313 Delete this target.
12314
12315 * search.c (boyer_moore): Fix incorrect synching of the trunk and
12316 emacs-unicode-2.
12317
123182008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
12319
12320 * terminal.c (Fdelete_terminal): Clean up the `force' path.
12321
123222008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12323
12324 * frame.c (Qnoelisp): New symbol.
12325 (syms_of_frame): Initialize it.
12326 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
12327 harmless Elisp code, from a strong `force' from x_connection_closed.
12328 * frame.h (Qnoelisp): Declare.
12329 * xterm.c (x_connection_closed): Pass `noelisp'.
12330
12331 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
12332 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
12333 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
12334 rather than `int' for the type of `type'.
12335
123362008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
12337
12338 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
12339
12340 * Makefile.in (GNUC): Remove support for gcc-1.x.
12341
123422008-02-10 Richard Stallman <rms@gnu.org>
12343
12344 * lisp.h (ASET): Use AREF, not ASLOT.
12345
123462008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
12347
12348 * lisp.h (ASET): Check bounds.
12349
123502008-02-10 Glenn Morris <rgm@gnu.org>
12351
12352 * buffer.c (mode-name): Doc fix.
12353
123542008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12355
12356 * Makefile.in:
12357 * emacs.c:
12358 * gmalloc.c:
12359 * keyboard.c:
12360 * lisp.h:
12361 * m/ibm370aix.h:
12362 * process.c:
12363 * regex.c:
12364 * s/hpux.h:
12365 * sysdep.c:
12366 * sysselect.h:
12367 * systty.h:
12368 * unexec.c:
12369 * w32term.c:
12370 * xsmfns.c:
12371 * xterm.c: Remove code that deals with obsolete variables.
12372
12373 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
12374
12375 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
12376 nothing else needs it anymore.
12377
123782008-02-09 Eli Zaretskii <eliz@gnu.org>
12379
12380 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
12381 instead of unibyte_char_to_multibyte.
12382
123832008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
12384
12385 * s/gnu-linux.h: Remove commented out code.
12386
12387 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
12388
12389 * Makefile.in: Update what RMS says about using autoconf.
12390 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
12391 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
12392 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
12393 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
12394
123952008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
12396
12397 * keymap.c (Fkey_description): Move side effect outside of macro call.
12398
12399 * xfaces.c (Finternal_make_lisp_face):
12400 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
12401
12402 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
12403 (syms_of_fontset): Use ASET.
12404
12405 * fns.c (concat): Move side effect outside of macro call.
12406 (hash_clear): Use ASET.
12407
124082008-02-08 Richard Stallman <rms@gnu.org>
12409
12410 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
12411 If FORCE, and frame has a surrogate minibuffer for another frame,
12412 delete the other frame first.
12413
124142008-02-07 Timo Savola <timo.savola@iki.fi>
12415
12416 * xterm.c (x_detect_focus_change): Handle embed client message.
12417 (handle_one_xevent): Ditto.
12418 (handle_one_xevent): If embedded and we get a button press/release,
12419 request focus.
12420 (xembed_set_info, xembed_send_message): New functions.
12421 (x_make_frame_visible): Call xembed_set_info if embedded.
12422 (x_make_frame_invisible): Call xembed_set_info if embedded.
12423 (x_term_init): Initialize Xatom_XEMBED.
12424 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
12425 (x_iconify_frame): Ditto.
12426
12427 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
12428 (enum xembed_info, enum xembed_message, enum xembed_focus)
12429 (enum xembed_modifier, enum xembed_accelerator): New.
12430 (xembed_set_info, xembed_send_message): Declare.
12431 (FRAME_X_EMBEDDED_P): New.
12432
12433 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
12434 gtk_plug_new.
12435
12436 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
12437 window ID of a frame.
12438 (x_window): Reparent frame if embedded.
12439 (Fx_create_frame): Don't set border width if embedded.
12440
12441 * emacs.c (USAGE3): Add --parent-id.
12442 (standard_args): Ditto.
12443
124442008-02-07 Jan Djärv <jan.h.d@swipnet.se>
12445
12446 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
12447
124482008-02-07 Jim Meyering <meyering@redhat.com>
12449
12450 Use "do...while (0)", not "if (1)...else" in macro definitions.
12451 The latter provokes a warning from gcc about the empty else, when
12452 followed by ";". Also, without that trailing semicolon, it would
12453 silently swallow up any following statement.
12454 * syntax.h (SETUP_SYNTAX_TABLE)
12455 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
12456 * buffer.h (DECODE_POSITION): Likewise.
12457 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
12458 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
12459 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
12460 (FETCH_CHAR_ADVANCE): Likewise.
12461 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
12462
124632008-02-07 Jim Meyering <meyering@redhat.com>
12464
12465 * lread.c [lint]: Don't include <sys/inode.h>.
12466
124672008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
12468
12469 * xselect.c (x_handle_dnd_message):
12470 * xmenu.c (digest_single_submenu, xmenu_show):
12471 * xdisp.c (with_echo_area_buffer_unwind_data)
12472 (format_mode_line_unwind_data, unwind_format_mode_line)
12473 (display_menu_bar):
12474 * eval.c (Ffetch_bytecode):
12475 * doc.c (store_function_docstring):
12476 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
12477 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
12478 * buffer.c (add_overlay_mod_hooklist): Use ASET.
12479
124802008-02-07 Kenichi Handa <handa@m17n.org>
12481
12482 * ftxfont.c (ftxfont_open): Don't set
12483 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
12484
12485 * ftfont.c (ftfont_open): Fix previous change.
12486
124872008-02-06 Jason Rumney <jasonr@gnu.org>
12488
12489 * w32font.c (w32font_text_extents): Fill in lbearing metric.
12490 Use cached metrics for ASCII characters.
12491 (w32font_open_internal): Don't set font's owning_frame.
12492 Cache metrics for ASCII characters.
12493
12494 * w32font.h (struct w32font_info): Add ascii_metrics.
12495 Remove owning_frame.
12496
124972008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
12498
12499 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
12500 to negative value.
12501
12502 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
12503
12504 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
12505
12506 * charset.c (syms_of_charset): Set QCtest and Qeq.
12507
125082008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
12509
12510 * process.c (Fstart_process):
12511 * callproc.c (Fcall_process): Handle the case where
12512 Funhandled_file_name_directory returns nil.
12513
12514 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
12515 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
12516 * font.c (check_gstring): Use them and AREF to access the vector before
12517 we know it's really a gstring.
12518 (Ffont_shape_text): Fix typo.
46e722a9 12519 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
12520
12521 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
12522 Declare.
12523
12524 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
12525
125262008-02-05 Jason Rumney <jasonr@gnu.org>
12527
12528 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
12529 Set smallest_font_height and smallest_char_width in display info.
12530
125312008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
12532
12533 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
12534
125352008-02-05 Miles Bader <miles@gnu.org>
12536
12537 * xfaces.c (get_lface_attributes, merge_named_face)
12538 (lookup_named_face, lookup_derived_face, realize_named_face):
12539 Revert 2008-02-01 change by cyd@stupidchicken.com.
12540
125412008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
12542
12543 * fontset.c (Ffontset_info): Handle the case of inhibitting the
12544 fallback fonts.
12545 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
12546
125472008-02-04 Jason Rumney <jasonr@gnu.org>
12548
12549 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
12550 set full_name.
12551 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
12552
125532008-02-03 Jason Rumney <jasonr@gnu.org>
12554
12555 * makefile.w32-in (OBJ1): Include font.o here.
12556 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
12557
125582008-02-02 Jason Rumney <jasonr@gnu.org>
12559
12560 * makefile.w32-in (temacs): Bump EMHEAP to 21.
12561
125622008-02-01 Jason Rumney <jasonr@gnu.org>
12563
12564 * s/cygwin.h: Define VIRT_ADDR_VARIES.
12565
12566 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
12567
125682008-02-01 Andreas Schwab <schwab@suse.de>
12569
12570 * Makefile.in (shortlisp, lisp): Update for rename of
12571 ../lisp/language/myanmar.el.
12572
125732008-02-01 Chong Yidong <cyd@stupidchicken.com>
12574
12575 * xfaces.c (get_lface_attributes): Delete function.
12576 (merge_named_face, lookup_named_face, lookup_derived_face)
12577 (realize_named_face): Call lface_from_face_name directly, and use
12578 the fact that merge_face_vectors does not alter its FROM argument.
12579
125802008-02-01 Jason Rumney <jasonr@gnu.org>
12581
12582 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
12583 input in the default locale. Handle non-Unicode multibyte input.
12584
125852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12586
12587 * fontset.c (reorder_font_vector): Exclude nil elements from the
12588 font group. Don't try multiple fonts.
12589 (fontset_font): Adjust for the above change.
12590 (Finternal_char_font): Return nil if the found font doesn't
12591 contain the character ch.
12592
12593 * Makefile.in (lisp, shortlisp): Add cham.el.
12594
125952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12596
12597 * font.h (FONTP): Make it return 1 also for a font-object.
12598
12599 * .gdbinit (xfontset): New function.
12600
12601 * font.c (font_find_for_lface): Check if the character C is
12602 supported or not only for the first font.
12603
12604 * fontset.c (reorder_font_vector): Fix typo.
12605 (fontset_find_font): Don't add a font-spec specifying a script.
12606 Use 0 (not Qt) for the indication of empty font-group. Change the
12607 format of RFONT-DEF. Return Qt if no font in the font-group
12608 support the character.
12609 (fontset_font): Adjust for the above change. If no font was
12610 found the character, remember that.
12611 (face_for_char): Adjust for the change of RFONT-DEF.
12612 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
12613 no font for the target.
12614 (Finternal_char_font): Adjust for the change of RFONT-DEF.
12615
126162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12617
12618 * font.c (font_load_for_face): Handle the case that the font in
12619 face->lface is a string.
12620
126212008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12622
12623 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
12624
126252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12626
12627 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
12628 Fix previous change. If the frame is not on a window system,
12629 signal an error.
12630
126312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12632
12633 * coding.c (decode_coding_object, encode_coding_object): Adjust
12634 marker positions after conversion.
12635
12636 * lisp.h (struct Lisp_Marker): New member need_adjustment.
12637
126382008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12639
12640 * font.c (font_find_for_lface): Fix the handling of the return
12641 value of font_has_char.
12642 (Ffont_shape_text): Fix previous change.
12643
12644 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
12645 (fontset_ref_and_range): Delete it.
12646 (fontset_find_font): Call char_table_ref_and_range instead of
12647 FONTSET_REF_AND_RANGE.
12648 (make_fontset): Don't setup font groups of Latin here.
12649 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
12650 (new_fontset_from_font): Make the specified font the default for
12651 all Latin characters.
12652
126532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12654
12655 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
12656 is on a window system before accessing the fontset of the frame.
12657
126582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12659
12660 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
12661
12662 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
12663 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
12664
12665 * font.c (Ffont_shape_text): If the font driver doesn't have a
12666 shaper function, make zero-width glyphs to have at least one-pixel
12667 width. Fix setting of `to' field of glyphs.
12668
126692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12670
12671 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
12672 glyphs.
12673
12674 * font.h (struct font_driver): Improve docstring of member `shape'.
12675
126762008-02-01 Kenichi Handa <handa@m17n.org>
12677
12678 * composite.c (syms_of_composite): Fix docstring of
12679 auto-composition-function.
12680
12681 * font.h (LGLYPH_SIZE): New macro.
12682
12683 * font.c (Ffont_fill_gstring): Stop filling when a character not
12684 supported by the font is found.
12685 (Ffont_shape_text): When a shape callback function returns nil,
12686 try at most two more times with larger gstring.
12687 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
12688
12689 * xdisp.c (handle_auto_composed_prop): Change the argument to
12690 auto-composition-function.
12691
12692 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
12693 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
12694 Lispy glyph and store it in the lgstring.
12695
12696 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
12697
12698 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
12699
127002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12701
12702 * font.c (Ffont_shape_text): Avoid unnecessary composition.
12703
12704 * fontset.c (Vfont_encoding_charset_alist): New variable.
12705 (syms_of_fontset): DEFVAR it.
12706 (reorder_font_vector, fontset_find_font): Optimize for the case of
12707 no need of reordering.
12708 (face_for_char): Map the charset property by
12709 Vfont_encoding_charset_alist.
12710
127112008-02-01 Jason Rumney <jasonr@gnu.org>
12712
12713 * w32font.c (logfonts_match): Don't check adstyle here.
12714 (font_matches_spec): Check here against physical font instead.
12715 (add_font_entity_to_list): Avoid some substitutions.
12716
12717 * font.c (font_parse_fcname): Default weight and slant to normal.
12718 (font_score): Prefer normal fonts if weight or slant unspecified.
12719 (font_score) [WINDOWSNT]: Scale weight difference down to closer
12720 match freetype scores.
12721
127222008-02-01 Jason Rumney <jasonr@gnu.org>
12723
12724 * w32font.c (w32font_text_extents): Don't use the frame stored in the
12725 font, as it may have been deleted.
12726 (w32_enumfont_pattern_entity): Map generic family to adstyle using
12727 most common hyphenless variation.
12728 (logfonts_match): Check generic family.
12729 (font_matches_spec): Don't check generic family here.
12730 (fill_in_logfont): Set generic family based on adstyle.
12731
12732 * w32font.h (w32font_get_cache): Update declaration.
12733
127342008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12735
12736 * ftfont.c (ftfont_get_cache): Adjust the argument type.
12737
12738 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
12739 If none of the new drivers are available, call font_update_drivers
12740 with the old drivers.
12741
12742 * w32font.c (w32font_get_cache): Adjust the argument type.
12743
12744 * xfont.c (xfont_get_cache): Adjust the argument type.
12745
12746 * font.h (struct font_driver): Change argument type of get_cache.
12747
12748 * xftfont.c (xftfont_start_for_frame): Delete prototype.
12749
12750 * font.c (Ffont_get): Fix arguments to Fassoc.
12751 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
12752 (font_clear_cache): New function.
12753 (font_list_entities, font_matching_entity): Use font_get_cache.
12754 (font_update_drivers): Call font_clear_cache when finishing a driver.
12755
12756 * fontset.c (fontset_find_font): Fix previous change.
12757
127582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12759
12760 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
12761 dpyinfo->font_table.
12762 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
12763 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
12764
12765 * font.c (font_at): Handle the case that the arg C is negative.
12766 Handle the unibyte case.
12767 (Ffont_at): Call font_at with the arg C -1.
12768
12769 * xdisp.c (handle_auto_composed_prop): Don't get a character at
12770 the position here, and call font_at with the arg C -1.
12771 Don't check the range of the existing composition at the point.
12772
127732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12774
12775 * fontset.c (fontset_add): New args charset_id and family.
12776 Change caller.
12777 (load_font_get_repertory, fontset_find_font): Assume that
12778 font_spec is always a font-spec object.
12779 (Fset_fontset_font): Always store a font-spec object in a fontset.
12780
12781 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
12782 instead of get_property_and_range.
12783
127842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12785
12786 * xftfont.c (struct xftfont_info): Delete the member ft_face.
12787 (xftfont_open): Don't keep locking face.
12788 (xftfont_close): Don't unlock face.
12789 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
12790
12791 * fontset.c (fontset_find_font): Don't prefer a font of
12792 supplementary charset.
12793
127942008-02-01 Kenichi Handa <handa@m17n.org>
12795
12796 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
12797 script, langsys_tag to langsys, new member script.
12798 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 12799 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
12800 listing to the script specified in that property. Fix arg to
12801 OTF_check_features.
12802
128032008-02-01 Jason Rumney <jasonr@gnu.org>
12804
12805 * w32font.h: New file.
12806
12807 * w32font.c: Include it.
12808 (struct w32font_info): Add owning_frame field. Move to w32font.h.
12809 (w32font_open): Set owning_frame.
12810 (w32font_text_extents): Use owning_frame.
12811 (struct font_callback_data): Add opentype_only field.
12812 (add_font_entity_to_list): Use it to filter fonts.
12813 Don't check against full name.
12814 (w32font_list_internal): New function.
12815 (w32font_list): Use it.
12816 (w32font_match_internal): New function.
12817 (w32font_match): Use it.
12818 (w32font_open_internal): New function.
12819 (w32font_open): Use it.
12820 (w32font_get_cache, w32font_close, w32font_has_char)
12821 (w32font_encode_char, w32font_text_extents, w32font_draw):
12822 Make non-static.
12823
12824 * makefile.w32-in (w32font.o): Depend on w32font.h.
12825
128262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12827
12828 * charset.c (Fdefine_charset_internal): Record a supplementary
12829 charset at the tail of Vcharset_order_list.
12830
12831 * font.c (Ffont_shape_text): Fix the return value.
12832
12833 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
12834
12835 * xdisp.c (handle_auto_composed_prop): Fix previous change.
12836
128372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12838
12839 * ftfont.c (struct OpenTypeSpec): New struct.
12840 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
12841 (ftfont_get_open_type_spec): New function.
12842 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
12843
12844 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
12845
128462008-02-01 Jason Rumney <jasonr@gnu.org>
12847
12848 * w32font.c (add_font_entity_to_list): Compare only the beginning
12849 of full name.
12850
128512008-02-01 Kenichi Handa <handa@m17n.org>
12852
12853 * xdisp.c (handle_auto_composed_prop): Simplify the code.
12854 Never return HANDLED_RECOMPUTE_PROPS.
12855
128562008-02-01 Kenichi Handa <handa@m17n.org>
12857
12858 * font.c (font_gstring_produce): Delete it.
12859
12860 * composite.h (COMPOSITION_METHOD):
12861 Handle COMPOSITION_WITH_GLYPH_STRING.
12862
128632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12864
12865 * xfont.c (Qx): Delete.
12866 (syms_of_xfont): Don't initialize Qx.
12867
12868 * composite.h (enum composition_method):
12869 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
12870
128712008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12872
12873 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
12874 (choose_face_font): Accept new form of font-spec.
12875
12876 * frame.h (font_driver_list): Declare it unconditionally.
12877 (struct frame): Define members font_driver_list and font_data_list
12878 unconditionally.
12879
12880 * fontset.c: Include "font.h" unconditionally.
12881 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
12882 (Fset_fontset_font): Accept a font-spec object.
12883
12884 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
12885 PIXEL_SIZE part a wild card.
12886
12887 * dispextern.h (struct glyph_string): Define members clip and
12888 num_clips unconditionally.
12889 (struct face): Define members font_info and extra unconditionally.
12890
12891 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
12892 ftfont_info only when HAVE_LIBOTF is defined.
12893
128942008-02-01 Andreas Schwab <schwab@suse.de>
12895
12896 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
12897 and end.
12898
128992008-02-01 Jason Rumney <jasonr@gnu.org>
12900
12901 * w32font.c (w32font_driver): Add new fields.
12902
129032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12904
12905 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
12906 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
12907 (LIBES): Add @M17N_FLT_CFLAGS@.
12908
12909 * composite.c (compose_text): Don't treat the new style
12910 composition specially.
12911
12912 * emacs.c (main): Call syms_of_font unconditionally.
12913
12914 * font.h (FONT_ENTITY_NOT_LOADABLE)
12915 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
12916 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
12917 (struct font_driver): New member shape.
12918 (font_registry_charsets): Extern it.
12919 (font_find_for_lface, font_prepare_composition): Adjust prototype.
12920 (font_otf_capability, font_drive_otf): Delete their externs.
12921
12922 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
12923 (font_charset_alist, font_registry_charsets): Move from xfont.c
12924 and rename.
12925 (font_prop_validate_otf): New function.
12926 (font_property_table): Register it for QCotf.
12927 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
12928 (font_drive_otf): Delete.
12929 (font_prepare_composition): New arg F. Adjust for the change of
12930 lispy gstring.
12931 (font_find_for_lface): New arg C.
12932 (font_load_for_face): Adjust for the change of font_find_for_lface.
12933 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
12934 lispy gstring.
12935 (Ffont_shape_text): New function.
12936 (Fopen_font): If the font size is not given, use 12-pixel.
12937 (Ffont_at): New arg STRING.
12938 (syms_of_font): Initalize font_charset_alist.
12939 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
12940 conditionally.
12941
12942 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
12943 fonts of the same font-spec. Change the format of RFONT-DEF.
12944 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
12945 Adjust for the change of RFONT-DEF.
12946 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
12947
12948 * ftfont.h: New file.
12949
12950 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
12951 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12952 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12953 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
12954 font_otf_capability and font_drive_otf, set ftfont_shape.
12955 (ftfont_list): Adjust for the change of :otf property value.
12956 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
12957 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
12958 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
12959 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12960 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
12961 (otf_gstring, gstring, m17n_flt_initialized): New variables.
12962
12963 * w32term.c (x_draw_composite_glyph_string_foreground):
12964 Adjust for the change of lispy gstring.
12965
12966 * xdisp.c (handle_composition_prop): Adjust for the change of
12967 lispy gstring. Call a function for auto-composition with the
12968 third arg it->window.
12969 (fill_composite_glyph_string): Adjust for the change of lispy string.
12970 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
12971
12972 * xfaces.c (set_font_frame_param): Adjust for the change of
12973 font_find_for_lface.
12974
12975 * xfont.c (x_font_charset_alist): Move to font.c and rename.
12976 (xfont_registry_charsets): Likewise. Change caller.
12977 (syms_of_xfont): Don't handle x_font_charset_alist.
12978
12979 * xftfont.c: Include "ftfont.h".
12980 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
12981 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
12982 (xftfont_close) [HAVE_LIBOTF]: Close otf.
12983 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
12984 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
12985 Set xftfont_driver.shape to xftfont_shape.
12986
12987 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12988 the change of lispy gstring.
12989
129902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
12991
12992 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
12993
129942008-02-01 Jason Rumney <jasonr@gnu.org>
12995
12996 * w32font.c (w32font_draw): Fill background manually.
12997
129982008-02-01 Jason Rumney <jasonr@gnu.org>
12999
13000 * font.c (Qfontp): Remove unused symbol.
13001 (QCantialias): New symbol.
13002 (syms_of_font): Define it.
13003 (font_property_table): Set a validator for QCantialias.
13004
13005 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
13006 Define if not already.
13007 (QCfamily): Share with xfaces.c.
13008 (Qstandard, Qsubpixel, Qnatural): New symbols.
13009 (syms_of_w32font): Define them. Don't define QCfamily here.
13010 (w32_antialias_type, lispy_antialias_type): New functions.
13011 (w32_enumfont_pattern_entity): New arg requested_font.
13012 Set antialias parameter if non-default was requested.
13013 (fill_in_logfont): Fill in lfQuality if :antialias specified.
13014
130152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13016
13017 * lread.c (read1): Undo the previous change.
13018
130192008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
13020
13021 * frame.c (Fdelete_frame): Call font_update_drivers only when
13022 USE_FONT_BACKEND is defined.
13023
130242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13025
13026 * font.h (struct font_bitmap): New member bits_per_pixel.
13027 (struct font_driver): New members start_for_frame and end_for_frame.
13028 (struct font_data_list): New struct.
13029 (font_put_frame_data, font_get_frame_data): Extern them.
13030
13031 * frame.h (struct frame): New member font_data_list.
13032
13033 * font.c (font_update_drivers): Call driver->start_for_frame and
13034 driver->end_for_frame at proper timings.
13035 (font_put_frame_data, font_get_frame_data): New functions.
13036 (Ffont_spec): Add usage in the docstring.
13037
13038 * frame.c (make_frame): Initialize f->font_data_list to NULL.
13039 (Fdelete_frame): Call font_update_drivers.
13040
13041 * xftfont.c (struct xftface_info): Delete the member xft_draw.
13042 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
13043 (xftfont_get_xft_draw): New function.
13044 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
13045 (xftfont_end_for_frame): New function.
13046 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
13047
13048 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
13049 Change argument. Cache GCs in the per-frame data.
13050 (struct ftxfont_frame_data): New struct.
13051 (ftxfont_draw_bitmap): New arg gc_fore and flush.
13052 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
13053 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
13054 (ftxfont_end_for_frame): New function.
13055 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
13056
13057 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
13058
130592008-02-01 Kenichi Handa <handa@m17n.org>
13060
13061 * xselect.c (Vselection_coding_system)
13062 (Vnext_selection_coding_system): Delete them.
13063 (syms_of_xselect): Don't declare selection-coding-system and
13064 next-selection-coding-system. They are declared in select.el.
13065
130662008-02-01 Jason Rumney <jasonr@gnu.org>
13067
13068 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
13069
13070 * w32fns.c: Include imm.h.
13071 (get_composition_string_fn, get_ime_context_fn): New optional
13072 system functions.
13073 (globals_of_w32fns): Load them from imm32.dll.
13074 (ignore_ime_char): New flag.
13075 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
13076 WM_IME_ENDCOMPOSITION messages.
13077
13078 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
13079 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
13080
130812008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13082
13083 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
13084 (READCHAR_REPORT_MULTIBYTE): New macro.
13085 (readchar): New 2nd arg MULTIBYTE.
13086 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
13087 Make symbol's name multibyte according to the multibyteness of the
13088 source.
13089
130902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13091
13092 * xfaces.c (face_for_overlay_string): Call lookup_face with
13093 correct arguments (fix of synching with the trunk).
13094
130952008-02-01 Kenichi Handa <handa@m17n.org>
13096
13097 * font.c (font_prop_validate_symbol, font_prop_validate_style)
13098 (font_prop_validate_non_neg, font_prop_validate_spacing):
13099 Delete argument prop_index.
13100 (font_property_table): Change arguments to validater. Change Callers.
13101 (font_lispy_object): Delete.
13102 (font_at): Use font_find_object instead fo font_lispy_object.
13103
131042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13105
13106 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
13107 and file names.
13108
131092008-02-01 Jason Rumney <jasonr@gnu.org>
13110
13111 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
13112 (font_matches_spec): Remove debug output.
13113 (add_font_entity_to_list): Avoid using substituted fonts.
13114
131152008-02-01 Jason Rumney <jasonr@gnu.org>
13116
13117 * doc.c (Fsnarf_documentation):
13118 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
13119
131202008-02-01 Miles Bader <miles@gnu.org>
13121
13122 * dispextern.h (struct glyph_row): Only define "clip" field if
13123 HAVE_WINDOW_SYSTEM is defined.
13124
131252008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13126
13127 Fix up multi-tty merge.
13128
13129 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
13130 and indentation.
13131
13132 * xfaces.c (free_realized_face, clear_face_gcs):
13133 Include font_done_for_face in the input_blocked section, just in case.
13134
13135 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
13136 (get_char_face_and_encoding): Undo last change and remove the *other*
13137 duplicate definition (i.e. keep the one that's better scoped and that
13138 includes code for the font-backend).
13139
13140 * terminal.c (create_terminal): Default keyboard_coding to
13141 `no-conversion' and terminal_coding to `undecided'.
13142
13143 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
13144
13145 * fontset.c (free_realized_fontsets): Check that the table entry does
13146 contain a fontset before trying to compare it to `base'.
13147
13148 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
13149 syms_of_charset, and syms_of_coding earlier because init_window_once
13150 now needs Vcoding_system_hash_table to be setup.
13151
13152 * coding.h (default_buffer_file_coding): Remove.
13153
13154 * coding.c (default_buffer_file_coding): Remove.
13155 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
13156 than ->symbol, and use the terminal-local coding system.
13157 (syms_of_coding): Don't setup the coding-systems that are not
13158 terminal-local.
13159 (Fdefine_coding_system_internal): Use XCAR/XCDR.
13160
13161 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
13162 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
13163
13164 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
13165 in chartab.c and were re-added here by mistake.
13166 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
13167
13168 * doc.c (Fsnarf_documentation):
13169 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
13170 src to etc.
13171
13172 * ChangeLog.10: Add mistakenly removed entry.
13173
131742008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
13175
13176 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
13177
131782008-02-01 Miles Bader <miles@gnu.org>
13179
13180 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
13181 Add extra args to FACE_FOR_CHAR.
13182
131832008-02-01 Kenichi Handa <handa@m17n.org>
13184
13185 * keymap.c (where_is_internal_1): If key is a cons, store the copy
13186 in sequence.
13187
13188 * chartab.c (map_sub_char_table, map_char_table): If the range
13189 contains just one character, call the function with that character
13190 even if the depth is not 3.
13191
131922008-02-01 Jason Rumney <jasonr@gnu.org>
13193
13194 * w32font.c (w32font_text_extents): Calculate metrics for the
13195 whole string.
13196
131972008-02-01 Jason Rumney <jasonr@gnu.org>
13198
13199 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
13200
132012008-02-01 Jason Rumney <jasonr@gnu.org>
13202
13203 * w32term.c (x_set_glyph_string_clipping): Use
13204 get_glyph_string_clip_rects.
13205 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13206 Adjust for the change of struct glyph_string.
13207
13208 * w32font.c (w32font_draw): Do clipping here.
13209
132102008-02-01 Kenichi Handa <handa@m17n.org>
13211
13212 * xftfont.c (xftfont_draw): Adjust for the change of struct
13213 glyph_string.
13214
13215 * xterm.c (x_set_glyph_string_clipping): Use
13216 get_glyph_string_clip_rects.
13217 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
13218 Adjust for the change of struct glyph_string.
13219
13220 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
13221 the resulting clip(s}.
13222 (expose_overlaps): Add arg r. Change callers. Set it to
13223 row->clip temporarily.
13224 (expose_window): Redraw rows overlapping the exposed area.
13225
13226 * dispextern.h (struct glyph_row): New member clip.
13227 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
13228 clip_height, new member clip, and num_clips.
13229
132302008-02-01 Kenichi Handa <handa@m17n.org>
13231
13232 * data.c (Fchar_or_string_p): Fix docstring.
13233
132342008-02-01 Kenichi Handa <handa@m17n.org>
13235
13236 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
13237 create a temporary XftDraw object.
13238
132392008-02-01 Kenichi Handa <handa@m17n.org>
13240
13241 * font.c (Ffontp): Fix docstring.
13242
13243 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
13244 strong evidence of ISO-2022.
13245
132462008-02-01 Kenichi Handa <handa@m17n.org>
13247
13248 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
13249 SYNTAX_ENTRY_FOLLOW_PARENT.
13250
132512008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13252
13253 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
13254 its type.
13255 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
13256 Update to the new type of weak_hash_tables and next_weak.
13257
13258 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
13259 a plain C pointer to Lisp_Hash_Table.
13260
13261 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
13262 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
13263 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
13264 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
13265 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
13266 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
13267 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
13268 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
13269 (GC_EQ): Remove since they've been identical to their non-GC_
13270 alter-egos ever since the markbit was eradicated.
13271
13272 * alloc.c:
13273 * buffer.c:
13274 * buffer.h:
13275 * data.c:
13276 * fileio.c:
13277 * filelock.c:
13278 * fns.c:
13279 * frame.h:
13280 * lisp.h:
13281 * macterm.c:
13282 * print.c:
13283 * process.c:
13284 * w32fns.c:
13285 * w32menu.c:
13286 * w32term.c:
13287 * xfns.c:
13288 * xmenu.c:
13289 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
13290
132912008-02-01 Kenichi Handa <handa@m17n.org>
13292
13293 * chartab.c (map_sub_char_table): Make it work for the top-level
13294 char-table. Fix handling of parent char-table.
13295 (map_char_table): Adjust for the above change.
13296
132972008-02-01 Jason Rumney <jasonr@gnu.org>
13298
13299 * w32font.c (Qgdi): Rename from Qw32.
13300
133012008-02-01 Jason Rumney <jasonr@gnu.org>
13302
13303 * w32bdf.c (get_quoted_string): Make function static.
13304
133052008-02-01 Kenichi Handa <handa@m17n.org>
13306
13307 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
13308 bigger ascent and descent than those of the font, use them as
13309 font's ascent and descent.
13310
133112008-02-01 Kenichi Handa <handa@m17n.org>
13312
13313 * Makefile.in (${lispsource}international/charprop.el): Move this
13314 target within "#ifdef HAVE_UNIDATA" and "#endif".
13315
133162008-02-01 Kenichi Handa <handa@m17n.org>
13317
13318 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
13319 (shortlisp): Add ../lisp/language/tai-viet.el.
13320
133212008-02-01 Ulrich Mueller <ulm@gentoo.org>
13322
13323 * Makefile.in (${lispsource}international/charprop.el): Depend on
13324 temacs${EXEEXT}.
13325
133262008-02-01 Jason Rumney <jasonr@gnu.org>
13327
13328 * w32font.c (w32font_close): Delete the GDI font object.
13329
13330 * w32menu.c: Include character.h.
13331
13332 * w32proc.c: Likewise.
13333
13334 * w32select.c: Likewise.
13335
13336 * makefile.w32-in (w32proc.o): Depend on character.h.
13337
133382008-02-01 Jason Rumney <jasonr@gnu.org>
13339
13340 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
13341
13342 * w32menu.c (syms_of_w32menu): Likewise.
13343
13344 * w32proc.c (syms_of_ntproc): Likewise.
13345
13346 * w32select.c (syms_of_w32select): Likewise.
13347
13348 * w32term.c (syms_of_w32term): Likewise.
13349
133502008-02-01 Jason Rumney <jasonr@gnu.org>
13351
13352 * w32font.c (w32font_draw): Delete brush after using it.
13353
133542008-02-01 Jason Rumney <jasonr@gnu.org>
13355
13356 * w32font.c (w32font_open): Don't set font_idx.
13357 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
13358 to font settings.
13359 (w32font_draw): Fill background explicitly.
13360
133612008-02-01 Jason Rumney <jasonr@gnu.org>
13362
13363 * w32term.c (w32_initialize): Don't call w32font_initialize.
13364
13365 * w32font.c (w32font_info): Remove subranges.
13366 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
13367 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
13368 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
13369 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
13370 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
13371 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
13372 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
13373 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
13374 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
13375 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
13376 New symbols.
13377 (font_callback_data): New struct.
13378 (w32font_list, w32font_match): Use it.
13379 (w32font_open): Don't populate subranges.
13380 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
13381 (w32font_encode_char): Always return unicode code-point as-is.
13382 (w32font_text_extents): Supply a transformation matrix to
13383 GetGlyphOutline. Never look up by glyph index. Avoid looping
13384 twice. Use unicode version of GetTexExtentPoint32 instead of
13385 glyph index version.
13386 (set_fonts_frame): Remove.
13387 (w32_enumfont_pattern_entity): Add frame parameter, use it to
13388 set frame parameter. Use backward compatible fake foundries.
13389 Save generic family in extra slot under QCfamily. Make width slot
13390 constant. Save QCspacing value. Save list of scripts instead of
13391 binary subranges.
13392 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
13393 (add_font_entity_to_list): Use font_callback_data struct. Filter
13394 unwanted fonts.
13395 (add_one_font_entity_to_list): Use font_callback_data struct.
13396 (w32_registry): Default to iso10646_1.
13397 (fill_in_logfont): Use dpi from extra slot. Don't bother with
13398 string font registries. Don't fill in font name if it is a generic
13399 family name, fill family instead. Use spacing, family and script
13400 extra info to fill pitch, family and charset fields.
13401 (list_all_matching_fonts): Use font_callback_data struct.
13402 (unicode_range_for_char): Remove.
13403 (font_supported_scripts): New function.
13404 (w32font_initialize): Remove.
13405 (syms_of_w32font): Update which symbols are defined.
13406
134072008-02-01 Jason Rumney <jasonr@gnu.org>
13408
13409 * font.c (font_pixel_size): Reverse assq_no_quit args.
13410
13411 * w32term.h (FONT_WIDTH): Report max width, not average.
13412 (FONT_MAX_WIDTH): Remove.
13413 (FONT_AVG_WIDTH): New macro.
13414
13415 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
13416 redefinition of FONT_WIDTH.
13417
13418 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
13419 (w32_cache_char_metrics): Use FONT_WIDTH.
13420
13421 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
13422
134232008-02-01 Jason Rumney <jasonr@gnu.org>
13424
13425 * w32font.c (w32font_open): Make lfHeight negative.
13426
13427 * w32fns.c (x_default_font_parameter): Use new style font name.
13428 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
13429
134302008-02-01 Jason Rumney <jasonr@gnu.org>
13431
13432 * w32font.c (QCsubranges): New symbol.
13433 (w32font_open, w32font_has_char): Get subranges from subproperty
13434 of extra.
13435 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
13436 (syms_of_w32font): Define :subranges symbol.
13437
13438 * font.c (font_put_extra): Expose externally.
13439
13440 * font.h (font_put_extra): Move declaration from font.c.
13441
13442 * font.c (Ffont_get): Use font driver to determine otf capability.
13443 (adjust_anchor): Check if driver defines anchor_point before using.
13444
13445 * w32font.c (w32font_open): Handle size, height and pixel_size better.
13446 (w32font_draw): Use options.
13447 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
13448 Fix detection of truetype fonts.
13449 (registry_to_w32_charset): Handle charsets other than iso8859-1
13450 expressed as lisp symbols.
13451 (w32_registry): Express charset as lisp symbol.
13452 (fill_in_logfont): Reverse pixel and point height logic.
13453 Don't set width here. Set quality to default.
13454
13455 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
13456 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
13457
13458 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13459 Remove redundant loop and allocation.
13460
13461 * makefile.w32-in (font.o, w32font.o): New objects.
13462 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
13463 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
13464
13465 * xdisp.c (fill_composite_glyph_string): Make the first arg to
13466 STORE_XCHARB a valid l-value.
13467
13468 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
13469 calculations for non-Truetype fonts.
13470 (x_draw_glyph_string): Sync with xterm.c.
13471 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
13472 Remove redundant code.
13473 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
13474
13475 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
13476 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
13477
13478 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
13479 (x_to_w32_charset, w32_to_x_charset): Expose externally.
13480
13481 * w32font.c: New file for w32 font backend.
13482
134832008-02-01 Kenichi Handa <handa@m17n.org>
13484
13485 * term.c: Don't include "buffer.h" twice.
13486
134872008-02-01 Kenichi Handa <handa@m17n.org>
13488
13489 * character.c (Funibyte_string): New function.
13490 (syms_of_character): Defsubr it.
13491
134922008-02-01 Jason Rumney <jasonr@gnu.org>
13493
13494 * w32term.c [USE_FONT_BACKEND]:
13495 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
13496 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
13497 (x_draw_glyph_string, x_draw_glyph_string_foreground)
13498 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
13499 (x_free_frame_resources): Sync with xterm.c.
13500
135012008-02-01 Andreas Schwab <schwab@suse.de>
13502
13503 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
13504 char-table size.
13505
135062008-02-01 Kenichi Handa <handa@m17n.org>
13507
13508 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
13509
135102008-02-01 Kenichi Handa <handa@m17n.org>
13511
13512 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
13513 font_otf_gpos, add font_drive_otf.
13514
13515 * fontset.c (fontset_find_font): Pay attention to font size
13516 specified for a font.
13517 (reorder_font_vector): Check contents of font_def.
13518
13519 * font.c (struct otf_list): Delete it.
13520 (otf_list): Make it a lisp variable.
13521 (otf_open): Use lispy otf_list.
13522 (generate_otf_features): Rename from parse_gsub_gpos_spec.
13523 (check_otf_features): New function.
13524 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
13525 New functions.
13526 (font_drive_otf): New function merging font_otf_gsub and
13527 font_otf_gpos.
13528 (font_open_for_lface): New arg spec. Change argument order.
13529 (font_load_for_face): Adjust for the change of font_open_for_lface.
13530 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
13531 Ffont_otf_gpos.
13532 (syms_of_font): Staticpro otf_list. Delete defsubr of
13533 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
13534
13535 * xfaces.c (set_font_frame_param): Adjust for the change of
13536 font_open_for_lface.
13537
13538 * font.h (font_open_for_lface): Adjust prototype.
13539 (struct font_driver): Delete members otf_gsub and otf_gpos, add
13540 member otf_drive.
13541 (font_otf_gsub, font_otf_gpos): Delete externs.
13542 (font_drive_otf): Extern it.
13543
135442008-02-01 Kenichi Handa <handa@m17n.org>
13545
13546 * font.c (font_at): If the window W is not on a window system,
13547 return Qnil.
13548
13549 * coding.c (produce_chars, encode_coding): Don't call
13550 insert_from_gap if no characters to produce.
13551
135522008-02-01 Kenichi Handa <handa@m17n.org>
13553
13554 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
13555 Fclear_face_cache.
13556
13557 * xfaces.c (face_for_font): Check also face->font==font->font.font.
13558
135592008-02-01 Miles Bader <miles@gnu.org>
13560
13561 * emacs.c (main): Change default value of `enable_font_backend' to 1.
13562 Parse "--disable-font-backend" option.
13563 (standard_args): Add "--disable-font-backend" option.
13564
135652008-02-01 Kenichi Handa <handa@m17n.org>
13566
13567 * fontset.c (fontset_find_font): New function.
13568 (fontset_font): Use fontset_find_font.
13569 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
13570 Register the specified font for all Latin characters.
13571 (new_fontset_from_font): Register the specified font for all Latin
13572 characters.
13573 (dump_fontset): For a realized fontset, include the base fontset
13574 name in the returned vector.
13575
135762008-02-01 Kenichi Handa <handa@m17n.org>
13577
13578 * character.h (CHAR_STRING): Cast C to unsigned on calling
13579 char_string.
13580
13581 * character.c (char_string): Type of arg C changed to unsigned.
13582 Signal an error if C is an invalid character code.
13583
13584 * editfns.c (general_insert_function, Fchar_to_string):
13585 Use CHARACTERP, not INTEGERP.
13586
135872008-02-01 Kenichi Handa <handa@m17n.org>
13588
13589 * character.h (MIN_MULTIBYTE_LEADING_CODE)
13590 (MAX_MULTIBYTE_LEADING_CODE): New macros.
13591
13592 * regex.c (analyse_first): Fix for multibyte characters in "case
13593 charset:" and "case categoryspec:".
13594
135952008-02-01 Andreas Schwab <schwab@suse.de>
13596
13597 * Makefile.in (LIBES): Move standard libraries to the end.
13598
135992008-02-01 Kenichi Handa <handa@m17n.org>
13600
13601 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
13602 nonzero, don't shrink the buffer nextb.
13603
13604 * buffer.h (struct buffer_text): New member inhibit_shrinking.
13605
13606 * coding.c (coding_alloc_by_making_gap): New arg offset.
13607 (alloc_destination): Call coding_alloc_by_making_gap with the arg
13608 offset.
13609 (decode_coding_iso_2022): Update coding->safe_charsets.
13610 (decode_coding_gap): Temporarily set
13611 current_buffer->text->inhibit_shrinking to 1.
13612
136132008-02-01 Kenichi Handa <handa@m17n.org>
13614
13615 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
13616 indexing into elements of s->cmp and s->char2b.
13617
136182008-02-01 Juanma Barranquero <lekktu@gmail.com>
13619
13620 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
13621
136222008-02-01 Kenichi Handa <handa@m17n.org>
13623
13624 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
13625 target_multibyte instead of multibyte.
13626 (re_match_2_internal): Call bcmp_translate with target_multibyte.
13627 (bcmp_translate): Change the argument name from multibyte to
13628 target_multibyte.
13629
136302008-02-01 Kenichi Handa <handa@m17n.org>
13631
13632 These changes are to compile a regexp into a pattern that can be
13633 used both for multibyte and unibyte targets.
13634
13635 * Makefile.in (search.o): Depend on charset.h.
13636
13637 * character.c (multibyte_char_to_unibyte_safe): New function.
13638
13639 * search.c: Include "charset.h".
13640 (compile_pattern_1): Delete argument multibyte. Don't set
13641 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
13642 (compile_pattern): Don't compare cp->buf.target_multibyte.
13643 Compare cp->buf.charset_unibyte.
13644 (compile_pattern): Set cp->buf.target_multibyte.
13645
13646 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
13647
13648 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
13649
13650 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
13651 multibyte. Change callers.
13652 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
13653 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
13654 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
13655 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
13656 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
13657 (regex_compile): Make the compiled pattern usable both for
13658 multibyte and unibyte targets.
13659 (analyse_first): Make the fastmap usable both for multibyte and
13660 unibyte targets.
13661 (TRANSLATE_VIA_MULTIBYTE): Delete.
13662 (re_match_2_internal): Pay attention to the case that the
13663 multibyteness of bufp and target may be different.
13664
136652008-02-01 Kenichi Handa <handa@m17n.org>
13666
13667 * xdisp.c (x_produce_glyphs): When a font is not found, make the
13668 empty box occupy at least one column width.
13669
136702008-02-01 Miles Bader <miles@gnu.org>
13671
13672 * Makefile.in: Remove redundant HAVE_XFT clause.
13673
136742008-02-01 Kenichi Handa <handa@m17n.org>
13675
13676 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
13677
136782008-02-01 Kenichi Handa <handa@m17n.org>
13679
13680 * fontset.c (Finternal_char_font): Fix for the case of POSITION
13681 being nil.
13682
136832008-02-01 Kenichi Handa <handa@m17n.org>
13684
13685 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
13686
136872008-02-01 Kenichi Handa <handa@m17n.org>
13688
13689 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
13690
136912008-02-01 Kenichi Handa <handa@m17n.org>
13692
13693 * search.c (simple_search): Fix previous change.
13694
136952008-02-01 Kenichi Handa <handa@m17n.org>
13696
13697 * xftfont.c (ftfont_font_format): Extern declaration.
13698
13699 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
13700
13701 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
13702 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
13703
13704 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
13705 (ftfont_font_format): Fix previous change.
13706
13707 * font.h (Ffont_xlfd_name): EXFUN it.
13708
13709 * font.c (font_parse_xlfd): Fix the array size of `f'.
13710 (register_font_driver): Use EQ to compare driver->type.
13711
13712 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
13713 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
13714 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
13715
137162008-02-01 Kenichi Handa <handa@m17n.org>
13717
13718 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
13719 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
13720
137212008-02-01 Kenichi Handa <handa@m17n.org>
13722
13723 * xfont.c (xfont_open): Set font->format.
13724
13725 * xftfont.c (xftfont_open): Set font->format.
13726
13727 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
13728 (ftfont_list): Include FC_FONTFORMAT in FcObject.
13729 (ftfont_open): Set font->format.
13730 (ftfont_font_format): New function.
13731
13732 * font.h (struct font): New member format.
13733
13734 * font.c (Qopentype): New variable.
13735 (syms_of_font): Defsym it.
13736 (Fquery_font): Change the format of the last element of the return
13737 value.
13738
137392008-02-01 Kenichi Handa <handa@m17n.org>
13740
13741 * xfns.c (xic_create_xfontset): Try the default fontset name as a
13742 last resort.
13743
137442008-02-01 Kenichi Handa <handa@m17n.org>
13745
13746 * coding.c (detect_coding_charset): Fix detection of multi-byte
13747 charset.
13748
137492008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
13750
13751 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
13752
137532008-02-01 Kenichi Handa <handa@m17n.org>
13754
13755 * xdisp.c (get_next_display_element): Set it->face_id for the
13756 first component of a composition.
13757 (x_produce_glyphs): Check if the font is changed or not for composition.
13758
137592008-02-01 Kenichi Handa <handa@m17n.org>
13760
13761 * fontset.c (Qlatin): New variable.
13762 (syms_of_fontset): Define it as a lisp symbol.
13763 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
13764
137652008-02-01 Kenichi Handa <handa@m17n.org>
13766
13767 * font.c (font_unparse_fcname): Pay attention to the case that
13768 some of font property is a null string.
13769
137702008-02-01 Kenichi Handa <handa@m17n.org>
13771
13772 * term.c: Include "composite.h".
13773 (encode_terminal_code): Output all components of composition.
13774 Check the size of encode_terminal_src.
13775 (produce_glyphs): For composition, call produce_composite_glyph.
13776 (append_composite_glyph, produce_composite_glyph): New functions.
13777
13778 * xdisp.c (x_produce_glyphs): In handling composition, if a font
13779 is not found, get font_info from the current ascii face.
13780
137812008-02-01 Kenichi Handa <handa@m17n.org>
13782
13783 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
13784 buffer-file-name to Qnil before calling insert_from_buffer.
13785
13786 * font.c (font_unparse_fcname): Pay attention to the case that
13787 foundry is a null string.
13788
137892008-02-01 Kenichi Handa <handa@m17n.org>
13790
13791 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
13792
13793 * font.c (Qunicode_sip): New variable.
13794 (syms_of_font): Declare it as a Lisp symbol.
13795
13796 * font.h (Qunicode_sip): Extern it.
13797
137982008-02-01 Kenichi Handa <handa@m17n.org>
13799
13800 * composite.c (get_composition_id): Pay attention to TAB component.
13801
13802 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
13803 TAB. Adjust for the change of s->char2b which always points to
13804 the first element of allocated memory.
13805
13806 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
13807
13808 * xdisp.c (handle_composition_prop): Set it->c to the first
13809 non-TAB component.
13810 (fill_composite_glyph_string): Change argument.
13811 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
13812 (x_produce_glyphs): Fix handling of left/right padding.
13813
138142008-02-01 Kenichi Handa <handa@m17n.org>
13815
13816 * coding.c (detect_coding_system): Fix for handling off
13817 inhibit_iso_escape_detection. Fix for the case that no coding
13818 system is defined for a specific coding category.
13819
138202008-02-01 Kenichi Handa <handa@m17n.org>
13821
13822 * font.c (font_matching_entity): Delete unused local var.
13823
13824 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
13825 opening a font.
13826
13827 * fileio.c (Finsert_file_contents): On recovering a file, assume
13828 Unix-like eol.
13829 (choose_write_coding_system): On auto-saving a file, force
13830 Unix-like eol.
13831
13832 * coding.c (setup_coding_system): Fix setting of
13833 coding->common_flags based on eol_type.
13834 (coding_inherit_eol_type): If PARENT is not nil, be sure to
13835 inherit from it.
13836
138372008-02-01 Kenichi Handa <handa@m17n.org>
13838
13839 * alloc.c (NSTATICS): Increas to 0x600.
13840
138412008-02-01 Kenichi Handa <handa@m17n.org>
13842
13843 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
13844 (ftfont_list): Don't check :name property.
13845 (ftfont_match): New function.
13846 (ftfont_pattern_entity): If the pattern doesn't contain
13847 FC_SPACING, don't assume FC_MONO.
13848
13849 * font.h (struct font_driver): New member `match'.
13850 (font_update_drivers): Adjust prototype.
13851
13852 * font.c (font_parse_fcname, font_parse_name): Don't change :name
13853 property of FONT.
13854 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
13855 them unconditionally.
13856 (font_matching_entity): New function.
13857 (font_open_by_name): Try font_matching_entity if exact match is
13858 not found.
13859 (font_update_drivers): Delete the arg FONT. Return a list of
13860 actually used backends. Don't free faces, font caches here.
13861 Don't store data in frame parameters. Don't call x_set_font.
13862 (Ffont_spec): Store :name property as is.
13863 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
13864 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
13865 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
13866 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
13867 Call font->driver->otf_gsub instead of font_otf_gsub.
13868
13869 * frame.c (x_set_font_backend): Do more works that were done in
13870 font_update_drivers before.
13871
13872 * xfont.c (xfont_match): New function.
13873 (xfont_driver): Set xfont_driver.match to xfont_match.
13874 (xfont_draw): Set font in GC if necessary.
13875
13876 * ftxfont.c (ftxfont_match): New function.
13877 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
13878
13879 * xftfont.c (xftfont_match): New function.
13880 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
13881
138822008-02-01 Kenichi Handa <handa@m17n.org>
13883
13884 * font.h (struct font): New member scalable.
13885 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
13886 (font_otf_gsub): Adjust prototype.
13887
13888 * font.c (font_otf_capability): Fix handling of the default langsys.
13889 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
13890 Check the contents of SPEC.
13891 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
13892 (check_gstring): New function.
13893 (REPLACEMENT_CHARACTER): New macro.
13894 (font_otf_gsub): New arg alternate_subst. Be sure to set all
13895 glyph codes of GSTRING.
13896 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
13897 (font_prepare_composition): Set cmp->glyph_len.
13898 (font_open_entity): Set font->scalable.
13899 (Ffont_get): Handle :otf property.
13900 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
13901 functions.
13902 (Fquery_font): Use font->font.full_name.
13903 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
13904 Sfont_otf_alternates.
13905
13906 * ftfont.c (ftfont_open): Set font->font.full_name and
13907 font->font.name properly. Fix calculation of font->font.height
13908 and font->min_width.
13909
13910 * ftxfont.c (ftxfont_create_gcs): New function.
13911 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
13912 (ftxfont_draw_backgrond): Fix filling region.
13913 (ftxfont_default_fid): New function.
13914 (ftxfont_open): Set xfont->fid to the return value of
13915 ftxfont_default_fid.
13916 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
13917 (ftxfont_done_face): Free only GCs that are created by
13918 ftxfont_create_gcs.
13919 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
13920
13921 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
13922 Clip to src->width, etc (not src->clip_XXX).
13923
13924 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
13925 FontBackend frame parameter.
13926
139272008-02-01 Kenichi Handa <handa@m17n.org>
13928
13929 * font.h (struct font_driver_list): New member `on'.
13930 (Fclear_font_cache): EXFUN it.
13931 (font_update_drivers): Extern it.
13932
13933 * font.c (font_unparse_fcname): Fix typo (swidth->width).
13934 (font_list_entities): Check driver_list->on.
13935 (register_font_driver): Initalize `on' member to 0.
13936 (font_update_drivers): New function.
13937 (Fclear_font_cache): Check driver_list->on.
13938
13939 * frame.h (Qfont_backend): Extern it.
13940 (x_set_font_backend): Extern it.
13941
13942 * frame.c (Qfont_backend): New variable.
13943 (frame_parms): New element for font-backend.
13944 (x_set_font_backend): New function.
13945
13946 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
13947 FontBackend frame parameter.
13948 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
13949 x_set_font_backend.
13950
13951 * xfont.c (xfont_list): Don't try listing by :name property if the
13952 name is not for XLFD.
13953
139542008-02-01 Kenichi Handa <handa@m17n.org>
13955
13956 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
13957 (LGLYPH_SET_TO): New macros.
13958 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
13959 element of G is vector or not.
13960 (font_at): Extern it.
13961
13962 * font.c: Include window.h.
13963 (font_lispy_object): New function.
13964 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
13965 end of valid glyph.
13966 (font_close_object): Fix getting (struct font *).
13967 (font_at): New function.
13968 (Ffont_get): If FONT is a font-object, get entity from it.
13969 (Ffont_make_gstring): Initialize elements of glyphs with nil.
13970 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
13971 range check.
13972 (Ffont_at): New function.
13973 (syms_of_font): Defsubr Sfont_at.
13974
13975 * xdisp.c (it_props): Move the entry for Qauto_composed to just
13976 before the entry for Qcomposition.
13977 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
13978 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
13979 the font in gstring.
13980 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
13981 LGLYPH_FORM (g) to detect the end of valid glyph.
13982 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
13983 we are composing with gstring.
13984
13985 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
13986 Check if adjustment is vector or not.
13987
13988 * Makefile.in (font.o): Make it depends on window.h.
13989
139902008-02-01 Kenichi Handa <handa@m17n.org>
13991
13992 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
13993 adjustment is vector or not.
13994
139952008-02-01 Miles Bader <miles@gnu.org>
13996
13997 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
13998
139992008-02-01 Kenichi Handa <handa@m17n.org>
14000
14001 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
14002 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
14003 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
14004
14005 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
14006 (DEVICE_DELTA): Fix typo.
14007 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
14008 LGLYPH format.
14009
14010 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
14011 the change of LGLYPH format.
14012
140132008-02-01 Kenichi Handa <handa@m17n.org>
14014
14015 * ftfont.c (ftfont_list): Fix typo.
14016 (ftfont_build_basic_charsets): Don't include letters with diacritics.
14017
140182008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14019
14020 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
14021
14022 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
14023 xftface_info is non-NULL.
14024
140252008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14026
14027 * ftfont.c (ftfont_list): Move misplaced #endif.
14028
140292008-02-01 Kenichi Handa <handa@m17n.org>
14030
14031 * ftfont.c (ftfont_list): Pay attention to the case that
14032 FC_CAPABILITY is not defined.
14033
140342008-02-01 Kenichi Handa <handa@m17n.org>
14035
14036 * xftfont.c (xftfont_open): Set charset related members to -1.
14037
14038 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
14039 QCname.
14040 (ftfont_open): Set charset related members to -1.
14041
14042 * fontset.c (Votf_script_alist): New variable.
14043 (syms_of_fontset): Initialize it.
14044 (fontset_font): Delete unused variable.
14045
14046 * fontset.h (Votf_script_alist): Extern it.
14047
14048 * font.c (font_find_for_lface): Optimize code.
14049
14050 * font.h (font_close_object, font_merge_old_spec): Extern them.
14051
140522008-02-01 Kenichi Handa <handa@m17n.org>
14053
14054 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
14055 (syms_of_font): Initialize them.
14056 (font_pixel_size): Allow float value in dpi.
14057 (font_prop_validate_type): Delete.
14058 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
14059 Change caller.
14060 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
14061 (font_prop_validate_extra): Delete.
14062 (font_prop_validate_spacing): New function.
14063 (font_property_table): Add elements for all known properties.
14064 (get_font_prop_index): Rename from check_font_prop_name. New
14065 argument FROM. Change caller.
14066 (font_prop_validate): Validate all known properties.
14067 (font_put_extra): Delete argument force. Change caller.
14068 (font_expand_wildcards): Make it static. Fix the way of shrinking
14069 the possible range.
14070 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
14071 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
14072 Change caller.
14073 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
14074 (font_parse_fcname): Delete argument merge. Fix parsing of point
14075 size. Don't validate properties values here. Change caller.
14076 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
14077 (font_open_by_name): Delete unused variable.
14078 (Ffont_spec): Likewise. Validate property values.
14079 (Ffont_match_p): New function.
14080
14081 * font.h (QCscalable): Extern it.
14082 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
14083
14084 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
14085
14086 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
14087 (xfont_list_pattern): New function.
14088 (xfont_list): Use xfont_list_pattern.
14089
140902008-02-01 Kenichi Handa <handa@m17n.org>
14091
14092 * font.h (Flist_fonts): EXFUN it.
14093
140942008-02-01 Jason Rumney <jasonr@gnu.org>
14095
14096 * w32term.c (w32_initialize): Add back smoothing_type and
14097 smoothing_enabled definitions.
14098
140992008-02-01 Kenichi Handa <handa@m17n.org>
14100
14101 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
14102 s->face->font on determining underline position.
14103
141042008-02-01 Kenichi Handa <handa@m17n.org>
14105
14106 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
14107 (font_has_char): Accept font-object too.
14108 (font_find_for_lface): Try at first with a size specified in face.
14109
141102008-02-01 Kenichi Handa <handa@m17n.org>
14111
14112 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
14113 font_open_by_name.
14114
141152008-02-01 Kenichi Handa <handa@m17n.org>
14116
14117 * font.h (QCspacing, QCdpi): Extern them.
14118 (enum font_spacing): New enum.
14119 (FONT_PIXEL_SIZE_QUANTUM): New macro.
14120
14121 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
14122 (QCspacing, QCdpi): New variables.
14123 (syms_of_font): Initialize them.
14124 (font_pixel_size): New function.
14125 (font_put_extra): New function.
14126 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
14127 in FONT_EXTRA.
14128 (font_parse_fcname): Handle enumerated values (e.g. bold).
14129 Fix handling font size. Add QCname property that contains only
14130 unknown properties.
14131 (font_score): Change argument. Change caller. Pay attention to
14132 FONT_PIXEL_SIZE_QUANTUM.
14133 (font_sort_entites, font_list_entities, font_find_for_lface)
14134 (font_open_for_lface, font_open_by_name): Fix handling of font size.
14135 (Ffont_spec): Add QCname property that contains only unknown properties.
14136
14137 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
14138 include weight in listing pattern, instead check weight of each
14139 listed font. Don't include scalable in pattern. Pay attention to
14140 FONT_PIXEL_SIZE_QUANTUM.
14141
141422008-02-01 Kenichi Handa <handa@m17n.org>
14143
14144 * font.c (font_parse_fcname): Fix parsing of point-size.
14145 (font_unparse_fcname): Produce symbolic names for style properties.
14146 (font_list_entities): Handle float size correctly.
14147 (font_open_by_name): Prefer `normal' property values if the name
14148 doesn't specify them.
14149
14150 * fontset.c (Finternal_char_font): Use font_get_name, not
14151 Ffont_xlfd_name.
14152
14153 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
14154 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
14155 pattern. Don't force scalable.
14156
14157 * xftfont.c (xftfont_open): For generating a name, start from
14158 96-byte buffer.
14159
141602008-02-01 Jan Djärv <jan.h.d@swipnet.se>
14161
14162 * frame.h (x_new_fontset2): Fix prototype.
14163
141642008-02-01 Kenichi Handa <handa@m17n.org>
14165
14166 * font.h (struct font_driver): Delete member parse_name.
14167 (font_match_p, font_get_spec, font_parse_fcname)
14168 (font_unparse_fcname): Extern them.
14169 (font_get_name): Adjust prototype.
14170
14171 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
14172 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
14173 (font_expand_wildcards): Fix handling ENCODING field. Avoid
14174 unnecessary checks for weight, slant, and swidth.
14175 (font_parse_fcname): New function.
14176 (font_unparse_fcname): New function.
14177 (font_parse_name): New function.
14178 (font_match_p): New function.
14179 (font_get_name): Change return value to Lisp string.
14180 (font_get_spec): New function.
14181 (Qunspecified, Qignore_defface): Don't extern them.
14182 (font_find_for_lface): Assume that LFACE is fully specified.
14183 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
14184 object, use it for FACE.
14185 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
14186 driver->parse_name.
14187 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
14188
14189 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
14190 prototype.
14191
14192 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
14193 argument F. Don't call Fnew_fontset. Instead, directly call
14194 make_fontset.
14195
14196 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
14197
14198 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
14199 of x_new_fontset2.
14200
14201 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
14202 (Qsans__serif): New variables.
14203 (ftfont_generic_family_list): New variable.
14204 (syms_of_ftfont): Initialize the above variables.
14205 (ftfont_pattern_entity): Delete argument NAME.
14206 (ftfont_list_generic_family): New function.
14207 (ftfont_parse_name): Delete this function.
14208 (ftfont_list): Try generic family only when FcFontList found no font.
14209 (ftfont_list_family): Fix args to FcObjectSetBuild.
14210
14211 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
14212 object in attrs[LFACE_FONT_INDEX].
14213 (set_lface_from_font_name): Cancel all changes for font-backend.
14214 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
14215 function.
14216 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
14217 font object in QCfont attribute.
14218 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
14219 (realize_default_face) [USE_FONT_BACKEND]: Call
14220 set_lface_from_font_and_fontset.
14221
14222 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
14223 "fixed", and signal error here if no suitable font was found.
14224
14225 * xfont.c (xfont_parse_name): Delete this function.
14226
14227 * xftfont.c (xftfont_open): Change coding style of error
14228 handling. Generate fontconfig's fontname pattern.
14229
14230 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
14231 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
14232
14233 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
14234 Both args FONTSET and FONT_OBJECT must be existing ones.
14235
142362008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14237
14238 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
14239
142402008-02-01 Kenichi Handa <handa@m17n.org>
14241
14242 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
14243
14244 * font.h (struct font): Fix typo.
14245
14246 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
14247 XLFD_XXX_INDEX.
14248 (enum xlfd_field_mask): New enum.
14249 (intern_font_field): Changed argument. Change caller. If digits
14250 are followed by non-digits, return a symbol.
14251 (font_expand_wildcards): New function.
14252 (font_parse_xlfd): Fix wildcard handling.
14253 (Ffont_spec): If :name is specified, reflect the info in the other
14254 properties.
14255
14256 * ftfont.c (ftfont_pattern_entity): Fix typo.
14257 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
14258 locale.
14259
142602008-02-01 Kenichi Handa <handa@m17n.org>
14261
14262 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
14263
14264 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
14265 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
14266 registry doesn't specify encoding part.
14267 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
14268 (font_open_by_name): At first try parsing the name.
14269 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
14270 as Lisp symbols.
14271
14272 * fontset.c (reorder_font_vector): Pay attention to the case that
14273 the 3rd element of font_def is nil.
14274 (fontset_font): For the default fontset, append one more fontset
14275 elements for a script-based font specification. Don't add script
14276 attribute on finding a font.
14277 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
14278 font name.
14279 (fontset_ascii_font): If a font can't be opened, return nil.
14280
14281 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
14282 (ftfont_pattern_entity): New function.
14283 (ftfont_get_cache): Assume that freetype_font_cache is already
14284 initialized.
14285 (ftfont_list): Handle the case that a file is specified in font
14286 name. Use ftfont_pattern_entity to generate entities.
14287 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
14288 (syms_of_ftfont): Initialize freetype_font_cache.
14289
14290 * xftfont.c (xftfont_open): Make the font name fontconfig's
14291 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
14292 (xftfont_close): Free font->font.name if not NULL.
14293
14294 * xfont.c (xfont_list): If script is specified for a font, return
14295 null_vector.
14296 (xfont_list_family): Declare argument type.
14297
14298 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
14299 name, set LFACE_FONT (lface) to nil.
14300
14301 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
14302 return Qnil.
14303
143042008-02-01 Kenichi Handa <handa@m17n.org>
14305
14306 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
14307 (standard_args): Add "-enable-font-backend".
14308
143092008-02-01 Kenichi Handa <handa@m17n.org>
14310
14311 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
14312 (struct xftdraw_list, xftdraw_list): Delete them.
14313 (register_xftdraw, check_xftdraw): Delete them.
14314 (xftfont_prepare_face): Don't call register_xftdraw.
14315 (xftfont_done_face): Don't call check_xftdraw.
14316 (xftfont_draw): Get background color only when with_background is
14317 nonzero.
14318
14319 * xfont.c (xfont_encode_char): Fix calculation of char2b.
14320
143212008-02-01 Kenichi Handa <handa@m17n.org>
14322
14323 These changes are for the new font handling codes.
14324
14325 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
14326 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
14327 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
14328 (FONTSRC, FONTOBJ): New variables.
14329 (obj): Add $(FONTOBJ).
14330 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
14331 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
14332 @LIBOTF_LIBS@.
14333 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
14334 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
14335
14336 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
14337
14338 * character.h (Vscript_representative_chars): Extern it.
14339
14340 * character.c (Vscript_representative_chars): New variable.
14341 (syms_of_character): Declare it as a Lisp variable.
14342
14343 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
14344 enable_font_backend is nonzero, accept the composition method
14345 COMPOSITION_WITH_GLYPH_STRING.
14346
14347 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
14348 enumeration COMPOSITION_WITH_GLYPH_STRING.
14349
14350 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
14351 members clip_x, clip_y, clip_width, and clip_height.
14352 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
14353
14354 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
14355 --enable-font-backend. Call syms_of_font.
14356
14357 * fns.c (assoc_no_quit): New function.
14358
14359 * fontset.h (FONT_INFO_FROM_FACE): New macro.
14360 (face_for_font, new_fontset_from_font)
14361 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
14362
14363 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
14364 (fontset_font, fontset_ascii, face_for_char)
14365 (make_fontset_for_ascii_face, Ffont_info)
14366 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
14367 is nonzero, use font-backend mechanism.
14368 (find_font_encoding): Make it non-static.
14369 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
14370 New functions.
14371
14372 * frame.h (struct frame): New members resx and resy.
14373 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
14374 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
14375
14376 * frame.c [USE_FONT_BACKEND]: Include "font.h".
14377 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
14378
14379 * lisp.h (assoc_no_quit): Extern it.
14380
14381 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
14382 Through out the file, use FONT_INFO_FROM_FACE instead of
14383 FONT_INFO_FROM_ID, use get_per_char_metric instead of
14384 rif->per_char_metric.
14385 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
14386 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
14387 (get_glyph_face_and_encoding, fill_composite_glyph_string)
14388 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
14389 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
14390 nonzero, use font-backend mechanism.
14391 (get_per_char_metric): New function.
14392
14393 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
14394 (set_lface_from_font_name)
14395 (set_font_frame_param, free_realized_face)
14396 (prepare_face_for_display, clear_face_gcs)
14397 (Finternal_set_font_selection_order, realize_x_face)
14398 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
14399 font-backend mechanism.
14400 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
14401 (load_face_font) [USE_FONT_BACKEND]: Abort.
14402 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
14403 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
14404
14405 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
14406 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
14407 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
14408 nonzero, register all available font drivers. Call
14409 x_default_font_parameter for deciding a font.
14410 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
14411
14412 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
14413 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
14414 (x_set_glyph_string_clipping_exactly)
14415 (x_compute_glyph_string_overhangs)
14416 (x_draw_glyph_string_foreground)
14417 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
14418 (x_free_frame_resources) [USE_FONT_BACKEND]: If
14419 enable_font_backend is nonzero, use font-backend mechanism.
14420 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
14421
144222008-02-01 Kenichi Handa <handa@m17n.org>
14423
14424 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
14425 system_eol_type.
14426 (syms_of_coding): Initialize system_eol_type.
14427
14428 * process.c (Fset_process_coding_system): Inherit system's eol
14429 format if necessary.
14430
144312008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14432
14433 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
14434
144352008-02-01 Kenichi Handa <handa@m17n.org>
14436
14437 * coding.c (decode_eol): Pay attention to buffer relocation in
14438 del_range_2.
14439 (decode_coding): Call decode_eol before restoring undo_list.
14440
144412008-02-01 Kenichi Handa <handa@m17n.org>
14442
14443 * charset.c (Fdefine_charset_internal): Fix setting of
14444 emacs_mule_bytes.
14445
144462008-02-01 Kenichi Handa <handa@m17n.org>
14447
14448 * keyboard.c (read_char): Check if C is a character or not before
14449 looking up Vkeyboard_translate_table.
14450
144512008-02-01 Kenichi Handa <handa@m17n.org>
14452
14453 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
14454 condition to terminate the loop.
14455
144562008-02-01 Kenichi Handa <handa@m17n.org>
14457
14458 * coding.c (produce_composition): Compare charbuf[i] instead of
14459 args[i] against 0.
14460 (Fterminal_coding_system): Use EQ to compare Lisp objects.
14461
144622008-02-01 Kenichi Handa <handa@m17n.org>
14463
14464 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
14465 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
14466 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
14467 detect_coding.
14468 (emacs_mule_char): Handle old style (Emacs 20) component character
14469 of a composition.
14470 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
14471 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
14472 composition rule.
14473 (decode_coding_emacs_mule): Handle invalid bytes correctly.
14474
144752008-02-01 Kenichi Handa <handa@m17n.org>
14476
14477 * coding.c (encode_coding_ccl): Allocate destination dynamically
14478 when necessary.
14479
144802008-02-01 Kenichi Handa <handa@m17n.org>
14481
14482 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
14483 the loop. When quitted, show a proper error message.
14484
144852008-02-01 Kenichi Handa <handa@m17n.org>
14486
14487 * xterm.c (x_set_glyph_string_clipping_exactly): Set
14488 src->clip_head and src->clip_tail temporarily instead of src->hl.
14489
14490 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
14491 character sequence.
14492 (Fccl_execute_on_string): Use ASET, not XSET.
14493
144942008-02-01 Kenichi Handa <handa@m17n.org>
14495
14496 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
14497
144982008-02-01 Kenichi Handa <handa@m17n.org>
14499
14500 * coding.c (decode_coding): Fix the condition of terminating the
14501 decoding loop.
14502
145032008-02-01 Kenichi Handa <handa@m17n.org>
14504
14505 * data.c (Faset): On setting a character bigger than 255 in a
14506 unibyte string, signal an error instead of make the string multibyte.
14507
145082008-02-01 Kenichi Handa <handa@m17n.org>
14509
14510 * charset.c (map_charset_chars): Fix for ascii-compatible charset
14511 made by a mapping table.
14512
145132008-02-01 Kenichi Handa <handa@m17n.org>
14514
14515 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
14516 not.
14517 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
14518 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
14519
14520 * xterm.c (x_draw_composite_glyph_string_foreground): Check
14521 s->face is NULL or not.
14522
145232008-02-01 Kenichi Handa <handa@m17n.org>
14524
14525 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
14526 (x_draw_glyph_string): Fix drawing of right_overhang and
14527 left_overhang around/on cursor.
14528
14529 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
14530
145312008-02-01 Kenichi Handa <handa@m17n.org>
14532
14533 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
14534
145352008-02-01 Kenichi Handa <handa@m17n.org>
14536
14537 * coding.c (Fdefine_coding_system_internal)
14538 (Fdefine_coding_system_alias): Avoid a duplicated element in
14539 Vcoding_system_alist.
14540
145412008-02-01 Kenichi Handa <handa@m17n.org>
14542
14543 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
14544
14545 * coding.c (Qcoding_system_define_form): New variable.
14546 (syms_of_coding): Intern and staticpro it.
14547 (Fcoding_system_p): Check Qcoding_system_define_form.
14548 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
14549
14550 * coding.h (CODING_SYSTEM_P): If ID is not available, call
14551 Fcoding_system_p.
14552 (CHECK_CODING_SYSTEM): If ID is not available, call
14553 Fcheck_coding_system.
14554 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
14555 Try also Fcheck_coding_system.
14556
145572008-02-01 Kenichi Handa <handa@m17n.org>
14558
14559 * coding.c (code_conversion_restore): GCPRO arg.
14560
145612008-02-01 Kenichi Handa <handa@m17n.org>
14562
14563 * character.c (lisp_string_width): Check multibyteness of STRING.
14564
145652008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14566
14567 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
14568 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
14569 (decode_mac_font_name): Use decode_coding_c_string instead of
14570 decode_coding.
14571 (x_load_font): Initialize fontp->fontset to -1. Set
14572 fontp->encoding_type.
14573
145742008-02-01 Kenichi Handa <handa@m17n.org>
14575
14576 * search.c (search_buffer): Give up BM search on case-fold-search
14577 if one of a target character has a case-equivalence of different
14578 byte length even if that target charcter is an ASCII.
14579 (simple_search): Fix calculation of byte length of matched text.
14580 (boyer_moore): Fix handling of case-equivalent multibyte characters.
14581
145822008-02-01 Kenichi Handa <handa@m17n.org>
14583
14584 * coding.c (decode_coding): Fix handling of invalid bytes.
14585
145862008-02-01 Kenichi Handa <handa@m17n.org>
14587
14588 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
14589 Unicode characters.
14590
145912008-02-01 Kenichi Handa <handa@m17n.org>
14592
14593 * coding.c (encode_coding_object): If a pre-write-conversion
14594 function makes a new buffer, kill it.
14595
145962008-02-01 Kenichi Handa <handa@m17n.org>
14597
14598 * coding.c (QCascii_compatible_p): New variable.
14599 (syms_of_coding): Initialize it.
14600 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
14601 calling string_char.
14602 (record_conversion_result): Add `default:' case.
14603 (coding_charset_list): Delete unused variable `coding_type'.
14604 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
14605 property in the plist of the coding system.
14606 (Fcoding_system_put): Check QCascii_compatible_p.
14607
146082008-02-01 Miles Bader <miles@gnu.org>
14609
14610 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
14611 removed calculation of frame `f', as it's now used.
14612
146132008-02-01 Kenichi Handa <handa@m17n.org>
14614
14615 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
14616 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
14617 (UNIDATA): New variable.
14618 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
14619 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
14620 $(RUN_TEMACS) unconditionally.
14621
146222008-02-01 Kenichi Handa <handa@m17n.org>
14623
14624 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
14625 (admindir): New variable.
14626 ($(lispsource)international/charprop.el): New target.
14627
146282008-02-01 Miles Bader <miles@gnu.org>
14629
14630 * character.c (chars-in-region): Remove obsolete function.
14631 (syms_of_character): Remove its initialization.
14632
146332008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
14634
14635 * w32select.c (validate_coding_system)
14636 (setup_windows_coding_system): New functions.
14637 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
14638 setup_windows_coding_system.
14639 (setup_config, Fw32_get_clipboard_data): Use
14640 validate_coding_system.
14641 (Fx_selection_exists): Move call to setup_config to a place
14642 where signals are allowed.
14643
14644 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
14645 (Fcheck_coding_system): Add declarations.
14646
146472008-02-01 Kenichi Handa <handa@m17n.org>
14648
14649 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
14650
146512008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14652
14653 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
14654 string as the second argument for x_new_fontset.
14655
146562008-02-01 Kenichi Handa <handa@m17n.org>
14657
14658 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
14659 (encode_coding_object): Use safe_call instead of call2.
14660
146612008-02-01 Kenichi Handa <handa@m17n.org>
14662
14663 * fontset.c (Fset_fontset_font): Check family element of a given vector.
14664
14665 * Makefile.in (lisp): Include charprop.el.
14666
146672008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14668
14669 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
14670 Not sure if it's unnecessary.
14671
146722008-02-01 Steven Tamm <steventamm@mac.com>
14673
14674 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
14675 some possibly unnecessary fontset checking code that crashed
14676 when creating a new frame.
14677
146782008-02-01 Kenichi Handa <handa@m17n.org>
14679
14680 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
14681 lookup_face.
14682
14683 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
14684
14685 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
14686
146872008-02-01 Kenichi Handa <handa@m17n.org>
14688
14689 * coding.c: Cancel the change done in HEAD on 2008-02-01.
14690 (coding_charset_list): New function.
14691
14692 * coding.h (coding_charset_list): Extern it.
14693
146942008-02-01 Kenichi Handa <handa@m17n.org>
14695
14696 * fontset.c (Fset_fontset_font): Call find_font_encoding with
14697 concatenation of family and registry.
14698
146992008-02-01 Kenichi Handa <handa@m17n.org>
14700
14701 * character.h (BYTE8_STRING): Fix typo.
14702
14703 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
14704 string to multibyte (sync to HEAD).
14705
14706 * casefiddle.c (casify_region): Handle changes in byte-length
14707 using replace_range_2 (sync to HEAD).
14708
147092008-02-01 Andreas Schwab <schwab@suse.de>
14710
14711 * chartab.c (map_char_table): GCPRO table and arg.
14712
147132008-02-01 Kenichi Handa <handa@m17n.org>
14714
14715 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
14716 already at limit.
14717
147182008-02-01 Kenichi Handa <handa@m17n.org>
14719
14720 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
14721 instead of fast_c_string_match_ignore_case.
14722 (find_font_encoding): Change argument to Lisp_Object. Use
14723 fast_string_match_ignore_case instead of
14724 fast_c_string_match_ignore_case. Change caller.
14725
147262008-02-01 Kenichi Handa <handa@m17n.org>
14727
14728 * xdisp.c (get_next_display_element): In unibyte case, decide to
14729 display in octal form by checking a character by
14730 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
14731
14732 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
14733
14734 * character.c (unibyte_has_multibyte_table): New variable.
14735
14736 * character.h (unibyte_has_multibyte_table): Extern it.
14737 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
14738
147392008-02-01 Kenichi Handa <handa@m17n.org>
14740
14741 * coding.c (encode_coding_iso_2022): Fix handling of charset
14742 annotation.
14743
147442008-02-01 Kenichi Handa <handa@m17n.org>
14745
14746 * coding.c (setup_coding_system): If coding_system is nil, use
14747 Qundecided.
14748 (Fterminal_coding_system): Return nil if terminal coding system is
14749 `undecided'.
14750 (syms_of_coding): Define coding-system `undecided' here. Setup
14751 terminal_coding as `undecided'.
14752
147532008-02-01 Kenichi Handa <handa@m17n.org>
14754
14755 * xdisp.c (message_dolog, set_message_1): Call
14756 unibyte_char_to_multibyte with arg type int.
14757
14758 * lread.c (read1): Fix reading of a char-table.
14759
14760 * print.c (print_object): Include sub char-table in circularities
14761 detection.
14762
147632008-02-01 Kenichi Handa <handa@m17n.org>
14764
14765 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
14766 Append the found sequences in car of ARGS instead of prepending.
14767
147682008-02-01 Kenichi Handa <handa@m17n.org>
14769
14770 * fileio.c (report_file_error): Make a unibyte string from
14771 strerror (errorno).
14772 (Fsubstitute_in_file_name): Fix the arg to
14773 unibyte_char_to_multibyte. It is evaluated twice.
14774
147752008-02-01 Kenichi Handa <handa@m17n.org>
14776
14777 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
14778
147792008-02-01 Kenichi Handa <handa@m17n.org>
14780
14781 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
14782 BOM is not found.
14783 (detect_coding, detect_coding_system): Optimization for ISO-2022
14784 when no 8-bit data is found.
14785
147862008-02-01 Jason Rumney <jasonr@gnu.org>
14787
14788 * w32fns.c (x_to_w32_font): Update to use new coding struct.
14789
147902008-02-01 Kenichi Handa <handa@m17n.org>
14791
14792 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
14793 CHARS.
14794
147952008-02-01 Steven Tamm <steventamm@mac.com>
14796
14797 * macterm.c (mac_encode_char): Add charset argument and update
14798 to use encoding_type.
14799 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
14800 switch to pure fontset.
14801 (decode_mac_font_name): Temporarily remove decoding.
14802 (x_font_name_to_mac_font_name): Temporarily remove encoding.
14803 (x_load_font): Temporarily remove encoding.
14804
148052008-02-01 Kenichi Handa <handa@m17n.org>
14806
14807 * xfaces.c (Fface_font): If frame is not on a window system,
14808 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
14809 refer to face->font.
14810 (split_font_name_into_vector, build_font_name_from_vector)
14811 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
14812 when HAVE_WINDOW_SYSTEM is defined.
14813
148142008-02-01 Kenichi Handa <handa@m17n.org>
14815
14816 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
14817 (x_produce_glyphs): Fix setting of members of cmp in case
14818 cmp->glyph_len is zero.
14819
14820 * fontset.c (Fset_fontset_font): Fix docstring.
14821 (Ffontset_info): Make it backward compatible. New arg ALL.
14822
148232008-02-01 Kim F. Storm <storm@cua.dk>
14824
14825 * process.c (read_process_output): Grow decoding_buf when needed;
14826 this could cause a crash in allocate_string and compact_small_strings.
14827
148282008-02-01 Kenichi Handa <handa@m17n.org>
14829
14830 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
14831
148322008-02-01 Kenichi Handa <handa@m17n.org>
14833
14834 * coding.c (setup_coding_system): Set coding->common_flags
14835 correctly for raw-text.
14836 (consume_chars): On encoding unibyte text by raw-text, don't check
14837 multibyte form.
14838 (encode_coding): On encoding by raw-text, never use translation tables.
14839
14840 * fileio.c (e_write): Short cut for the case of no encoding.
14841
148422008-02-01 Kenichi Handa <handa@m17n.org>
14843
14844 * coding.c (detect_coding, detect_coding_system): Delete unused
14845 variables.
14846
148472008-02-01 Kenichi Handa <handa@m17n.org>
14848
14849 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
14850 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
14851
148522008-02-01 Kenichi Handa <handa@m17n.org>
14853
14854 * coding.c (Ffind_coding_systems_region_internal): Include
14855 raw-text and no-conversion in the result.
14856
148572008-02-01 Kenichi Handa <handa@m17n.org>
14858
14859 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
14860 (load_font_get_repertory): Delete unnecessary check of ENCODING of
14861 FONT_DEF.
14862 (font_def_arg, add_arg, from_arg, to_arg): New args.
14863 (set_fontset_font): Change argument.
14864 (Fset_fontset_font): Fix for the case that TARGET is a script
14865 name and charset name.
14866 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
14867
148682008-02-01 Kenichi Handa <handa@m17n.org>
14869
14870 * fontset.c (fontset_font): Rename from fontset_face. Change return
14871 value.
14872 (face_suitable_for_char_p, face_for_char): Adjust for the change
14873 of fontset_font.
14874 (make_fontset_for_ascii_face): Fix setting of the fontset element
14875 for ASCII.
14876 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
14877 to get a font name.
14878 (Ffontset_info): Adjust for the change of fontset_font.
14879
14880 * coding.c (emacs_mule_char): Check invalid code more rigidly.
14881
14882 * character.h (LEADING_CODE_LATIN_1_MIN)
14883 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
14884
148852008-02-01 Kenichi Handa <handa@m17n.org>
14886
14887 * editfns.c (check_translation): New function.
14888 (Ftranslate_region_internal): Handle M:N mapping.
14889
148902008-02-01 Kenichi Handa <handa@m17n.org>
14891
14892 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
14893
148942008-02-01 Kenichi Handa <handa@m17n.org>
14895
14896 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
14897 goto invalid_code.
14898 (decode_coding_iso_2022): Fix handling of invalid designation.
14899
14900 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
14901 after calling code_conversion_save.
14902
149032008-02-01 Kenichi Handa <handa@m17n.org>
14904
14905 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
14906
14907 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
14908
14909 * fontset.c: Include "intervals.h".
14910 (fontset_face): Fix comparing of Lisp_Objects.
14911 (free_face_fontset, new_fontset_from_font_name): Fix
14912 Lisp_Object/int mixup.
14913
14914 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
14915
14916 * coding.c: Add many prototypes for static functions.
14917 (get_translation_table): Allow max_lookup to be NULL.
14918 (decode_coding, Ffind_coding_systems_region_internal)
14919 (Funencodable_char_position, Fcheck_coding_systems_region): Call
14920 get_translation_table with max_lookup NULL.
14921
149222008-02-01 Kenichi Handa <handa@m17n.org>
14923
14924 * coding.c (get_translation_table): Declare it as Lisp_Object.
14925 (LOOKUP_TRANSLATION_TABLE): New macro.
14926 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
14927 instead of CHAR_TABLE_REF.
14928
149292008-02-01 Kenichi Handa <handa@m17n.org>
14930
14931 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
14932 annotation data format.
14933 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
14934 Change arguments FROM and TO to single argument NCHARS. Change caller.
14935 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
14936 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14937 (decode_coding_ccl, decode_coding_charset): Pay attention to
14938 coding->charbuf_used.
14939 (get_translation): New function.
14940 (produce_chars): New arguments translation_table and last_block.
14941 Translate characters here. Return number of carryover chars.
14942 Change caller.
14943 (produce_composition): New argument pos. Change caller.
14944 Adjust for the change of annotation data format.
14945 (produce_charset, produce_annotation): Likewise.
14946 (decode_coding, encode_coding): Don't call translate_chars.
14947 (consume_chars): New arg translation_table. Change caller.
14948 (translate_chars): Delete.
14949 (syms_of_coding): Make translation-table's number of extra slots 2.
14950
149512008-02-01 Kenichi Handa <handa@m17n.org>
14952
14953 * search.c (simple_search): Fix setting this_pos_byte in backward
14954 search.
14955
14956 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
14957 byte sequence.
14958 (detect_coding_ccl): Fix setting of the variable valids.
14959
149602008-02-01 Kenichi Handa <handa@m17n.org>
14961
14962 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
14963
14964 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
14965
14966 * editfns.c (Ftranslate_region_internal): Rename from
14967 Ftranslate_region. Accept a char-table in TABLE.
14968 (syms_of_editfns): Defsubr Stranslate_region_internal.
14969
14970 * xfaces.c (set_lface_from_font_name): If a font is specified for
14971 a frame, generate a fontset from the font.
14972 (build_scalable_font_name): If the scalable font is requested for
14973 a specific size, don't change that size.
14974 (try_font_list): Try a scalable font also in the case that a
14975 pattern string is specified.
14976
149772008-02-01 Kenichi Handa <handa@m17n.org>
14978
14979 * xfaces.c (Fface_font): New optional arg CHARACTER.
14980
149812008-02-01 Kenichi Handa <handa@m17n.org>
14982
14983 * charset.h (CHARSET_OFFSET): New macro.
14984
149852008-02-01 Kenichi Handa <handa@m17n.org>
14986
14987 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
14988
14989 * fontset.c (fontset_face): Handle the case that repertory is a
14990 char-table.
14991 (find_font_encoding): Return nil for unknown encoding.
14992 (Fset_fontset_font): Ignore a font of unknown encoding.
14993
149942008-02-01 Kenichi Handa <handa@m17n.org>
14995
14996 * keymap.c (describe_vector): Handle default value of a char table.
14997
14998 * fontset.c (fontset_face): Handle fallback fonts correctly.
14999 (Ffontset_info): Return infomation about fallback fonts.
15000
150012008-02-01 Kenichi Handa <handa@m17n.org>
15002
15003 * fontset.c (FONTSET_DEFAULT): New macro.
15004 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
15005 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
15006 the case that it is nil.
15007 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
15008 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
15009
15010 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
15011 subset or superset.
15012
150132008-02-01 Kenichi Handa <handa@m17n.org>
15014
15015 * emacs.c (main): Call init_charset after syms_of_XXX.
15016
15017 * charset.c (Vcharset_map_directory): Delete.
15018 (Vcharset_map_path): New variable.
15019 (load_charset_map_from_file): Use Vcharset_map_path instead.
15020 (init_charset): Initialize Vcharset_map_path.
15021 (syms_of_charset): Delete declaration of "charset-map-directory",
15022 add declaration of "charset-map-path".
15023
150242008-02-01 Kenichi Handa <handa@m17n.org>
15025
15026 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
15027 ASCII only string.
15028
15029 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
15030
15031 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
15032 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
15033
150342008-02-01 Kenichi Handa <handa@m17n.org>
15035
15036 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
15037
15038 * coding.c (QCmnemonic, QCdefalut_char)
15039 (QCdecode_translation_table, QCencode_translation_table)
15040 (QCpost_read_conversion, QCpre_write_conversion): New variables.
15041 (get_translation_table): Return a list of translation tables if
15042 necessary.
15043 (decode_coding): Call get_translation_table with ENCODEP 0.
15044 (char_encodable_p): If translation_table is non-nil, always call
15045 translate_char.
15046 (Fdefine_coding_system_internal): Accept list of translation
15047 tables as :encode-translation-table and :decode-translation-table.
15048 (Fcoding_system_put): New function.
15049 (syms_of_coding): Declare new symbols. Defsubr
15050 Scoding_system_put.
15051 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
15052 typically JISX0212.
15053
15054 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
15055 when the charset is superset type.
15056
15057 * character.c (translate_char): Accept list of translation tables.
15058
150592008-02-01 Kenichi Handa <handa@m17n.org>
15060
15061 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
15062 (CODING_ATTR_TRANS_TBL): New macro.
15063
15064 * coding.c (get_translation_table): New function.
15065 (translate_chars): Fix the bug of skipping annotation data.
15066 (decode_coding, encode_coding): Utilize get_translation_table.
15067 (char_encodable_p, Funencodable_char_position): Translate char if
15068 necessary.
15069 (Ffind_coding_systems_region_internal)
15070 (Fcheck_coding_systems_region): Setup translation table for encode
15071 in a coding system attribute vector in advance.
15072 (Fdefine_coding_system_internal): Allow a symbol as translation
15073 table. For shift-jis type coding system, allow 4th charset.
15074
150752008-02-01 Kenichi Handa <handa@m17n.org>
15076
15077 * coding.c (decode_coding_sjis): Check the first byte rigidly.
15078
15079 * xdisp.c (get_next_display_element): Pass -1 as POS to
15080 FACE_FOR_CHAR if displaying a C-string.
15081
150822008-02-01 Kenichi Handa <handa@m17n.org>
15083
15084 * composite.c (get_composition_id): Handle xoff and yoff in a
15085 composition rule.
15086
15087 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
15088 (struct composition): New member lbearing and rbearing.
15089
15090 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
15091 (x_get_glyph_overhangs): Handle a composition glyph.
15092 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
15093
15094 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
15095 composition glyph.
15096
150972008-02-01 Kenichi Handa <handa@m17n.org>
15098
15099 * print.c: Include charset.h.
15100 (Vprint_charset_text_property): New variable.
15101 (Qdefault): Extern it.
15102 (PRINT_STRING_NON_CHARSET_FOUND)
15103 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
15104 (print_check_string_result): New variable.
15105 (print_check_string_charset_prop): New function.
15106 (print_prune_charset_plist): New variable.
15107 (print_prune_string_charset): New function.
15108 (print_object): Call print_prune_string_charset if
15109 Vprint_charset_text_property is not t.
15110 (print_interval): Print nothing if interval->plist is nil.
15111 (syms_of_print): Declare Vprint_charset_text_property as a lisp
15112 variable. Init and staticpro print_prune_charset_plist.
15113
151142008-02-01 Kenichi Handa <handa@m17n.org>
15115
15116 * fontset.c (new_fontset_from_font_name): Use the specified font
15117 for all characters in the new fontset.
15118
15119 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15120 OBJECT args.
15121
15122 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
15123 OBJECT args for composition too.
15124
15125 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
15126 OBJECT args.
15127
151282008-02-01 Kenichi Handa <handa@m17n.org>
15129
15130 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
15131
15132 * fontset.c (reorder_font_vector): Adjust for the change of
15133 FONT_DEF format.
15134 (fontset_face): New arg id. Change caller.
15135 (face_for_char): New args pos and object.
15136 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
15137 (fs_query_fontset): Check NAME by Fassoc too.
15138 (Fset_fontset_font): Allow non-XLFD font name.
15139 (Ffontset_info): Adjust for the change of FONT_DEF format.
15140
15141 * fontset.h (face_for_char): Adjust prototype.
15142
15143 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
15144 (append_space, extend_face_to_end_of_line)
15145 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
15146 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
15147
15148 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
15149 POS and OBJECT args.
15150
15151 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
15152 POS and OBJECT args.
15153
151542008-02-01 Jason Rumney <jasonr@gnu.org>
15155
15156 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
15157 of GlobalAlloc'ed memory.
15158
151592008-02-01 Kenichi Handa <handa@m17n.org>
15160
15161 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
15162
15163 * charset.h (charset_table_used): Delete extern.
15164
15165 * charset.c (charset_table_used): Make it static.
15166 (map_charset_chars): Fix args to c_function with.
15167
15168 * chartab.c (map_sub_char_table_for_charset): Fix args to
15169 c_function with.
15170
15171 * coding.h (enum coding_result_code): Delete
15172 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
15173
15174 * coding.c (Qinsufficient_source, Qinconsistent_eol)
15175 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
15176 (Vlast_code_conversion_error): New variables.
15177 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
15178 (ONE_MORE_BYTE): Record error if any instead of signaling an
15179 error. If non-ASCII multibyte char is found, return the negative
15180 value of the code. All callers changed to check it.
15181 (ONE_MORE_BYTE_NO_CHECK): Likewise.
15182 (record_conversion_result): New function. Change all codes setting
15183 coding->result to call this function.
15184 (detect_coding_utf_8, decode_coding_utf_8)
15185 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
15186 Don't use the local variable incomplete.
15187 (emacs_mule_char): Change the second arg to `const'.
15188 (decode_coding): Fix of flushing out unprocessed data.
15189 (make_conversion_work_buffer): Fix making of a work buffer.
15190 (decode_coding_object): Return coding->dst_object.
15191
15192 * fontset.c (set_fontset_font): Fix args.
15193
15194 * lisp.h (CHARACTERBITS): Define as 22.
15195
15196 * process.c (send_process): Be sure to set coding->src_multibyte.
15197
15198 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
15199
152002008-02-01 Kenichi Handa <handa@m17n.org>
15201
15202 * xdisp.c (handle_auto_composed_prop): Give limit to
15203 Fnext_single_char_property_change.
15204
152052008-02-01 Kenichi Handa <handa@m17n.org>
15206
15207 * composite.c (syms_of_composite): Don't make the composition hash
15208 table weak.
15209
15210 * fontset.c (Fset_fontset_font): Fix docstring.
15211
15212 * lisp.h (detect_coding_system): Adjust prototype.
15213
15214 * fileio.c (kill_workbuf_unwind): Delete this function.
15215 (Finsert_file_contents): Adjust the call of detect_coding_system.
15216 Get conversion_buffer by code_conversion_save. Use the macro
15217 CODING_MAY_REQUIRE_DECODING. After decoding, update
15218 coding_system.
15219
15220 * coding.h (make_conversion_work_buffer): Delete extern.
15221 (code_conversion_save): Extern it.
15222
15223 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
15224 (CODING_GET_INFO): Delete argument eol_type. Change callers.
15225 (decode_coding_utf_8): Don't do eol converion.
15226 (detect_coding_utf_16): Check coding->src_chars, not
15227 coding->src_bytes. Add heuristics for those that have no signature.
15228 (decode_coding_emacs_mule, decode_coding_iso_2022)
15229 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15230 Don't do eol converion.
15231 (adjust_coding_eol_type): Return a new coding system.
15232 (detect_coding): Don't detect eol. Fix for utf-16 detection.
15233 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
15234 each change.
15235 (decode_coding): Pay attention to undo_list. Do eol conversion for
15236 all types of coding-systems (if necessary).
15237 (Vcode_conversion_work_buf_list): Delete it.
15238 (Vcode_conversion_reused_workbuf): Rename from
15239 Vcode_conversion_reused_work_buf.
15240 (Vcode_conversion_workbuf_name): New variable.
15241 (reused_workbuf_in_use): New variable.
15242 (make_conversion_work_buffer): Delete the arg DEPTH.
15243 (code_conversion_restore): Change argument to cons.
15244 (code_conversion_save): Delete the argument BUFFER. Change callers.
15245 (detect_coding_system): New argument src_chars. Change callers.
15246 Fix for utf-16 detection.
15247 (init_coding_once): Don't use ISO_carriage_return.
15248 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
15249 reused_workbuf_in_use.
15250
152512008-02-01 Kenichi Handa <handa@m17n.org>
15252
15253 * keymap.c (store_in_keymap): Pay attention to the case that idx
15254 is a cons specifying a character range.
15255
152562008-02-01 Kenichi Handa <handa@m17n.org>
15257
15258 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
15259 HANDLED_RECOMPUTE_PROPS.
15260
15261 * coding.c (Fdefine_coding_system_internal): Fix checking of
15262 ascii compatibility.
15263
152642008-02-01 Kenichi Handa <handa@m17n.org>
15265
15266 * charset.c (find_charsets_in_text): Delete unused locale variable.
15267 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
15268
15269 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
15270 Resync charset_list to Vemacs_mule_charset_list.
15271
15272 * keymap.c (store_in_keymap): Pay attention to the case that idx
15273 is a cons specifying a character range.
15274
152752008-02-01 Kenichi Handa <handa@m17n.org>
15276
15277 * composite.c (update_compositions): Bind inhibit-read-only, etc
15278 to t before calling remove-list-of-text-properties.
15279
15280 * print.c (print_object): Always print ASCII chars as is.
15281
152822008-02-01 Kenichi Handa <handa@m17n.org>
15283
15284 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
15285
15286 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
15287 is a char table.
15288
152892008-02-01 Kenichi Handa <handa@m17n.org>
15290
15291 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
15292
152932008-02-01 Kenichi Handa <handa@m17n.org>
15294
15295 * xfaces.c (set_lface_from_font_name): Fix for the case that
15296 FONTNAME is not fontset name.
15297
152982008-02-01 Kenichi Handa <handa@m17n.org>
15299
15300 * fns.c (base64_encode_1): Fix previous change.
15301
153022008-02-01 Kenichi Handa <handa@m17n.org>
15303
15304 * fontset.c (set_fontset_font): New function.
15305 (Fset_fontset_font): If a font is specified for a charset, use
15306 map_charset_chars to store the font spec in a fontset.
15307
153082008-02-01 Kenichi Handa <handa@m17n.org>
15309
15310 * fontset.c (fontset_face): Create a fallback fontset on demand.
15311 (make_fontset): Don't create a fallback fontset here.
15312 (free_face_fontset): Free a fallback fontset (if any) too.
15313 (n_auto_fontsets): Delete this variable.
15314 (auto_fontset_alist): New variable.
15315 (new_fontset_from_font_name): Check auto_fontset_alist.
15316 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
15317 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
15318 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
15319 Defsubr Sfontset_list_all.
15320
153212008-02-01 Kenichi Handa <handa@m17n.org>
15322
15323 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
15324
153252008-02-01 Kenichi Handa <handa@m17n.org>
15326
15327 * fontset.c (Fnew_fontset): Check NAME more rigidly.
15328
153292008-02-01 Kenichi Handa <handa@m17n.org>
15330
15331 * editfns.c (Fgoto_char): Fix docstring.
15332
153332008-02-01 Kenichi Handa <handa@m17n.org>
15334
15335 * insdel.c (insert_from_gap): Adjust intervals correctly.
15336
153372008-02-01 Jason Rumney <jasonr@gnu.org>
15338
15339 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
15340 (pfnGetFontUnicodeRanges): New dynamically loaded function.
15341 (w32_initialize): Try to load it.
15342 (x_get_font_repertory): Use it if available.
15343 (w32_encode_char): Add shortcut for unicode output.
15344
15345 * w32fns.c (w32_load_system_font): Default charset to -1.
15346 (x_to_w32_charset): Match all fonts for unicode.
15347 (w32_to_x_charset): New parameter matching. Don't return partial
15348 or wildcard charsets.
15349 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
15350 (w32_codepage_for_font): Return CP_UNICODE for unicode.
15351 (w32_to_x_font): Match charset to real charset.
15352 (enum_font_cb2): Always list unicode versions.
15353
15354 * makefile.w32-in (temacs): Increase EMHEAP.
15355
153562008-02-01 Jason Rumney <jasonr@gnu.org>
15357
15358 * w32term.c (w32_encode_char): New charset parameter.
15359 font_info.encoding becomes encoding_type.
15360 (x_get_font_repertory): New function. Warning: stub only!
15361 (x_new_font): Return quickly if font already set.
15362 (x_new_fontset): fontsetname parameter is Lisp_Object.
15363 Use new fs_query_fontset. Try new_fontset_from_font_name.
15364 Use fontset_name for return value.
15365
15366 * w32term.h: Declare x_get_font_repertory.
15367
15368 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
15369 place of find_charset_in_text. Use encode_coding_object in place
15370 of encode_coding.
15371 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
15372 decode_coding.
15373
15374 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
15375 of x_new_fontset.
15376 (w32_load_system_font): Initialize charset as unicode.
15377 font_info.encoding becomes encoding_type.
15378 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
15379 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
15380 (syms_of_w32fns): Set get_font_repertory_func.
15381
15382 * w32console.c: Include character.h. Use terminal_encode_buffer
15383 from term.c.
15384 (write_glyphs): Use new version of encode_terminal_code. Use
15385 encode_coding_object in place of encode_coding.
15386
15387 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
15388 encoding becomes encoding_type.
15389
15390 * term.c (terminal_encode_buffer): Make externally visible.
15391
15392 * makefile.w32-in: Add character.h dependancies.
15393 (character.o, chartab.o): New targets.
15394
153952008-02-01 Kenichi Handa <handa@m17n.org>
15396
15397 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
15398 CODING_ID_EOL_TYPE.
15399
154002008-02-01 Andreas Schwab <schwab@suse.de>
15401
15402 * coding.c (produce_chars): Revert last change.
15403
154042008-02-01 Kenichi Handa <handa@m17n.org>
15405
15406 * charset.h (charset_unicode): Extern it.
15407
15408 * charset.c (string_xstring_p): Check by (C >= 0x100).
15409 (find_charsets_in_text): Change format of the arc CHARSETS. New
15410 arg MULTIBYTE.
15411 (Ffind_charset_region, Ffind_charset_string): Adjust for the
15412 change of find_charsets_in_text.
15413 (Fsplit_char): Fix doc. Never return unknown.
15414
15415 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
15416
15417 * coding.c (Fdefine_coding_system_alias): Update
15418 Vcoding_system_list.
15419
15420 * fontset.c (load_font_get_repertory): Pay attention to the case
15421 that ENCODING of a font is specified by a char-table.
15422
15423 * xterm.c (x_get_font_repertory): Handle the case that the
15424 encoding of font is other than Unicode.
15425
154262008-02-01 Kenichi Handa <handa@m17n.org>
15427
15428 * term.c (encode_terminal_code): Don't handle glyph-table. Check
15429 if a character is encodable by the terminal coding system. If
15430 not, produces proper number of `?'s. Update
15431 terminal_encode_buffer and terminal_encode_buf_size if necessary.
15432 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
15433
154342008-02-01 Kenichi Handa <handa@m17n.org>
15435
15436 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
15437 variables.
15438 (encode_terminal_code): Change argument. Encode multiple
15439 characters at once. Store the result of encoding in
15440 terminal_encode_buffer.
15441 (write_glyphs, insert_glyphs): Adjust for the change of
15442 encode_terminal_code.
15443 (term_init): Initialize terminal_encode_buffer and
15444 terminal_encode_buf_size.
15445
15446 * coding.c (consume_chars): If coding->src_object is nil, don't
15447 check annotation.
15448
154492008-02-01 Kenichi Handa <handa@m17n.org>
15450
15451 * character.c (char_string): Use ASCII_CHAR_P instead of
15452 SINGLE_BYTE_CHAR_P.
15453
154542008-02-01 Kenichi Handa <handa@m17n.org>
15455
15456 * xdisp.c (handle_auto_composed_prop): Check if the last
15457 characters of auto-composed region is newly composed with the
15458 following characters.
15459 (handle_composition_prop): Fix checking of point being inside
15460 composition.
15461
154622008-02-01 Kenichi Handa <handa@m17n.org>
15463
15464 * fns.c (concat): Don't change multibyteness of the result by
15465 concatenating an 8-bit character.
15466
15467 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
15468 multibyteness of the result when newelt is an 8-bit character.
15469
154702008-02-01 Dave Love <fx@gnu.org>
15471
15472 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
15473 EMACS_INT.
15474
15475 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
15476
15477 * xfaces.c (face_numeric_value): Declare dim size_t.
15478 (Finternal_lisp_face_equal_p): Remove unused f.
15479
15480 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
15481 (MATRIX_ROW): Remove unused vars.
15482 (draw_glyphs, x_insert_glyphs, fast_find_position)
15483 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
15484 byte/char counts.
15485
15486 * regex.c (regex_compile): Remove unused var.
15487
15488 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15489
15490 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15491 (Faccessible_keymaps, where_is_internal): Remove unused vars.
15492
15493 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
15494
15495 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
15496
15497 * fileio.c (Fwrite_region): Remove unused var.
15498
15499 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
15500 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
15501
15502 * composite.c (Fremove_list_of_text_properties): Declare.
15503
15504 * coding.c (inhibit_pre_post_conversion): Remove (unused).
15505 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
15506 (coding_inherit_eol_type): Remove unused attrs.
15507 (detect_coding): Cast arg of detect_eol.
15508
15509 * charset.c (syms_of_charset): Remove unused var p.
15510 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
15511 byte/char counts.
15512
15513 * casetab.c (set_case_table): Remove unused var.
15514
15515 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
15516 unused vars.
15517
155182008-02-01 Dave Love <fx@gnu.org>
15519
15520 * xterm.c (x_bitmap_mask): Declare.
15521
155222008-02-01 Dave Love <fx@gnu.org>
15523
15524 * xterm.c (x_term_init): Fix type error.
15525
15526 * lisp.h: Add Funibyte_char_to_multibyte.
15527
15528 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
15529 (Fset_coding_system_priority): Doc fix.
15530
15531 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
15532
15533 * indent.c (check_composition): Make start and end EMACS_INT.
15534
15535 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
15536
15537 * xdisp.c (handle_composition_prop, check_point_in_composition):
15538 Make buffer positions EMACS_INT.
15539
15540 * composite.c (find_composition, run_composition_function)
15541 (update_compositions, Ffind_composition_internal): Make buffer
15542 positions EMACS_INT.
15543
15544 * composite.h (find_composition, update_compositions): Make
15545 position args EMACS_INT.
15546
15547 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
15548
15549 * intervals.c (get_property_and_range):
15550 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
15551
15552 * unexalpha.c: Don't include varargs.h.
15553
155542008-02-01 Dave Love <fx@gnu.org>
15555
15556 * coding.h (ENCODE_UTF_8): New.
15557
15558 * Makefile.in (gtkutil.o): Depend on coding.h.
15559
15560 * coding.c (Fset_coding_system_priority): Doc fix.
15561
155622008-02-01 Kenichi Handa <handa@m17n.org>
15563
15564 * fileio.c (Finsert_file_contents): Call setup_coding_system in
15565 the case of auto saving.
15566
155672008-02-01 Andreas Schwab <schwab@suse.de>
15568
15569 * chartab.c (map_char_table, map_char_table_for_charset): Protect
15570 `range' from GC.
15571
155722008-02-01 Kenichi Handa <handa@m17n.org>
15573
15574 * coding.c (decode_coding_sjis): Check bytes more rigidly.
15575
155762008-02-01 Kenichi Handa <handa@m17n.org>
15577
15578 * fileio.c (choose_write_coding_system): Return a decided coding system.
15579 (Fwrite_region): Set Vlast_coding_system_used to the return value
15580 of choose_write_coding_system.
15581
155822008-02-01 Kenichi Handa <handa@m17n.org>
15583
15584 * charset.c (Fset_charset_priority): Pay attention to duplicated
15585 arguments.
15586
15587 * coding.c (QCcategory): New variable.
15588 (syms_of_coding): Defsym it. Set all elements of
15589 Vcoding_category_table and their symbol values.
15590 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
15591 coding-category-XXX, and coding-category-list.
15592 (Fdefine_coding_system_internal): Add category in the plist.
15593
155942008-02-01 Kenichi Handa <handa@m17n.org>
15595
15596 * callproc.c (Fcall_process): Handle carryover correctly.
15597
15598 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
15599 (raw_text_coding_system): Check NILP (coding_system).
15600 (coding_inherit_eol_type): Check NILP (coding_system) and
15601 NILP (parent).
15602 (consume_chars): Fix for the case of raw-text.
15603
15604 * process.c (read_process_output): Handle carryover correctly.
15605
156062008-02-01 Dave Love <fx@gnu.org>
15607
15608 * regex.c (re_search_2): Fix last change.
15609
156102008-02-01 Kenichi Handa <handa@m17n.org>
15611
15612 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
15613 target_multibyte. Even in a unibyte case, return a converted
15614 multibyte char.
15615 (GET_CHAR_AFTER): New macro.
15616 (PATFETCH): Translate via multibyte char.
15617 (HANDLE_UNIBYTE_RANGE): Delete this macro.
15618 (SETUP_MULTIBYTE_RANGE): New macro.
15619 (regex_compile): Setup compiled code so that its multibyteness
15620 matches that of a target. Fix the handling of "[X-YZ]" using
15621 SETUP_MULTIBYTE_RANGE.
15622 (analyse_first) <charset>: For filling fastmap for all multibyte
15623 characters, don't check by BASE_LEADING_CODE_P.
15624 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
15625 the same as RE_MULTIBYTE_P (bufp) now.
15626 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
15627 (TARGET_CHAR_AND_LENGTH): Delete this macro.
15628 (TRANSLATE_VIA_MULTIBYTE): New macro.
15629 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
15630 It is the same as RE_MULTIBYTE_P (bufp) now.
15631 <exactn>: Translate via multibyte.
15632 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
15633 translate it.
15634 <charset, charset_not>: Fetch a character by
15635 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
15636 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
15637 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
15638 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
15639 by GET_CHAR_AFTER.
15640 (bcmp_translate): Likewise.
15641
15642 * search.c (compile_pattern): Check the member target_multibyte,
15643 not the member multibyte of buf.
15644
15645 * lread.c (read1): While reading a string, set force_singlebyte
15646 and force_multibyte correctly.
15647
15648 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
15649 up of unibyte_to_multibyte_table.
15650
156512008-02-01 Kenichi Handa <handa@m17n.org>
15652
15653 * coding.c (setup_coding_system): If coding has
15654 post-read-conversion or pre-write-conversion, set
15655 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
15656 respectively.
15657 (decode_coding_gap): Run post-read-conversion if any.
15658
15659 * fileio.c (Finsert_file_contents): Even if we read into a
15660 unibyte buffer, check if we must decode the result or not.
15661
156622008-02-01 Kenichi Handa <handa@m17n.org>
15663
15664 * coding.c (make_conversion_work_buffer): Change the work buffer
15665 name to the same one as that of Emacs 21.
15666
156672008-02-01 Kenichi Handa <handa@m17n.org>
15668
15669 * coding.h (make_conversion_work_buffer): Adjust prototype.
15670 (code_conversion_restore): Don't extern it.
15671
15672 * coding.c (detected_mask): Delete unused variable.
15673 (decode_coding_iso_2022): Pay attention to the byte sequence of
15674 CTEXT extended segment, and retain those bytes as is.
15675 (decode_coding_ccl): Delete unused variable `valids'.
15676 (setup_coding_system): Delete unused variable `category'.
15677 (consume_chars): Delete unused variable `category'. Make it work
15678 for non-multibyte case.
15679 (make_conversion_work_buffer): Change argument.
15680 (saved_coding): Delete unused variable.
15681 (code_conversion_restore): Don't check saved_coding->destination.
15682 (code_conversion_save): New function.
15683 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
15684 instead of record_unwind_protect.
15685 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
15686 (detect_coding_system): Delete unused variable `mask'.
15687 (Fdefine_coding_system_internal): Delete unused variable id.
15688
15689 * fileio.c (kill_workbuf_unwind): New function.
15690 (Finsert_file_contents): On replacing, call
15691 make_conversion_work_buffer with correct args, and call
15692 record_unwind_protect with the first arg kill_workbuf_unwind.
15693
15694 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
15695
156962008-02-01 Kenichi Handa <handa@m17n.org>
15697
15698 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
15699 (fontset_add): Fix for the case that TO is less than TO1.
15700 (Ffontset_info): Don't use fallback fontset on checking the
15701 default fontset.
15702 (dump_fontset): New function for debugging.
15703
15704 * coding.c (Fdefine_coding_system_internal): Fix for the case that
15705 coding_type is Qcharset.
15706
157072008-02-01 Kenichi Handa <handa@m17n.org>
15708
15709 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
15710 (map_char_table): Don't inherit the value from the parent on
15711 initializing VAL. Adjust for the above change.
15712
157132008-02-01 Kenichi Handa <handa@m17n.org>
15714
15715 * coding.c (Qsignature, Qendian): Delete these variables.
15716 (syms_of_coding): Don't initialize them.
15717 (CATEGORY_MASK_UTF_16_AUTO): New macro.
15718 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
15719 detect_info->found.
15720 (decode_coding_utf_16): Don't detect BOM here.
15721 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
15722 is NOT utf_16_without_bom.
15723 (setup_coding_system): For a coding system of type utf-16, check
15724 if the attribute :endian is Qbig or not (not nil or not), and set
15725 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
15726 (detect_coding): If coding type is utf-16 and BOM detection is
15727 required, detect it.
15728 (Fdefine_coding_system_internal): For a coding system of type
15729 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
15730
157312008-02-01 Kenichi Handa <handa@m17n.org>
15732
15733 * coding.c (coding_set_source): Fix for the case that the current
15734 buffer is different from coding->src_object.
15735 (decode_coding_object): Don't use the conversion work buffer if
15736 DST_OBJECT is a buffer.
15737
157382008-02-01 Dave Love <fx@gnu.org>
15739
15740 * lread.c (read_emacs_mule_char) [len==2]: Index
15741 emacs_mule_charset correctly.
15742
157432008-02-01 Dave Love <fx@gnu.org>
15744
15745 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
15746 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
15747 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
15748 treated specially.)
15749 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
15750 (detected_mask): Remove Big5 bits.
15751
157522008-02-01 Kenichi Handa <handa@m17n.org>
15753
15754 The following changes are to make the font rescaling facility
15755 compatible with Emacs 21.
15756
15757 * xfaces.c (Vface_font_rescale_alist): Rename from
15758 Vface_resizing_fonts.
15759 (struct font_name): Rename member resizing_ratio to rescale_ratio.
15760 (font_rescale_ratio): Rename from font_resizing_ratio.
15761 (split_font_name): Set font->rescale_ratio.
15762 (better_font_p): Pay attention to font->rescale_ratio.
15763 (build_scalable_font_name): Likewise. Change RESX, and RESY
15764 fields.
15765 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15766
157672008-02-01 Kenichi Handa <handa@m17n.org>
15768
15769 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
15770 (Qutf_16_le): Remove these variables.
15771 (syms_of_coding): Don't DEFSYM them.
15772 (decode_coding_utf_16): Fix handling of BOM.
15773 (encode_coding_utf_16): Fix handling of BOM.
15774
157752008-02-01 Kenichi Handa <handa@m17n.org>
15776
15777 * fileio.c (Finsert_file_contents): On replacing, before decoding
15778 the file into the work buffer, set point of the work buffer to the end.
15779
157802008-02-01 Dave Love <fx@gnu.org>
15781
15782 * coding.c (Fcheck_coding_systems_region): Fix type errors.
15783
157842008-02-01 Dave Love <fx@gnu.org>
15785
15786 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15787 and fix C types.
15788
157892008-02-01 Kenichi Handa <handa@m17n.org>
15790
15791 * xdisp.c (SKIP_GLYPHS): New macro.
15792 (set_cursor_from_row): Pay attention to string display properties.
15793
15794 * category.c (copy_category_entry): Fix for the case that RANGE
15795 is an integer.
15796
15797 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
15798
15799 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
15800
158012008-02-01 Kenichi Handa <handa@m17n.org>
15802
15803 * charset.c (Fcharset_id_internal): New function.
15804 (syms_of_charset): Defsubr it.
15805
15806 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
15807 with the last arg charset_list acquired from coding.
15808 (Fdefine_coding_system_internal): For ccl-based coding system, fix
15809 the attribute coding_attr_ccl_valids.
15810
15811 * coding.h (enum define_coding_ccl_arg_index): Set the first
15812 member coding_arg_ccl_decoder to coding_arg_max.
15813
15814 * ccl.h (ccl_driver): Adjust prototype.
15815
15816 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
15817 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 15818 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
15819 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
15820 last arg Qnil.
15821
158222008-02-01 Kenichi Handa <handa@m17n.org>
15823
15824 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
15825 call encode_char.
15826
15827 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
15828
158292008-02-01 Dave Love <fx@gnu.org>
15830
15831 * composite.c (syms_of_composite): Make composition_hash_table weak.
15832
158332008-02-01 Kenichi Handa <handa@m17n.org>
15834
15835 * dispextern.h (check_face_attributes, generate_ascii_font_name)
15836 (font_name_registry): Don't extern them.
15837 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
15838
15839 * fontset.h (Qfontset): Don't extern it.
15840 (new_fontset_from_font_name): Extern it.
15841
15842 * fontset.c: Give 8 extra slots to fontset objects.
15843 (Qfontset_info): New variable.
15844 (syms_of_fontset): Defsym it.
15845 (FONTSET_FALLBACK): New macro.
15846 (fontset_face): Try also the default fontset.
15847 (make_fontset): Realize a fallback fontset from the default fontset.
15848 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
15849 using split_font_name_into_vector and build_font_name_from_vector.
15850 (Fset_fontset_font): Access the elements of font_spec by enum
15851 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
15852 name by using split_font_name_into_vector.
15853 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
15854 generate a proper font name from the fontset name. Update
15855 Vfontset_alias_alist.
15856 (n_auto_fontsets): New variable.
15857 (new_fontset_from_font_name): New function.
15858 (Ffont_info): Store the information about fonts generated from the
15859 default fontset in the first extra slot of the returned char-table.
15860
15861 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
15862 (font_name_registry): Delete function.
15863 (split_font_name_into_vector): New function.
15864 (build_font_name_from_vector): New function.
15865 (font_list): The argument REGISTRY is now a list of registry names.
15866 (choose_face_font): If we are choosing an ASCII font, and ATTRS
15867 specifies an explicit font name, return the name as is. Make a
15868 list of registy names.
15869
15870 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
15871 of x_new_fontset.
15872 (Fx_create_frame): Don't call x_new_fontset here. Just use
15873 x_list_fonts to check the existence of fonts.
15874
15875 * xterm.h (x_new_fontset): Adjust prototype.
15876
15877 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
15878 string. Use new_fontset_from_font_name to create a fontset from a
15879 font name.
15880
158812008-02-01 Kenichi Handa <handa@m17n.org>
15882
15883 * syntax.c (Vfind_word_boundary_function_table): New name for
15884 Vnext_word_boundary_function_table.
15885 (find-word-boundary-function-table): New name for
15886 next-word-boundary-function-table.
15887
158882008-02-01 Dave Love <fx@gnu.org>
15889
15890 * Makefile.in: Fix some dependencies.
15891
15892 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
15893 set it to nil before returning.
15894
15895 * composite.c (update_compositions): Fix type error.
15896
15897 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
15898
158992008-02-01 Kenichi Handa <handa@m17n.org>
15900
15901 * xterm.c (x_new_font): Optimize for the case that the font is
15902 already set for the frame.
15903
159042008-02-01 Kenichi Handa <handa@m17n.org>
15905
15906 * chartab.c (char_table_ascii): Check if the char table contents
15907 is sub-char-table or not.
15908 (char_table_set, char_table_set_range): Fix argument to
15909 char_table_ascii.
15910
15911 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
15912 (detect_coding_utf_8, detect_coding_utf_16)
15913 (detect_coding_emacs_mule, detect_coding_iso_2022)
15914 (detect_coding_sjis, detect_coding_big5)
15915 (detect_coding_ccl, detect_coding_charset): Change argument MASK
15916 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
15917 sequence is valid in this coding system. Change callers.
15918 (MAX_ANNOTATION_LENGTH): New macro.
15919 (ADD_ANNOTATION_DATA): New macro.
15920 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
15921 ADD_ANNOTATION_DATA. Change the format of annotation data.
15922 (ADD_CHARSET_DATA): New macro.
15923 (emacs_mule_char): New argument ID. Change callers.
15924 (decode_coding_emacs_mule, decode_coding_iso_2022)
15925 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
15926 Produce charset annotation data in coding->charbuf.
15927 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
15928 to charset annotation data in coding->charbuf.
15929 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
15930 coding->common_flags if the coding system is iso-2022 based and
15931 uses designation.
15932 (produce_composition): Adjust for the new annotation data format.
15933 (produce_charset): New function.
15934 (produce_annotation): Handle charset annotation.
15935 (handle_composition_annotation, handle_charset_annotation): New
15936 functions.
15937 (consume_chars): Handle charset annotation. Utilize the above two
15938 functions.
15939 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
15940 buffer, get the deleted text as a string and set
15941 coding->src_object to that string.
15942 (detect_coding, detect_coding_system): Use the new struct
15943 coding_detection_info.
15944
15945 * coding.h (struct coding_detection_info): New structure.
15946 (struct coding_system): Adjust prototype of the member `detector'.
15947 (CODING_ANNOTATE_CHARSET_MASK): New macro.
15948
159492008-02-01 Kenichi Handa <handa@m17n.org>
15950
15951 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
15952
159532008-02-01 Dave Love <fx@gnu.org>
15954
15955 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
15956 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
15957 to new local and nullify apropos_accumulate before returning.
15958 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
15959
159602008-02-01 Kenichi Handa <handa@m17n.org>
15961
15962 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
15963 correctly.
e3eea1fc 15964
aac0c6e3
MR
159652008-02-01 Dave Love <fx@gnu.org>
15966
15967 * fns.c (Flanginfo): Call synchronize_system_time_locale.
15968
159692008-02-01 Kenichi Handa <handa@m17n.org>
15970
15971 The following changes are to make character composition happen
15972 automatically on displaying.
15973
15974 * Makefile.in (lisp, shortlisp): Add composite.elc.
15975
15976 * composite.h (Qauto_composed, Vauto_composition_function)
15977 (Qauto_composition_function): Extern them.
15978
15979 * composite.c (Vcomposition_function_table)
15980 (Qcomposition_function_table): Delete variables.
15981 (Qauto_composed, Vauto_composition_function)
15982 (Qauto_composition_function): New variables.
15983 (run_composition_function): Don't call
15984 compose-chars-after-function.
15985 (update_compositions): Clear `auto-composed' text property.
15986 (compose_chars_in_text): Delete this function.
15987 (syms_of_composite): Staticpro Qauto_composed and
15988 Qauto_composition_function. Declare Vauto_composition_function as
15989 a Lisp variable.
15990
15991 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
15992
15993 * xdisp.c (it_props): Add an entry for Qauto_composed.
15994 (handle_auto_composed_prop): New function.
15995
15996 * xselect.c (selection_data_to_lisp_data): Don't call
15997 compose_chars_in_text.
15998
159992008-02-01 Dave Love <fx@gnu.org>
16000
16001 * keyboard.c (read_char): Modify checking around use of
16002 Vkeyboard_translate_table.
16003
16004 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
16005 and fix C types.
16006
160072008-02-01 Kenichi Handa <handa@m17n.org>
16008
16009 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
16010 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
16011 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
16012 the case that the last byte is '\r' correctly.
16013 (decode_coding): Flush out the unprocessed data correctly.
16014 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
16015
160162008-02-01 Dave Love <fx@gnu.org>
16017
16018 * xterm.c (XTread_socket): Fix changes for defined keysyms.
16019 Add XK_ISO... case.
16020 (xaw_scroll_callback): Revert last change.
16021
160222008-02-01 Kenichi Handa <handa@m17n.org>
16023
16024 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
16025
160262008-02-01 Kenichi Handa <handa@m17n.org>
16027
16028 * xfaces.c (Vface_resizing_fonts): New variable.
16029 (struct font_name): New member `resizing_ratio'.
16030 (font_resizing_ratio): New function.
16031 (split_font_name): Set font->resizing_ratio.
16032 (better_font_p): Pay attention to font->resizing_ratio.
16033 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
16034 RESX, and RESY fields.
16035 (try_alternative_families): Try scalable fonts if
16036 Vscalable_fonts_allowed is not Qt.
16037 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
16038
160392008-02-01 Dave Love <fx@gnu.org>
16040
16041 * xterm.c (xaw_scroll_callback): Cast correctly.
16042
160432008-02-01 Dave Love <fx@gnu.org>
16044
16045 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
16046 (lispy_kana_keys): Comment out.
16047 (make_lispy_event) [XK_kana_A]: Comment out.
16048
16049 * xterm.c (xaw_scroll_callback): Cast call_data.
16050 (XTread_socket): Deal with ASCII keysyms.
16051 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
16052
160532008-02-01 Dave Love <fx@gnu.org>
16054
16055 * xterm.c (Vx_keysym_table): New.
16056 (syms_of_xterm): Initialize it.
16057 (XTread_socket): Use it.
16058 From head: Eliminate incorrect optimization that tried to avoid
16059 decoding the output of X*LookupString.
16060 (x_get_font_repertory): Delete charset declaration.
16061
160622008-02-01 Kenichi Handa <handa@m17n.org>
16063
16064 * coding.c (detect_coding_charset): If only ASCII bytes are found,
16065 return 0.
16066 (Fdefine_coding_system_internal): Setup
16067 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
16068
160692008-02-01 Dave Love <fx@gnu.org>
16070
16071 * coding.c (Fcheck_coding_system): Doc fix.
16072
16073 * editfns.c (Finsert_byte): Return a proper value.
16074
160752008-02-01 Kenichi Handa <handa@m17n.org>
16076
16077 * coding.c (decode_coding): Fix args to translate_chars. Pay
16078 attention to Vstandard_translation_table_for_decode.
16079 (encode_coding): Fix args to translate_chars. Pay attention to
16080 Vstandard_translation_table_for_encode.
16081
16082 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
16083 SINGLE_BYTE_CHAR_P.
16084
16085 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
16086 not by SINGLE_BYTE_CHAR_P.
16087
16088 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
16089 SINGLE_BYTE_CHAR_P.
16090
16091 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
16092 SINGLE_BYTE_CHAR_P.
16093
16094 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
16095 by SINGLE_BYTE_CHAR_P.
16096
16097 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
16098 SINGLE_BYTE_CHAR_P.
16099
161002008-02-01 Dave Love <fx@gnu.org>
16101
16102 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
16103
161042008-02-01 Dave Love <fx@gnu.org>
16105
16106 * fns.c (Flanginfo): Fix typo.
16107
16108 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
16109
161102008-02-01 Kenichi Handa <handa@m17n.org>
16111
16112 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
16113 (detect_coding_emacs_mule, detect_coding_iso_2022)
16114 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
16115 incomplete byte sequence. Don't update *mask when correctly detected.
16116 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
16117 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
16118 (detect_coding, detect_coding_system): Adjust for the changes above.
16119
161202008-02-01 Kenichi Handa <handa@m17n.org>
16121
16122 * character.c (char_string): Rename from
16123 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
16124 (string_char): Rename from string_char.
16125
16126 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
16127 if C is greater than MAX_3_BYTE_CHAR.
16128 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
16129 string_char instead of string_char_with_unification.
16130
161312008-02-01 Dave Love <fx@gnu.org>
16132
16133 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
16134
161352008-02-01 Kenichi Handa <handa@m17n.org>
16136
16137 * keymap.c (push_key_description): Pay attention to force_multibyte.
16138
16139 * regex.c (re_search_2): Fix for the case of unibyte buffer.
16140
161412008-02-01 Dave Love <fx@gnu.org>
16142
16143 * charset.c (define_charset_internal): Rename `supprementary'.
16144
16145 * Makefile.in (lisp, shortlisp): Remove latin-N.
16146
161472008-02-01 Dave Love <fx@gnu.org>
16148
16149 * xfns.c (x_window, x_window): Use use_xim.
16150
16151 * xterm.c (use_xim): Initialize.
16152 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
16153 (x_term_init): Maybe set use_xim.
16154
16155 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
16156
161572008-02-01 Kenichi Handa <handa@m17n.org>
16158
16159 * search.c (search_buffer): Fix case-fold-search of multibyte
16160 characters.
16161 (boyer_moore): Rename the last argument to char_high_bits.
16162
161632008-02-01 Kenichi Handa <handa@m17n.org>
16164
16165 * xdisp.c (display_string): Fix for the case of zero width glyph.
16166
16167 * xfns.c (x_set_font): Change the error message of the case that
16168 x_new_fontset returns Qt.
16169
16170 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
16171 (Finternal_set_lisp_face_attribute): Use signal_error for the
16172 error of invalid fontset.
16173
16174 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
16175 fontset, return Qt.
16176
161772008-02-01 Dave Love <fx@gnu.org>
16178
16179 * unexelf.c (unexec): Make .got handling not SGI-specific.
16180
16181 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
16182
16183 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
16184
16185 * keyboard.c (read_key_sequence): Fix type error.
16186
16187 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
16188 type error.
16189
16190 * fontset.c (fontset_add): Return Lisp_Object.
16191
161922008-02-01 Dave Love <fx@gnu.org>
16193
16194 * charset.h (charset_ordered_list_tick): Declare extern.
16195
161962008-02-01 Kenichi Handa <handa@m17n.org>
16197
16198 The following changes (and some of 2008-02-01 changes of mine) are
16199 for handling syntax, category, and case conversion for unibyte
16200 characters by converting them to multibyte on the fly. With these
16201 changes, we don't have to setup syntax and case tables for unibyte
16202 characters in each language environment.
16203
16204 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
16205 multibyte if necessary.
16206
16207 * bytecode.c (Fbyte_code): Likewise.
16208
16209 * character.h (LEADING_CODE_LATIN_1_MIN)
16210 (LEADING_CODE_LATIN_1_MAX): New macros.
16211 (unibyte_to_multibyte_table): Extern it.
16212 (unibyte_char_to_multibyte): New macro.
16213 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
16214 (CHAR_LEADING_CODE): New macro.
16215 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
16216
16217 * character.c (unibyte_to_multibyte_table): New variable.
16218 (unibyte_char_to_multibyte): Move to character.h and define as macro.
16219 (multibyte_char_to_unibyte): If C is an eight-bit character,
16220 convert it to the corresponding byte value.
16221
16222 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
16223 not 1, signals an error. Update the elements of
16224 unibyte_to_multibyte_table.
16225 (init_charset_once): Initialize unibyte_to_multibyte_table.
16226 (syms_of_charset): Define the charset `iso-8859-1'.
16227
16228 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
16229 as is without converting it to unibyte. In a unibyte buffer,
16230 convert C to multibyte before checking the syntax.
16231
16232 * lisp.h (unibyte_char_to_multibyte): Delete extern.
16233
16234 * minibuf.c (Fminibuffer_complete_word): Use the macro
16235 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
16236
16237 * regex.h (struct re_pattern_buffer): New member target_multibyte.
16238
16239 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
16240 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
16241 that is zero, convert an eight-bit char to multibyte.
16242 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
16243 non-emacs case.
16244 (PATFETCH): Convert an eight-bit char to multibyte.
16245 (HANDLE_UNIBYTE_RANGE): New macro.
16246 (regex_compile): Setup the compiled pattern for multibyte chars
16247 even if the given regex string is unibyte. Use PATFETCH_RAW
16248 instead of PATFETCH in many places. To handle `charset'
16249 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
16250 only for ASCII chars.
16251 (analyse_first) <exactn>: Simplify because the compiled pattern
16252 is multibyte.
16253 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
16254 <charset>: Use CHAR_LEADING_CODE to get leading codes.
16255 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
16256 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
16257 multibyte always 1.
16258 (re_search_2): In emacs, set the locale variable multibyte to 1,
16259 otherwise to 0. New local variable target_multibyte. Check it
16260 to decide the multibyteness of STR1 and STR2. If
16261 target_multibyte is zero, convert unibyte chars to multibyte
16262 before translating and checking fastmap.
16263 (TARGET_CHAR_AND_LENGTH): New macro.
16264 (re_match_2_internal): In emacs, set the locale variable multibyte
16265 to 1, otherwise to 0. New local variable target_multibyte. Check
16266 it to decide the multibyteness of STR1 and STR2. Use
16267 TARGET_CHAR_AND_LENGTH to fetch a character from D.
16268 <charset, charset_not>: If multibyte is nonzero, check fastmap
16269 only for ASCII chars. Call bcmp_translate with
16270 target_multibyte, not with multibyte.
16271 <begline>: Declare the local variable C as `unsigned'.
16272 (bcmp_translate): Change the last arg name to target_multibyte.
16273
16274 * search.c (compile_pattern_1): Don't adjust the multibyteness of
16275 the regexp pattern and the matching target. Set cp->buf.multibyte
16276 to the multibyteness of the regexp pattern. Set
16277 cp->but.target_multibyte to the multibyteness of the matching target.
16278 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
16279 FETCH_STRING_CHAR_ADVANCE.
16280 (Freplace_match): Convert unibyte chars to multibyte.
16281
16282 * syntax.c (char_quoted, back_comment, scan_words)
16283 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
16284 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
16285 unibyte chars to multibyte.
16286 (skip_chars): Delete the arg syntaxp, and move the code for
16287 handling syntaxes to skip_syntaxes. Change callers.
16288 Fix the case that the multibyteness of STRING and the current
16289 buffer doesn't match.
16290 (skip_syntaxes): New function.
16291 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
16292 SINGLE_BYTE_CHAR_P.
16293
162942008-02-01 Kenichi Handa <handa@m17n.org>
16295
16296 * xfaces.c (QCfontset): New variable.
16297 (LFACE_FONTSET): New macro.
16298 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
16299 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
16300 (Finternal_set_lisp_face_attribute)
16301 (Finternal_get_lisp_face_attribute): Handle QCfontset.
16302 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
16303 check also LFACE_FONTSET_INDEX.
16304 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
16305 attrs[LFACE_FONT_INDEX].
16306 (syms_of_xfaces): Intern and staticpro QCfontset.
16307
16308 * dispextern.h (enum lface_attribute_index): New member
16309 LFACE_FONTSET_INDEX.
16310
16311 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
16312
163132008-02-01 Kenichi Handa <handa@m17n.org>
16314
16315 * coding.c (coding_set_destination): Fix coding->destination for
16316 the case converting a region.
16317 (encode_coding_utf_8): Encode eight-bit chars as single byte.
16318 (encode_coding_object): Fix coding->dst_pos and
16319 coding->dst_pos_byte for the case converting a region.
16320
16321 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
16322
16323 * character.h (BYTE8_STRING): New macro.
16324
16325 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
16326
163272008-02-01 Kenichi Handa <handa@m17n.org>
16328
16329 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
16330 characters by octal form.
16331
16332 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16333
16334 * buffer.h (_fetch_multibyte_char_len): Delete extern.
16335 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
16336 _fetch_multibyte_char_len.
16337 (FETCH_CHAR_AS_MULTIBYTE): New macro.
16338
16339 * casetab.c (set_canon, set_identity, shuffle): Simplify.
16340
16341 * casefiddle.c (casify_object): Simplify. Handle the case that
16342 the case conversion change the byte length.
16343 (casify_region): Likewise.
16344
16345 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
16346
16347 * character.c (_fetch_multibyte_char_len): Delete this variable.
16348 (syms_of_character): Setup Vprintable_chars.
16349
16350 * editfns.c (Fchar_equal): Fix for the unibyte case.
16351 (Finsert_byte): New function.
16352 (syms_of_editfns): Defsubr it.
16353
16354 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
16355 of direct code 0x3ffff.
16356
16357 * search.c (Freplace_match): Fix for the unibyte case.
16358
163592008-02-01 Kenichi Handa <handa@m17n.org>
16360
16361 * lread.c (safe_to_load_p): Fix the logic.
16362
16363 * syntax.c (scan_words): Don't treat characters belonging to
16364 different scripts as constituting a word.
16365
16366 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16367
16368 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
16369
16370 * emacs.c (main): In the case of --unibyte, instead of aborting on
16371 finding non-empty buffer, make it unibyte.
16372
163732008-02-01 Kenichi Handa <handa@m17n.org>
16374
16375 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
16376 to create a fontset.
16377
163782008-02-01 Dave Love <fx@gnu.org>
16379
16380 * character.c (Funibyte_char_to_multibyte): Doc fix.
16381
16382 * xfns.c [HAVE_STDLIB_H]: Fix last change.
16383
163842008-02-01 Kenichi Handa <handa@m17n.org>
16385
16386 * fontset.c (fontset_add): Make the type `int'.
16387 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
16388
16389 * character.c (unibyte_char_to_multibyte)
16390 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
16391 charset_unibyte, not charset_primary.
16392
16393 * charset.h (charset_unibyte): Extern it instead of charset_primary.
16394
16395 * charset.c (charset_unibyte): Rename from charset_primary.
16396 (Funibyte_charset): Rename from Fprimary_charset.
16397 (Fset_unibyte_charset): Rename from Fset_primary_charset.
16398 (syms_of_charset): Adjust for the above changes.
16399
16400 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16401 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16402 it->multibyte_p is zero.
16403
16404 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
16405 Delete extern.
16406
164072008-02-01 Kenichi Handa <handa@m17n.org>
16408
16409 * coding.c (Fdefine_coding_system_internal): Fix category setting
16410 for a coding system of type iso-2022.
16411
164122008-02-01 Kenichi Handa <handa@m17n.org>
16413
16414 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
16415
164162008-02-01 Kenichi Handa <handa@m17n.org>
16417
16418 * syntax.c (Vnext_word_boundary_function_table): New variable.
16419 (next-word-boundary-function-table): Declare it as a Lisp variable
16420 in syms_of_syntax.
16421 (scan_words): Call functions in Vnext_word_boundary_function_table
16422 if any.
16423
16424 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
16425
16426 * fontset.c (fs_load_font): If fontp->charset is not negative,
16427 return fontp without setting its members.
16428
164292008-02-01 Dave Love <fx@gnu.org>
16430
16431 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
16432
16433 * m/sparc.h (HAVE_ALLOCA): Delete.
16434
16435 * s/irix6-5.h: Don't include strings.h.
16436 (bcopy, bzero, bcmp): Don't undef.
16437
16438 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
16439
16440 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
16441 (TIOCSIGSEND): Don't test IRIX6.
16442 (bcopy, bzero, bcmp): Define conditionally.
16443
164442008-02-01 Kenichi Handa <handa@m17n.org>
16445
16446 * buffer.c (Qas, Qmake, Qto): New variables.
16447 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
16448 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
16449
16450 * callproc.c (Fcall_process): Don't call insert_1_both directly if
16451 we are inserting a process output into a multibyte buffer.
16452
16453 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
16454 multibyte_char_to_unibyte.
16455
16456 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
16457 by the primary charset, make it eight-bit char.
16458 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
16459
16460 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
16461 (charset_8_bit__control, charset_8_bit_graphic)
16462 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
16463 (define_charset_internal): New function.
16464 (syms_of_charset): Call define_charset_internal for pre-defined
16465 charsets.
16466
16467 * charset.h (charset_8_bit): Extern it.
16468
16469 * coding.c (make_conversion_work_buffer): Adjust for the change
16470 of Fset_buffer_multibyte.
16471 (encode_coding_raw_text): Increment p0 in the loop.
16472
16473 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
16474
16475 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
16476 for the change of Fset_buffer_multibyte.
16477
16478 * fns.c (Fstring_to_multibyte): New function.
16479 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
16480
164812008-02-01 Dave Love <fx@gnu.org>
16482
16483 * xfns.c (x_put_x_image): Declare args.
16484
16485 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
16486 (try_font_list): Declare an arg.
16487
16488 * xdisp.c (message2_nolog, set_message): Declare an arg.
16489
16490 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
16491
16492 * syntax.c (scan_sexps_forward): Declare an arg.
16493
16494 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16495 Declare an arg.
16496
16497 * lisp.h (Fnew_fontset): Declare.
16498
16499 * keymap.c (push_key_description): Call CHARACTERP correctly.
16500
16501 * fontset.c (fontset_add): Declare args. Call make_number correctly.
16502 (face_for_char): Delete unused vars.
16503 (Fset_fontset_font): Doc fix. Delete unused vars.
16504
16505 * doc.c (Fsubstitute_command_keys): Delete unused vars.
16506
16507 * composite.c (update_compositions): Declare arg.
16508
16509 * cm.c (calccost, cmgoto): Declare args.
16510
16511 * charset.c: Remove `emacs' conditional. Doc fixes.
16512 (map_char_table_for_charset): Declare.
16513
16514 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
16515
16516 * ccl.c: Remove `emacs' conditional.
16517
165182008-02-01 Kenichi Handa <handa@m17n.org>
16519
16520 The following changes are to allow specifying multiple font
16521 patterns for a character range (specified by script or charset).
16522
16523 * Makefile.in (abbrev.o): Depend on syntax.h.
16524 (xfaces.o): Depend on charset.h.
16525
16526 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
16527 SINGLE_BYTE_CHAR_P.
16528
16529 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
16530
16531 * character.h (Vchar_script_table): Extern it.
16532
16533 * character.c (Vscript_alist): Delete.
16534 (Vchar_script_table, Qchar_script_table): New variable.
16535 (syms_of_character): Declare Vchar_script_table as a lisp variable
16536 and initialize it.
16537
16538 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
16539 have property char-table-extra-slots, make no extra slot.
16540
16541 * dispextern.h (struct face): Delete member `charset'.
16542 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
16543 SINGLE_BYTE_CHAR_P.
16544 (choose_face_font, lookup_non_ascii_face, font_name_registry):
16545 Add prototypes.
16546 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
16547 (generate_ascii_font_name): Rename from generate_ascii_font.
16548
16549 * fontset.h (get_font_repertory_func): New prototype.
16550 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
16551 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
16552
16553 * fontset.c (Qprepend, Qappend): New variables.
16554 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
16555 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
16556 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
16557 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
16558 (fontset_ref_and_range, fontset_add, reorder_font_vector)
16559 (load_font_get_repertory): New functions.
16560 (fontset_set): Delete.
16561 (fontset_face): New arg FACE. Return face ID, not face.
16562 Complete re-write to handle new fontset structure. Change caller.
16563 (free_face_fontset): Use ASET istead of AREF (X) = Y.
16564 (face_for_char): Don't call lookup_face.
16565 (make_fontset_for_ascii_face): New arg FACE.
16566 (fs_load_font): New arg CHARSET_ID. Don't check
16567 Vfont_encoding_alist here.
16568 (find_font_encoding): New function.
16569 (list_fontsets): Use STRINGP, not ! NILP.
16570 (accumulate_script_ranges): New function.
16571 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
16572 re-written to handle new fontset structure.
16573 (Ffontset_font): Return a copy of element.
16574 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
16575 docstring of font-encoding-alist.
16576
16577 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
16578 (Fset_fotset_font): Fix arguments to 5.
16579
16580 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
16581
16582 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
16583 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16584 (highlight_trailing_whitespace): Adjust for the change of
16585 lookup_named_face.
16586
16587 * xfaces.c: Include charset.h.
16588 (load_face_font): Delete argument C. Change caller.
16589 (generate_ascii_font_name): Rename from generate_ascii_font.
16590 (font_name_registry): New function.
16591 (cache_face): Store ascii faces before non-ascii faces in buckets.
16592 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
16593 Lookup only ascii faces.
16594 (lookup_non_ascii_face): New function.
16595 (lookup_named_face): Delete argument C. Change caller.
16596 (lookup_derived_face): Delete argument C. Change caller.
16597 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
16598 a string, just call font_list with it.
16599 (choose_face_font): Delete arguments FACE and C. New arg
16600 FONT_SPEC. Change caller.
16601 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
16602 Change caller.
16603 (realize_non_ascii_face): New function.
16604 (realize_x_face): Call load_face_font here.
16605 (realize_tty_face): Delete argument C. Change caller.
16606 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
16607 get a face ID.
16608 (dump_realized_face): Don't print charset of FACE.
16609
16610 * xfns.c (x_set_font): Always call x_new_fontset and
16611 store_frame_parameter.
16612 (Fx_create_frame): Call x_new_fontset, not x_new_font.
16613 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
16614
16615 * xterm.h (x_get_font_repertory): Extern it.
16616
16617 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
16618 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
16619 it->multibyte_p is zero.
16620 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
16621 (x_new_fontset): If FONTSETNAME doesn't match any existing
16622 fontsets, create a new one.
16623 (x_get_font_repertory): New function.
16624
166252008-02-01 Kenichi Handa <handa@m17n.org>
16626
16627 * coding.c (Ffind_coding_systems_region_internal): Detect an
16628 ASCII only string correctly.
16629
16630 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
16631 version is 0.
16632
166332008-02-01 Kenichi Handa <handa@m17n.org>
16634
16635 * lread.c: Include "coding.h".
16636 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
16637 (load_each_byte, unread_char): New variables.
16638 (readchar_backlog): Delete.
16639 (readchar): Return a character unless load_each_byte is nonzero.
16640 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
16641 cons. If unread_char is not -1, simply return it.
16642 (unreadchar): Handle the case that readcharfun is
16643 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
16644 (read_multibyte): Delete.
16645 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
16646 (read_emacs_mule_char): New functions.
16647 (Fload): Even if the file doesn't have the extension ".elc", if
16648 safe_to_load_p returns a positive version number, assume that the
16649 file contains bytecompiled code. If the version is less than 22,
16650 load the file while decoding multibyte sequences by emacs-mule.
16651 (readevalloop): Don't use readchar_backlog.
16652 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
16653 (Fread_from_string): Pay attention to the case that STREAM is a cons.
16654 (read_escape): Delete the arg BYTEREP.
16655 (read1): Set load_each_byte to 1 temporarily while handling
16656 #@NUMBER. Don't call read_multibyte.
16657 (read_vector): Call Fread with a cons. If readcharfun is
16658 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
16659 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
16660 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
16661 and Qload_force_doc_strings.
16662
166632008-02-01 Kenichi Handa <handa@m17n.org>
16664
16665 * xdisp.c (face_before_or_after_it_pos): Call
16666 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16667
166682008-02-01 Kenichi Handa <handa@m17n.org>
16669
16670 * character.h (TRAILING_CODE_P): New macro.
16671 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
16672 (string_char_with_unification): Fix prototype.
16673 (Vscript_alist): Extern it.
16674
16675 * character.c (Vscript_alist): New variable.
16676 (string_char_with_unification, str_as_unibyte)
16677 (string_escape_byte8): Add `const' to local variables.
16678 (syms_of_character): Declare script-alist as a Lisp variable.
16679
16680 * charset.h (Vcharset_ordered_list): Extern it.
16681 (charset_ordered_list_tick): Extern it.
16682 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
16683 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
16684 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
16685 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
16686 (Funify_charset): Adjust for the change of Funify_charset.
16687
16688 * charset.c (charset_ordered_list_tick): New variable.
16689 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
16690 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
16691 deunify intead of unify a charset.
16692 (string_xstring_p): Add `const' to local variables.
16693 (find_charsets_in_text): Add `const' to arguments and local variables.
16694 (encode_char): Adjust for the change of Funify_charset. Fix
16695 detecting of invalid code.
16696 (Fset_charset_priority): Increment charset_ordered_list_tick.
16697 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
16698 and TO_CODE.
16699
16700 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
16701 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
16702 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
16703 (decode_coding_ccl, consume_chars)
16704 (Ffind_coding_systems_region_internal)
16705 (Fcheck_coding_systems_region): Add `const' to local variables.
16706
16707 * print.c (print_object): Use octal form for printing the
16708 contents of a bool vector.
16709
167102008-02-01 Dave Love <fx@gnu.org>
16711
16712 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
16713 <version == 20>: Refuse to load.
16714
167152008-02-01 Dave Love <fx@gnu.org>
16716
16717 * fns.c: Move coding.h.
16718 (Qcodeset, Qdays, Qmonths): New.
16719 (concat): Use CHARACTERP instead of INTEGERP.
16720 (Flocale_codeset): Delete.
16721 (Flanginfo): New function.
16722 (syms_of_fns): Change accordingly.
16723
16724 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
16725
167262008-02-01 Dave Love <fx@gnu.org>
16727
16728 * casetab.c (init_casetab_once, init_casetab_once): Fix
16729 CHAR_TABLE_SET call.
16730
16731 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
16732
16733 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
16734
16735 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
16736 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
16737 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
16738
16739 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
16740
16741 * coding.c (ENCODE_DESIGNATION, decode_eol)
16742 (make_conversion_work_buffer, code_conversion_restore)
16743 (Fdefine_coding_system_internal): Convert Lisp types.
16744 (code_conversion_restore): Use EQ, not ==.
16745 (Fencode_coding_string): Fix code_convert_string call.
16746
16747 * coding.h (code_convert_region): Fix prototype.
16748
16749 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
16750
16751 * fontset.c (fontset_ref, fontset_set, fs_load_font)
16752 (Ffontset_info): Convert Lisp types.
16753
16754 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
16755
16756 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
16757
16758 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
16759
16760 * chartab.c: Include "...h", not <...h> in some cases.
16761
16762 * callproc.c (Fcall_process): Remove unused variables.
16763
167642008-02-01 Dave Love <fx@gnu.org>
16765
16766 * coding.c (Fset_coding_system_priority): Allow null arg list.
16767
167682008-02-01 Dave Love <fx@gnu.org>
16769
16770 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
16771 (Fself_insert_and_exit): Use CHARACTERP.
16772
16773 * callproc.c (Fcall_process): Remove unused vars.
16774
16775 * xterm.c (XTread_socket): Add extra dead keysyms.
16776
16777 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
16778
16779 * dispextern.h: Remove prototypes for redraw_frame,
16780 redraw_garbaged_frames.
16781
16782 * cmds.c (Fself_insert_command): Use CHARACTERP.
16783
16784 * chartab.c (make_sub_char_table): Remove unused var.
16785 (Fset_char_table_default, Fmap_char_table): Doc fix.
16786
16787 * keymap.c (access_keymap): Remove generic char code.
16788 (push_key_description): Use CHARACTERP.
16789
167902008-02-01 Dave Love <fx@gnu.org>
16791
16792 * charset.c: Doc fixes.
16793 (Funify_charset): Extra checking.
16794
167952008-02-01 Dave Love <fx@gnu.org>
16796
16797 * lread.c: Remove some unused variables.
16798 (safe_to_load_p): If safe, return the magic number version byte.
16799 (Fload): Maybe use load-with-code-conversion.
16800
168012008-02-01 Kenichi Handa <handa@m17n.org>
16802
16803 * category.c (Fmodify_category_entry): Don't modify the contents
16804 of category_set for characters out of the range. Avoid
16805 unnecessary modification.
16806
16807 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
16808 Vchar_unify_table. The default value of the table is now nil.
16809
16810 * character.c (syms_of_character): Setup Vchar_width_table for
16811 eight-bit-control and raw-byte chars.
16812
16813 * charset.h (enum define_charset_arg_index): Delete
16814 charset_arg_parents and add charset_arg_subset and
16815 charset_arg_superset.
16816 (enum charset_attr_index): Delete charset_parents and add
16817 charset_subset and charset_superset.
16818 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
16819 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
16820 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
16821 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
16822 (CHARSET_SUPERSET): New macros.
16823 (charset_work): Extern it.
16824 (ENCODE_CHAR): Use charset_work.
16825 (CHAR_CHARSET_P): Adjust for the change of encoder format.
16826 (map_charset_chars): Extern it.
16827
16828 * charset.c (load_charset_map): Set the default value of encoder
16829 and deunifier char-tables to nil.
16830 (map_charset_chars): Change argument. Change callers. Use
16831 map_char_table_for_charset instead of map_char_table.
16832 (Fmap_charset_chars): New optional args from_code and to_code.
16833 (Fdefine_charset_internal): Adjust for the change of
16834 `define-charset' (:parents -> :subset or :superset).
16835 (charset_work): New variable.
16836 (encode_char, syms_of_charset): Adjust for the change of
16837 Fdefine_charset_internal.
16838 (Ffind_charset_string): Setup the vector `charsets' correctly.
16839
16840 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
16841 the previous change.
16842 (char_table_ref_and_range): Adjust for the above change.
16843 (map_sub_char_table_for_charset): New function.
16844 (map_char_table_for_charset): New function.
16845
16846 * keymap.c (describe_vector): Handle a char-table directly here.
16847 (describe_char_table): Delete.
16848
16849 * lisp.h (map_charset_chars): Delete.
16850
168512008-02-01 Dave Love <fx@gnu.org>
16852
16853 * fns.c (count_combining): Comment out (unused).
16854 (Flocale_codeset): New.
16855 (syms_of_fns): Defsubr it.
16856
16857 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
16858 (size_t): Remove.
16859
168602008-02-01 Dave Love <fx@gnu.org>
16861
16862 * Makefile.in (chartab.o): Depend on charset.h.
16863
168642008-02-01 Kenichi Handa <handa@m17n.org>
16865
16866 * character.c (syms_of_character): Set the default value of
16867 Vprintable_chars to Qnil.
16868
168692008-02-01 Dave Love <fx@gnu.org>
16870
16871 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
16872
168732008-02-01 Kenichi Handa <handa@m17n.org>
16874
16875 * charset.c (load_charset_map): Handle the case that from < to
16876 correctly.
16877
16878 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
16879 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
16880 Pay attention to raw-8-bit chars.
16881
168822008-02-01 Kenichi Handa <handa@m17n.org>
16883
16884 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
16885 It is not bytecompiled now.
16886
16887 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
16888 (charset_jisx0208): New variables.
16889 (Fdefine_charset_internal): Setup them if appropriate.
16890 (init_charset_once): Initialize them to -1.
16891
16892 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
16893 (charset_jisx0208): Extern them.
16894
16895 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
16896 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
16897 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
16898 (setup_iso_safe_charsets): Fix arguments to Fassq.
16899 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
16900 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
16901 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
16902 (encode_coding_iso_2022): Change the 1st arg to
16903 ENCODE_ISO_CHARACTER to a variable.
16904
169052008-02-01 Kenichi Handa <handa@m17n.org>
16906
16907 * charset.h (enum define_charset_arg_index): New enums
16908 charset_arg_min_code and charset_arg_max_code.
16909 (struct charset): New member char_index_offset.
16910
16911 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
16912 Take charset->char_index_offset into account.
16913 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
16914 args[charset_arg_max_code]. Setup charset.char_index_offset.
16915 (syms_of_charset): Fix args to Fdefine_charset_internal.
16916
169172008-02-01 Dave Love <fx@gnu.org>
16918
16919 * coding.c (decode_coding_utf_8): Reject overlong sequences.
16920
169212008-02-01 Dave Love <fx@gnu.org>
16922
16923 * coding.c: Doc fixes.
16924 (Fcoding_system_aliases): Fix return value.
16925 (Qmac): Remove (duplicated) definition.
16926
169272008-02-01 Dave Love <fx@gnu.org>
16928
362654a6
JB
16929 * charset.c (Fcharset_priority_list, Fset_charset_priority):
16930 New functions.
aac0c6e3
MR
16931
16932 * character.c (Fstring): Doc fix.
16933
16934 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
16935
362654a6 16936 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
16937 (font-encoding-alist): Doc fix.
16938
169392008-02-01 Dave Love <fx@gnu.org>
16940
16941 * term.c (costs_set): Declare static, non-initialized for pcc.
16942 (encode_terminal_code): Remove unused var.
16943
16944 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
16945 for K&R.
16946
16947 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
16948
16949 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
16950 (suffixes): Move out of make_subsidiaries for K&R.
16951
16952 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
16953
16954 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
16955
169562008-02-01 Dave Love <fx@gnu.org>
16957
16958 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
16959
16960 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
16961
169622008-02-01 Yong Lu <lyongu@asia-infonet.com>
16963
16964 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
16965
16966 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
16967
169682008-02-01 Kenichi Handa <handa@m17n.org>
16969
16970 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
16971 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
16972
169732008-02-01 Kenichi Handa <handa@m17n.org>
16974
16975 * coding.c (decode_coding_charset): Adjust for the change of
16976 Fdefine_coding_system_internal.
16977 (Fdefine_coding_system_internal): For a coding system of
16978 `charset' type, store a list of charset IDs in
16979 `charset_attr_charset_valids' element of coding attributes.
16980
169812008-02-01 Kenichi Handa <handa@m17n.org>
16982
16983 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
16984 (emacs_mule_char): New arg src. Delete arg `composition'. Change
16985 caller. Handle 2-byte and 3-byte charsets correctly.
16986 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
16987 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
16988 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
16989 (DECODE_EMACS_MULE_21_COMPOSITION): Call
16990 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
16991 sequence.
16992 (decode_coding_emacs_mule): Handle composition correctly. Rewind
16993 `src' and `consumed_chars' correctly before calling emacs_mule_char.
16994 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
16995 and alt&rule composition.
16996 (decode_coding_iso_2022): Handle composition correctly.
16997 (init_coding_once): Setup emacs_mule_bytes for private charsets.
16998
16999 * charset.c (Fdefine_charset_internal): Fix bug for the case of
17000 re-defining a charset. If the charset has :emacs-mule-id, setup
17001 emacs_mule_bytes.
17002 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
17003
170042008-02-01 Kenichi Handa <handa@m17n.org>
17005
17006 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
17007 (encode_coding_big5, encode_coding_charset): If coding requires safe
17008 encoding, produce a character specified by
17009 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
17010
170112008-02-01 Dave Love <fx@gnu.org>
17012
17013 * xterm.c (XSetIMValues): Declare.
17014
17015 * process.c: Conditionally include sys/wait.h, pty.h.
17016
17017 * print.c (print_object): Fix print format for 64-bit systems.
17018
17019 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
17020
17021 * buffer.c (emacs_strerror): Declare.
17022
17023 * fontset.c (Fclear_face_cache): Declare.
17024 (accumulate_font_info): Comment-out (unused).
17025 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
17026 variables.
17027
17028 * character.h (string_escape_byte8): Declare.
17029
17030 * charset.c (load_charset_map, load_charset_map_from_file): Remove
17031 unused vars.
17032 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
17033 (Fmap_charset_chars): Doc fix.
17034
17035 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
17036 (Fset_coding_system_priority, Fset_coding_system_priority)
17037 (Fdefine_coding_system_internal): Doc fix.
17038
170392008-02-01 Dave Love <fx@gnu.org>
17040
17041 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
17042
170432008-02-01 Kenichi Handa <handa@m17n.org>
17044
17045 * character.c (string_escape_byte8): Make multibyte string with
17046 correct size.
17047
17048 * charset.c (Fmake_char): Delete unnecessary code.
17049
170502008-02-01 Kenichi Handa <handa@m17n.org>
17051
17052 * xfns.c (x_encode_text): Allocate coding.destination here, and
17053 call encode_coding_object with dst_object Qnil.
17054
17055 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
17056 multibyte form correctly.
17057
17058 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
17059 against Vfont_encoding_alist.
17060
17061 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
17062 handling of charset list.
17063 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
17064 (decode_coding_object): Move point to coding->dst_pos before
17065 calling post-read-conversion function.
17066 (encode_coding_object): Give correct arguments to
17067 pre-write-conversion. Ignore the return value of
17068 pre-write-conversion function. Pay attention to the case that
17069 pre-write-conversion changes the current buffer. If dst_object is
17070 Qt, even if coding->src_bytes is zero, allocate at least one byte
17071 to coding->destination.
17072
17073 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
17074
17075 * charset.c (Fmake_char): Make it more backward compatible.
17076 (Fmap_charset_chars): Fix docstring.
17077
170782008-02-01 Dave Love <fx@gnu.org>
17079
17080 * coding.c: Doc fixes.
17081 (Fdefine_coding_system_alias): Use names, not symbols, in
17082 coding-system-alist.
17083
170842008-02-01 Kenichi Handa <handa@m17n.org>
17085
17086 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
17087 of calling free_realized_face.
17088
170892008-02-01 Yong Lu <lyongu@asia-infonet.com>
17090
17091 * charset.c (read_hex): Don't treat SPC as a comment starter.
17092 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
17093 (Fdecode_char): Fix typo.
17094
170952008-02-01 Kenichi Handa <handa@m17n.org>
17096
17097 * charset.h (struct charset): New member `code_space_mask'.
17098
17099 * coding.c (coding_set_source): Delete the local variable beg_byte.
17100 (encode_coding_charset, Fdefine_coding_system_internal):
17101 Delete the local variable charset.
17102 (Fdefine_coding_system_internal): Setup
17103 attrs[coding_attr_charset_valids] correctly.
17104
17105 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
17106 member to check if CODE is valid or not.
17107 (Fdefine_charset_internal): Initialize `code_space_mask' member.
17108 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
17109 is within the range of charset->min_code and carset->max_code.
17110
171112008-02-01 Dave Love <fx@gnu.org>
17112
17113 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
17114
17115 * dispextern.h (generate_ascii_font): Fix return type.
17116
17117 * xfaces.c (generate_ascii_font): Fix arg declaration.
17118
17119 * coding.c (coding_inherit_eol_type)
17120 (Fset_terminal_coding_system_internal)
17121 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
17122
171232008-02-01 Kenichi Handa <handa@m17n.org>
17124
17125 * coding.c (decode_coding_charset, encode_coding_charset): Handle
17126 multiple charsets correctly.
17127
171282008-02-01 Kenichi Handa <handa@m17n.org>
17129
17130 * search.c (boyer_moore): Fix handling of multibyte character
17131 translation.
17132
17133 * xdisp.c (display_mode_element): When the variable `elt' is
17134 changed, update `this' and `lisp_string'.
17135
171362008-02-01 Kenichi Handa <handa@m17n.org>
17137
17138 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
17139
17140 * callproc.c (Fcall_process): Be sure to give the current buffer
17141 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
17142
17143 * charset.c (struct charset_map_entries): New struct.
17144 (load_charset_map): Rename from parse_charset_map. New args
17145 entries and n_entries. Change caller.
17146 (load_charset_map_from_file): Rename from load_charset_map.
17147 Change caller. New arg control_flag. Call load_charset_map at
17148 the tail.
17149 (load_charset_map_from_vector): New function.
17150 (Fdefine_charset_internal): Setup charset.compact_codes_p.
17151 (encode_char): If the charset is compact, change a character index
17152 to a code point.
17153
17154 * coding.c (coding_alloc_by_making_gap): Check the case that the
17155 source and destination are the same correctly.
17156 (decode_coding_raw_text): Set coding->consumed_char and
17157 coding->consumed to 0.
17158 (produce_chars): If coding->chars_at_source is nonzero, update
17159 coding->consumed_char and coding->consumed before calling
17160 alloc_destination.
17161 (Fdefine_coding_system_alias): Register ALIAS in
17162 Vcoding_system_alist.
17163 (syms_of_coding): Define `no-conversion' coding system at the tail.
17164
17165 * fileio.c (Finsert_file_contents): Set coding_system instead of
17166 val. If the current buffer is multibyte, always call
17167 decode_coding_gap.
17168
17169 * xfaces.c (try_font_list): Give higher priority to fontset's
17170 family than face's family.
17171
171722008-02-01 Kenichi Handa <handa@m17n.org>
17173
17174 * callproc.c (Fcall_process): Be sure to give the current buffer
17175 to decode_coding_c_string.
17176
17177 * xfaces.c (try_font_list): Give a family specified in a fontset
17178 higher priority than a family specified in a face.
17179
171802008-02-01 Kenichi Handa <handa@m17n.org>
17181
17182 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
17183 Fix arguments to insert_from_buffer.
17184
17185 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
17186
171872008-02-01 Kenichi Handa <handa@m17n.org>
17188
17189 * coding.c (produce_chars): Set the variable `multibytep' correctly.
17190 (decode_coding_gap): Set coding->dst_multibyte correctly.
17191
171922008-02-01 Kenichi Handa <handa@m17n.org>
17193
17194 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
17195 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
17196 (encode_coding_utf_16): Substitute coding->default_char for
17197 non-Unicode characters.
17198 (decode_coding): Don't call record_insert here.
17199 (setup_coding_system): Initialize `surrogate' of
17200 coding->spec.utf_16 to 0.
17201 (EMIT_ONE_BYTE): Fix for multibyte case.
17202
17203 * insdel.c (insert_from_gap): Call record_insert.
17204
172052008-02-01 Kenichi Handa <handa@m17n.org>
17206
17207 * casefiddle.c (casify_region): Fix multibyte case.
17208
17209 * character.c (c_string_width): Add return type `int'.
17210 (char_string_with_unification): Delete arg ADVANCED.
17211
17212 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
17213 (CHAR_STRING): Adjust for the change of char_string_with_unification.
17214 (CHAR_STRING_ADVANCE): Make it do-while statement.
17215
17216 * chartab.c (sub_char_table_set_range): Optimize for the case
17217 DEPTH == 3. Add workaround code for a GCC optimization bug.
17218
17219 * charset.c (parse_charset_map): Remove an unused variable.
17220
17221 * coding.c: Delete unused variables.
17222
17223 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
17224 earlier. If inserted is zero and the coding system doesn't
17225 require flushing, don't call decode_coding_gap.
17226
17227 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
17228
172292008-02-01 Kenichi Handa <handa@m17n.org>
17230
17231 The following changes are for using Unicode as an internal
17232 character model, and use UTF-8 format for buffer/string
17233 representation.
17234
17235 * .gdbinit (xchartable): Adjust for the change of char table structure.
17236 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
17237
17238 * Makefile.in (obj): Add character.o and chartab.o.
17239 (lisp, shortlisp): Remove utf-8.elc.
17240 (*.o): For many files, change dependency on charset.h to
17241 character.h, and add dependency on character.h.
17242 (character.o, chartab.o): New targets.
17243
17244 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
17245 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
17246 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
17247 of "charset.h".
17248
17249 * dired.c, filelock.c: Include "character.h".
17250
17251 * alloc.c: Include "character.h" instead of "charset.h".
17252 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
17253 (syms_of_alloc): Remove defsubr for Smake_char_table.
17254
17255 * buffer.c: Include "character.h" instead of "charset.h", don't
17256 include "coding.h".
17257 (Fset_buffer_multibyte): Adjust for UTF-8.
17258
17259 * buffer.h: EXFUN Fbuffer_live_p.
17260
17261 * callproc.c: Include "character.h" instead of "charset.h".
17262 (Fcall_process): Big change for the new code-conversion APIs.
17263
17264 * casetab.c: Include "character.h" instead of "charset.h".
17265 (set_canon, set_identity, shuffle): Adjust for the new
17266 map_char_table spec.
17267 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
17268 accessing the char table structure.
17269
17270 * chartab.c: New file that implements char table.
17271
17272 * category.c: Include "character.h".
17273 (copy_category_entry): New function.
17274 (copy_category_table): Call map_char_table and copy_category_entry.
17275 (Fmake_category_table): Initialize all top-level slots.
17276 (char_category_set): New function.
17277 (modify_lower_category_set): Delete.
17278 (Fmodify_category_entry): Call char_table_ref_and_range.
17279
17280 * category.h (CATEGORY_SET): Just call char_category_set.
17281
17282 * ccl.c: Include "character.h".
17283 (Qccl, Qcclp): New variables.
17284 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
17285 it's less than 256.
17286 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
17287 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
17288 and DST type.
17289 (ccl_driver): Change types of argument, adjust code accordingly.
17290 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
17291 ccl_driver.
17292 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
17293
17294 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
17295 New members src_multibyte, dst_multibyte, consumed, and produced.
17296 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
17297 (CODING_SPEC_CCL_PROGRAM): New macro.
17298 (ccl_driver): Update prototype.
17299 (Qccl, Qcclp, Fccl_program_p): Extern them.
17300 (CHECK_CCL_PROGRAM): New macro.
17301
17302 * character.c, character.h, chartab.c: New files.
17303
17304 * charset.c: Mostly re-written. Move character and multibyte sequence
17305 handling codes to character.c.
17306
17307 * charset.h: Mostly re-written. Move character and multibyte sequence
17308 handling codes to character.h.
17309
17310 * coding.c, coding.h: Mostly re-written.
17311
17312 * composite.c: Include "character.h" instead of "charset.h".
17313 (CHAR_WIDTH): Move to character.h.
17314 (HASH_KEY, HASH_VALUE): Delete.
17315
17316 * composite.h (enum composition_method): Change order of enumeration
17317 symbols.
17318
17319 * data.c: Include "character.h" instead of "charset.h".
17320 (Faref): Call CHAR_TABLE_REF for a char table.
17321 (Faset): Call CHAR_TABLE_SET for a char table.
17322
17323 * dispextern.h (free_realized_face, check_face_attribytes)
17324 (generate_ascii_font): Extern them.
17325 (free_realized_multibyte_face): Delete extern.
17326
17327 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
17328 table structure.
17329
17330 * editfns.c: Include "character.h" instead of "charset.h".
17331 (Fchar_to_string): Always call CHAR_STRING.
17332
17333 * emacs.c (main): Call init_charset_once, init_charset,
17334 syms_of_chartab, and syms_of_character.
17335
17336 * fileio.c: Include "character.h" instead of "charset.h".
17337 (Finsert_file_contents): Big change for the new code-conversion API.
17338 (choose_write_coding_system, Fwrite_region): Likewise.
17339 (build_annotations_2): Delete.
17340 (e_write): Big change for the new code-conversion API.
17341
17342 * fns.c: Include "character.h" instead of "charset.h".
17343 (copy_sub_char_table): Move to chartab.c.
17344 (Fcopy_sequence): Call copy_char_table for a char table.
17345 (concat): Delete codes calling count_multibyte.
17346 (string_char_to_byte, string_byte_to_char): Adjust for the new
17347 multibyte form.
17348 (internal_equal): Adjust for the change of char table structure.
17349 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
17350 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
17351 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
17352 (char_table_translate, optimize_sub_char_table)
17353 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
17354 chartab.c.
17355 (char_table_ref_and_index): Delete.
17356 (HASH_KEY, HASH_VALUE): Move to lisp.h.
17357 (Fmd5): Call preferred_coding_system instead of accessing
17358 Vcoding_category_list. Adjust for the new code-conversion API.
17359 (syms_of_fns): Move defsubr for char table related functions to
17360 chartab.c.
17361
17362 * fontset.c: Mostly re-written.
17363
17364 * fontset.h (struct font_info): Change type of the member encoding_type.
17365 (enum FONT_SPEC_INDEX): New enum.
17366 (fontset_font_pattern, fs_load_font): Update prototype.
17367 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
17368
17369 * indent.c: Include "character.h" instead of "charset.h".
17370 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
17371
17372 * insdel.c: Include "character.h" instead of "charset.h".
17373 (copy_text): Don't refer to Vnonascii_translation_table.
17374 (insert_from_gap): New function.
17375
17376 * keyboard.c: Include "character.h" instead of "charset.h".
17377 (command_loop_1): Never call direct_output_forward_char before
17378 a non-ASCII character.
17379 (read_char): If Vkeyboard_translate_table is a char table, always
17380 translate a character.
17381
17382 * keymap.c: Include "character.h".
17383 (store_in_keymap): Handle the case that IDX is a cons.
17384 (Fdefine_key): Handle the case that KEY is a cons and the car part
17385 is also a cons (range).
17386 (push_key_description): Adjust for the new character code.
17387 (describe_vector): Call describe_char_table for a char table.
17388 (describe_char_table): New function.
17389
17390 * keymap.h (describe_char_table): Extern it.
17391
17392 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
17393 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
17394 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
17395 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
17396 Delete.
17397 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
17398 structure.
17399 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
17400 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
17401 (CHARTAB_SIZE_BITS_3): New macros.
17402 (chartab_size): Extern it.
17403 (struct Lisp_Char_Table): Re-design.
17404 (struct Lisp_Sub_Char_Table): New structure.
17405 (HASH_KEY, HASH_VALUE): Move from fns.c.
17406 (CHARACTERBITS): Define as 22.
17407 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
17408 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
17409 (GC_SUB_CHAR_TABLE_P): New macro.
17410 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
17411 (code_convert_string_norecord): Deleted extern.
17412 (init_character_once, syms_of_character, init_charset)
17413 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
17414
17415 * lread.c: Include "character.h".
17416 (read_multibyte): New arg NBYTES.
17417 (read_escape): Change the meaning of returned *BYTEREP.
17418 (to_multibyte): Delete.
17419 (read1): Adjust the handling of char table and string.
17420
17421 * print.c: Include "character.h" instead of "charset.h".
17422 (print_string): Convert 8-bit raw bytes to octal form by
17423 string_escape_byte8.
17424 (print_object): Adjust for the new multibyte form. Print 8-bit
17425 raw bytes always in octal form. Handle sub char table correctly.
17426
17427 * process.c: Include "character.h" instead of "charset.h".
17428 (read_process_output, send_process): Adjust for the new
17429 code-conversion API.
17430
17431 * puresize.h (BASE_PURESIZE): Increase.
17432
17433 * regex.c: Include "character.h" instead of "charset.h".
17434 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
17435 (regex_compile): Accept a range whose starting and ending
17436 character have different leading bytes.
17437 (analyse_first): Adjust for the above change.
17438
17439 * search.c: Include "character.h" instead of "charset.h".
17440 (search_buffer, boyer_moore): Adjust for the new multibyte form.
17441 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
17442
17443 * syntax.c: Include "character.h" instead of "charset.h".
17444 (syntax_parent_lookup): Delete.
17445 (Fmodify_syntax_entry): Accept a cons as CHAR.
17446 (skip_chars): Adjust for the new multibyte form.
17447 (init_syntax_once): Call char_table_set_range instead of directly
17448 accessing the structure of a char table.
17449
17450 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
17451 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
17452 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
17453 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
17454
17455 * term.c: Include "buffer.h" and "character.h".
17456 (encode_terminal_code, write_glyphs): Adjust for the new
17457 code-conversion API.
17458 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
17459
17460 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
17461
17462 * xdisp.c: Include "character.h".
17463 (get_next_display_element): Adjust for the new multibyte form.
17464 (disp_char_vector): Adjust for the new char table structure.
17465 (decode_mode_spec_coding): Adjust for the new structure of
17466 coding system.
17467 (decode_mode_spec): Adjust for the new code-conversion API.
17468
17469 * xfaces.c: Include "character.h" instead of "charset.h".
17470 (load_face_font): Adjust for the change of choose_face_font and
17471 FS_LOAD_FONT.
17472 (generate_ascii_font): New function.
17473 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
17474 (set_font_frame_param): Adjust for the change of choose_face_font.
17475 (free_realized_face): Make it public.
17476 (free_realized_faces_for_fontset): Rename from
17477 free_realized_multibyte_face. Free also faces realized for ASCII.
17478 (choose_face_font): Change arguments. Adjust for the change of
17479 fontset_font_pattern and FS_LOAD_FONT.
17480
17481 * xfns.c: Include "character.h".
17482 (x_encode_text): Adjust for the new code-conversion API.
17483
17484 * xselect.c: Don't include "charset.h".
17485 (selection_data_to_lisp_data): Adjust for the new code conversion API.
17486
17487 * xterm.c: Include "character.h".
17488 (x_encode_char): New argument CHARSET. Change caller.
17489 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
17490 Call ENCODE_CHAR instead of SPLIT_CHAR.
17491 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
17492 CHAR_WIDTH instead of CHARSET_WIDTH.
17493 (XTread_socket): Adjust for the new code-conversion API.
17494 (x_new_font): Adjust for the change of FS_LOAD_FONT.
17495 (x_load_font): Adjust for the change of struct font.
17496
174972008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
17498
17499 * xfaces.c (face_at_buffer_position): Remove unused vars.
17500
175012008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17502
17503 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
17504 Fix overflow checking.
17505
175062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
17507
17508 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
17509 Cancel previous change.
17510
175112008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17512
17513 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
17514 ccl->eight_bit_control. Fix check for buffer overflow.
17515 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
17516 (ccl_driver): Initialize extra_bytes to 0.
17517
175182008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
17519
17520 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
17521 return it ORed with ctrl_modifier.
17522
175232008-01-29 Miles Bader <miles@gnu.org>
17524
17525 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
17526
175272008-01-28 Jason Rumney <jasonr@gnu.org>
17528
17529 * w32.c (stat): Don't double check for networked drive.
17530
175312008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
17532
17533 * window.c (run_window_configuration_change_hook): New function.
17534 Code extracted from set_window_buffer. Set the selected frame.
17535 (set_window_buffer): Use it.
17536 * window.h (run_window_configuration_change_hook): Declare.
17537 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
17538
17539 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
17540
175412008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
17542
17543 * Makefile.in: Remove references to unused macros.
17544
175452008-01-26 Eli Zaretskii <eliz@gnu.org>
17546
17547 * w32.c (g_b_init_get_sid_sub_authority)
17548 (g_b_init_get_sid_sub_authority_count): New static variables.
17549 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
17550 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
17551 (init_user_info): Use them to retrieve uid and gid.
17552 Use 500/513, the Windows defaults, as Administrator's uid/gid.
17553 (fstat): Use pw_uid and pw_gid from the_passwd structure for
17554 st_uid and st_gid of the file.
17555
175562008-01-26 Jason Rumney <jasonr@gnu.org>
17557
17558 * w32.c (logon_network_drive): New function.
17559 (stat): Use it.
17560
175612008-01-26 Chong Yidong <cyd@stupidchicken.com>
17562
17563 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
17564 invisible text covered with an ellipsis.
17565
175662008-01-25 Richard Stallman <rms@gnu.org>
17567
17568 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
17569 jump back to beginning. Move some other initializations after that.
17570 (Qwindow_text_change_functions, Vwindow_text_change_functions):
17571 New variables.
17572 (syms_of_xdisp): Init them.
17573
17574 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
17575
17576 * buffer.c (reset_buffer_local_variables):
17577 Implement `permanent-local-hook'.
17578 (Qpermanent_local_hook): New variable.
17579 (syms_of_buffer): Init and staticpro it.
17580
175812008-01-25 Michael Albinus <michael.albinus@gmx.de>
17582
17583 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
17584
175852008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
17586
17587 * fns.c (Fclrhash): Return TABLE.
17588
175892008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17590
17591 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
17592 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
17593 is set even without positional changes.
17594 (x_scroll_bar_clear): Set bar->redraw_needed_p.
17595
17596 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
17597
175982008-01-23 Jason Rumney <jasonr@gnu.org>
17599
17600 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
17601
17602 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
17603 the unicode range available in MULE by locale-coding-system.
17604 Improve dbcs lead byte detection. Set event timestamp and modifiers
17605 earlier.
17606
176072008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17608
17609 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
17610 [MAC_OSX] (init_mac_osx_environment): Initialize it.
17611 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
17612 when used on child processes.
17613
176142008-01-21 Michael Albinus <michael.albinus@gmx.de>
17615
17616 * dbusbind.c (Fdbus_method_return_internal): Rename from
17617 Fdbus_method_return.
17618 (Fdbus_unregister_object): Move to dbus.el.
17619 (Fdbus_call_method, Fdbus_method_return_internal)
17620 (Fdbus_send_signal): Improve debug messages.
17621
176222008-01-20 Martin Rudalics <rudalics@gmx.at>
17623
17624 * undo.c (undo_inhibit_record_point): New variable.
17625 (syms_of_undo): Initialize it.
17626 (record_point): Don't record point when undo_inhibit_record_point
17627 is set.
17628
176292008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
17630
17631 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
17632
17633 * xdisp.c (Qauto_hscroll_mode): New var.
17634 (syms_of_xdisp): Initialize it.
17635 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
17636 window's buffer.
17637 (hscroll_windows): Don't check automatic_hscrolling_p here.
17638
17639 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
17640 vscroll if we're setting window-buffer to the value it already has.
17641
176422008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
17643
17644 * m/intel386.h: Remove references to XENIX.
17645
176462008-01-17 Andreas Schwab <schwab@suse.de>
17647
17648 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
17649 instead of HAVE_X86_64_LIB64_DIR.
17650 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
17651
176522008-01-17 Glenn Morris <rgm@gnu.org>
17653
17654 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
17655 to HAVE_X86_64_LIB64_DIR.
17656
176572008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
17658
17659 * s/irix3-3.h:
17660 * s/irix4-0.h:
17661 * s/386-ix.h:
17662 * s/domain.h:
17663 * s/hpux9-x11r4.h:
17664 * s/hpux9shxr4.h: Remove files for systems no longer supported.
17665
17666 * sysdep.c: Remove code containing references to symbols defined
17667 by unsupported systems.
17668
176692008-01-16 Glenn Morris <rgm@gnu.org>
17670
17671 * coding.c (select-safe-coding-system-function): Doc fix.
17672
176732008-01-15 Glenn Morris <rgm@gnu.org>
17674
17675 * config.in: Revert 2008-01-13 change: this is a generated file.
17676
176772008-01-13 Tom Tromey <tromey@redhat.com>
17678
17679 * lisp.h: Fix typo.
17680
176812008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17682
17683 * m/sequent-ptx.h:
17684 * m/sequent.h:
17685 * s/ptx.h:
17686 * s/ptx4-2.h:
17687 * s/ptx4.h: Remove files for systems no longer supported.
17688
17689 * callproc.c (Fcall_process): Fix previous change.
17690
176912008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
17692
17693 * unexsunos4.c: Remove file, system not supported anymore.
17694
17695 * m/mips.h:
17696 * m/intel386.h:
17697 * callproc.c:
17698 * config.in:
17699 * ecrt0.c:
17700 * emacs.c:
17701 * fileio.c:
17702 * frame.c:
17703 * getpagesize.h:
17704 * keyboard.c:
17705 * lread.c:
17706 * process.c:
17707 * puresize.h:
17708 * sysdep.c:
17709 * systty.h:
17710 * syswait.h:
17711 * unexec.c:
17712 * xdisp.c:
17713 * alloc.c: Remove code containing references to symbols defined by
17714 unsupported systems.
17715
177162008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
17717
17718 * coding.c (detect_coding_mask): Fix previous change.
17719
177202008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
17721
17722 * coding.c (detect_coding_iso2022): New arg
17723 latin_extra_code_state. Allow Latin extra codes only
17724 when *latin_extra_code_state is nonzero.
17725 (detect_coding_mask): If there is a NULL byte, detect the encoding
17726 as UTF-16 or binary. If Latin extra codes exist, detect the
17727 encoding as ISO-2022 only when there's no other proper encoding is
17728 found.
17729
177302008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17731
17732 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
17733 #ifdef MAC_OS.
17734
177352008-01-08 Richard Stallman <rms@gnu.org>
17736
17737 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
17738
177392008-01-06 Nick Roberts <nickrob@snap.net.nz>
17740
17741 * keyboard.c (parse_menu_item): Don't enclose key bindings on
17742 menu bar in parentheses.
17743
177442008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
17745
17746 * m/7300.h:
17747 * m/acorn.h:
17748 * m/alliant-2800.h:
17749 * m/alliant.h:
17750 * m/alliant1.h:
17751 * m/alliant4.h:
17752 * m/altos.h:
17753 * m/amdahl.h:
17754 * m/apollo.h:
17755 * m/att3b.h:
17756 * m/aviion-intel.h:
17757 * m/aviion.h:
17758 * m/celerity.h:
17759 * m/clipper.h:
17760 * m/cnvrgnt.h:
17761 * m/convex.h:
17762 * m/cydra5.h:
17763 * m/delta88k.h:
17764 * m/dpx2.h:
17765 * m/dual.h:
17766 * m/elxsi.h:
17767 * m/f301.h:
17768 * m/gould-np1.h:
17769 * m/gould.h:
17770 * m/i860.h:
17771 * m/ibmps2-aix.h:
17772 * m/ibmrt-aix.h:
17773 * m/ibmrt.h:
17774 * m/irist.h:
17775 * m/is386.h:
17776 * m/isi-ov.h:
17777 * m/mega68.h:
17778 * m/mg1.h:
17779 * m/news-r6.h:
17780 * m/news-risc.h:
17781 * m/news.h:
17782 * m/nh3000.h:
17783 * m/nh4000.h:
17784 * m/ns16000.h:
17785 * m/ns32000.h:
17786 * m/nu.h:
17787 * m/orion.h:
17788 * m/orion105.h:
17789 * m/paragon.h:
17790 * m/pfa50.h:
17791 * m/plexus.h:
17792 * m/pyramid.h:
17793 * m/pyrmips.h:
17794 * m/sh3el.h:
17795 * m/sps7.h:
17796 * m/sr2k.h:
17797 * m/stride.h:
17798 * m/sun1.h:
17799 * m/sun2.h:
17800 * m/sun3-68881.h:
17801 * m/sun3-fpa.h:
17802 * m/sun3-soft.h:
17803 * m/sun3.h:
17804 * m/sun386.h:
17805 * m/symmetry.h:
17806 * m/tad68k.h:
17807 * m/tahoe.h:
17808 * m/targon31.h:
17809 * m/tek4300.h:
17810 * m/tekxd88.h:
17811 * m/tower32.h:
17812 * m/tower32v3.h:
17813 * m/ustation.h:
17814 * m/wicat.h:
17815 * m/xps100.h:
17816 * s/cxux.h:
17817 * s/cxux7.h:
17818 * s/dgux.h:
17819 * s/dgux4.h:
17820 * s/dgux5-4-3.h:
17821 * s/dgux5-4r2.h:
17822 * s/esix.h:
17823 * s/esix5r4.h:
17824 * s/hiuxmpp.h:
17825 * s/hiuxwe2.h:
17826 * s/iris3-5.h:
17827 * s/iris3-6.h:
17828 * s/isc2-2.h:
17829 * s/isc3-0.h:
17830 * s/isc4-0.h:
17831 * s/isc4-1.h:
17832 * s/newsos5.h:
17833 * s/newsos6.h:
17834 * s/osf1.h:
17835 * s/osf5-0.h:
17836 * s/riscix1-1.h:
17837 * s/riscix12.h:
17838 * s/sco4.h:
17839 * s/sco5.h:
17840 * s/sunos4-0.h:
17841 * s/sunos4-1.h:
17842 * s/sunos413.h:
17843 * s/sunos4shr.h:
17844 * s/umax.h:
17845 * s/unipl5-2.h:
17846 * s/xenix.h:
17847 * cxux-crt0.s:
17848 * unexapollo.c:
17849 * unexconvex.c:
17850 * unexenix.c:
17851 * unexsni.c: Remove files for systems no longer supported.
17852
17853 * m/intel386.h: Remove references to unsupported systems.
17854
17855 * w32.c (get_emacs_configuration): Remove reference to i860.
17856
17857 * sysdep.c: Remove dead code.
17858
178592008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
17860
17861 * s/rtu.h:
17862 * m/masscomp.h: Remove files. Platform is obsolete.
17863
178642008-01-04 Michael Albinus <michael.albinus@gmx.de>
17865
17866 * dbusbind.c (Fdbus_method_return): New function.
17867 (xd_read_message): Add the serial number to the event.
17868 (Fdbus_register_method): Activate the function.
17869
178702008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
17871
17872 * keyboard.c (read_key_sequence): Fix typo.
17873
178742008-01-03 Michael Albinus <michael.albinus@gmx.de>
17875
17876 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
17877 (xd_signature, xd_append_arg): Handle element type detection for
17878 empty arrays.
17879 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
17880 SDATA () calls; this must be solved more general.
17881 (Fdbus_register_signal): Use SBYTES instead of strlen.
17882
178832008-01-03 Magnus Henoch <magnus@zemdatav>
17884
17885 * dbusbind.c (xd_append_arg): Use unsigned char instead of
17886 unsigned int for byte values (necessary for big-endian platform).
17887 (Fdbus_call_method): Handle the case of no returned arguments.
17888
178892007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
17890
17891 * dbusbind.c (xd_read_message): Use non-static input_event struct.
17892
178932007-12-31 Magnus Henoch <mange@freemail.hu>
17894
17895 * dbusbind.c (xd_signature): Signature of variant is just "v".
17896
178972007-12-30 Michael Albinus <michael.albinus@gmx.de>
17898
17899 * dbusbind.c: Fix several errors and compiler warnings.
17900 Reported by Tom Tromey <tromey@redhat.com>.
17901 (XD_ERROR, XD_DEBUG_MESSAGE)
17902 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
17903 (xd_append_arg): Part for basic D-Bus types rewritten.
17904 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
17905 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
17906 appropriate.
17907 (xd_read_message): Return Qnil. Don't signal an error; it is not
17908 useful during event reading.
17909 (Fdbus_register_signal): Signal an error if the check for
17910 FUNCTIONP fails.
17911 (Fdbus_register_method): New function. The implementation is not
17912 complete, the call of the function signals an error therefore.
17913 (Fdbus_unregister_object): New function, renamed from
17914 Fdbus_unregister_signal. The initial check signals an error, if
17915 the object is not well formed.
17916
179172007-12-30 Richard Stallman <rms@gnu.org>
17918
17919 * textprop.c (get_char_property_and_overlay):
17920 Signal error if POSITION is out of range in a buffer.
17921
179222007-12-29 Martin Rudalics <rudalics@gmx.at>
17923
17924 * w32fns.c (Fx_create_frame): Make copy of frame parameters
17925 because the original parameters are in pure storage now.
17926
179272007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17928
17929 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
17930
179312007-12-22 Eli Zaretskii <eliz@gnu.org>
17932
17933 * callint.c (syms_of_callint) <command-history>: Add reference to
17934 history-length in the doc string.
17935
179362007-12-17 Jason Rumney <jasonr@gnu.org>
17937
17938 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
17939 before passing as wParam.
17940
179412007-12-22 Michael Albinus <michael.albinus@gmx.de>
17942
17943 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
17944 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
17945 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
17946 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
17947 as number.
17948 (Fdbus_call_method): Fix docstring.
17949
179502007-12-21 Michael Albinus <michael.albinus@gmx.de>
17951
17952 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
17953 New macros.
17954 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
17955 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
17956 Simplify.
17957 (xd_signature): New function.
17958 (xd_append_arg): Compute also signatures. Major rewrite.
17959 (xd_retrieve_arg): Make debug messages friendly.
17960 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
17961 Check for signatures of arguments.
17962
179632007-12-19 Michael Albinus <michael.albinus@gmx.de>
17964
17965 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
17966 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
17967 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
17968 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
17969 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
17970 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
17971 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
17972 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
17973 (xd_retrieve_value): Remove. Functionality included in ...
17974 (xd_append_arg): New function.
17975 (Fdbus_call_method, Fdbus_send_signal): Apply it.
17976
179772007-12-16 Michael Albinus <michael.albinus@gmx.de>
17978
17979 * dbusbind.c (top): Include <stdio.h>.
17980 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
17981 dbus_message_new_method_call and dbus_message_new_signal.
17982 (Fdbus_register_signal): Rename unique_name to uname.
17983 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
17984 non-existing unique name. Fix typos in matching rule. Return an
17985 object which is useful in Fdbus_unregister_signal.
17986 (Fdbus_unregister_signal): Reimplementation, in order to remove
17987 only the corresponding entry.
17988 (Vdbus_registered_functions_table): Change the order of entries.
17989 Apply these changes in xd_read_message and Fdbus_register_signal.
17990
179912007-12-16 Andreas Schwab <schwab@suse.de>
17992
17993 * fileio.c (Finsert_file_contents): Fix overflow check to not
17994 depend on undefined integer overflow.
17995
179962007-12-14 Jason Rumney <jasonr@gnu.org>
17997
17998 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
17999 for characters above 127.
18000
180012007-12-13 Jason Rumney <jasonr@gnu.org>
18002
18003 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
18004 before dereferencing array.
18005 (lookup_vk_code): Remove zero comparison.
18006
180072007-12-14 Michael Albinus <michael.albinus@gmx.de>
18008
18009 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
18010 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
18011 Use `unsigned int' instead of `uint'.
18012 (xd_read_message, Fdbus_register_signal): Split expressions into
18013 multiple lines before operators "&&" and "||", according to the
18014 GNU Coding Standards.
18015
180162007-12-14 Eli Zaretskii <eliz@gnu.org>
18017
18018 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
18019
180202007-12-12 Juri Linkov <juri@jurta.org>
18021
18022 * buffer.c (Frename_buffer): In interactive spec replace
18023 `read-buffer' with `read-string' that uses `buffer-name-history'
18024 as history, and the current buffer's name as default.
18025
180262007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
18027
18028 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
18029 manipulating the backtrace manually.
18030 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
18031 (struct backtrace, backtrace_list): Remove.
18032 (command_loop_1): Remove dead var `no_direct'.
18033
18034 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
18035 preserve non-built-in buffer-local variables.
18036 (Fkill_all_local_variables): Don't re-create&re-set permanent
18037 buffer-local variables.
18038
180392007-12-09 Juri Linkov <juri@jurta.org>
18040
18041 * buffer.c (Frename_buffer): Change interactive spec from "s" to
18042 Lisp code that uses `read-buffer' with current buffer as default.
18043
180442007-12-08 Michael Albinus <michael.albinus@gmx.de>
18045
18046 * dbusbind.c (xd_read_message): Generate an event for every
18047 registered handler. There might be several handlers registered
18048 for the same signal.
18049 (Fdbus_register_signal): Don't overwrite a registration for the
18050 same signal. Add a new registration if handlers are different.
18051 (Vdbus_registered_functions_table): Rework doc string.
18052
180532007-12-07 Michael Albinus <michael.albinus@gmx.de>
18054
18055 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
18056 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
18057 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
18058 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
18059 Unify argument lists.
18060 (xd_read_message, Fdbus_register_signal): Reorder and extend event
18061 arguments and hash table keys. Use unique name for service.
18062 (Fdbus_unregister_signal): Remove checks.
18063 (Vdbus_registered_functions_table): Fix doc string.
18064
180652007-12-05 Magnus Henoch <mange@freemail.hu>
18066
18067 * process.c (make_process): Initialize pty_flag to 0.
18068
180692007-12-05 Jason Rumney <jasonr@gnu.org>
18070
18071 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
18072 specified XBMs.
18073
180742007-12-05 Richard Stallman <rms@gnu.org>
18075
18076 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
18077
180782007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18079
18080 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
18081 New variable.
18082 (mac_try_close_socket) [MAC_OSX]: New function.
18083 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
18084 Update cfsockets_for_select. Replace invalid CFRunLoop source.
18085
18086 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
18087 Use mac_try_close_socket.
18088
180892007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18090
18091 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
18092 reloc_base.
18093 (copy_dysymtab): Compute relocation base here.
18094 (rebase_reloc_address) [__ppc64__]: New function.
18095 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
18096 changed.
18097
180982007-12-05 Jason Rumney <jasonr@gnu.org>
18099
18100 * w32proc.c (sys_spawnve): Quote args with wildcards.
18101
181022007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18103
18104 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
18105 __objc_* sections.
18106 (unrelocate) [_LP64]: Set relocation base to address of data segment.
18107
181082007-12-05 Michael Albinus <michael.albinus@gmx.de>
18109
18110 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
18111 Move check for Vdbus_registered_functions_table to
18112 xd_read_queued_messages.
18113 (xd_read_queued_messages): Protect xd_read_message calls by
18114 internal_condition_case_1.
18115
181162007-12-04 Michael Albinus <michael.albinus@gmx.de>
18117
18118 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
18119 Qdbus_system_bus and Qdbus_session_bus, respectively.
18120 (Vdbus_intern_symbols): Remove.
18121 (Vdbus_registered_functions_table): New hash table.
18122 (XD_SYMBOL_INTERN_SYMBOL): Remove.
18123 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
18124 Rewrite in order to manage registered functions by hash table
18125 Vdbus_registered_functions_table.
18126
181272007-12-03 Jan Djärv <jan.h.d@swipnet.se>
18128
18129 * xterm.c: Update URL to Window Manager Specification in comment.
18130
181312007-12-02 Michael Albinus <michael.albinus@gmx.de>
18132
18133 * config.in (HAVE_DBUS): Add.
18134
18135 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
18136 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
18137 (obj): Add $(DBUS_OBJ).
18138 (LIBES): Add $(DBUS_LIBS).
18139 (dbusbind.o): New target.
18140
18141 * dbusbind.c: New file.
18142
18143 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
18144
18145 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
18146 (Qdbus_event): New Lisp symbol.
18147 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
18148 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 18149 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
18150
18151 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
18152
181532007-12-01 Richard Stallman <rms@gnu.org>
18154
18155 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
18156
181572007-11-30 Jason Rumney <jasonr@gnu.org>
18158
18159 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
18160 (w32con_reset_terminal_modes): Clear screen buffer.
18161 (w32_face_attributes): Don't use color indexes that are out of range.
18162 Only reverse the default colors.
18163
18164 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
18165 WINDOWSNT.
18166
18167 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
18168
181692007-11-29 Jason Rumney <jasonr@gnu.org>
18170
18171 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
18172 (w32_face_attributes): Use Vtty_defined_color_alist to determine
18173 if the terminal colors are initialized.
18174 (unspecified_fg, unspecified_bg): Remove unused declarations.
18175
181762007-11-29 Andreas Schwab <schwab@suse.de>
18177
18178 * keyboard.c (apply_modifiers): Fix typo.
18179
181802007-11-29 Richard Stallman <rms@gnu.org>
18181
18182 * keymap.c (Fcurrent_local_map): Doc fix.
18183
181842007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
18185
18186 * s/gnu-kfreebsd.h: New file.
18187
181882007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
18189
18190 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
18191 Don't cast redundantly.
18192
18193 * keyboard.c (KEY_TO_CHAR): New macro.
18194 (parse_modifiers, apply_modifiers): Accept integer arguments.
18195 (read_key_sequence): Use them to unify the "shift->unshift" mapping
18196 for chars and symbol keys.
18197 After doing such remapping, apply function-key-map again.
18198
181992007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
18200
18201 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
18202 compiled anymore.
18203
182042007-11-26 Andreas Schwab <schwab@suse.de>
18205
18206 * process.c (list_processes_1): Fix indentation level of the
18207 command column.
18208
182092007-11-23 Andreas Schwab <schwab@suse.de>
18210
18211 * editfns.c (Fformat): Handle %c specially since it requires the
18212 argument to be of type int.
18213
182142007-11-23 Markus Triska <markus.triska@gmx.at>
18215
18216 * emacs.c (main): Call init_editfns before init_process, since
18217 init_process sets Vprocess_connection_type depending on OS release.
18218
182192007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
18220
18221 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
18222 (find_symbol_value): Use do_symval_forwarding.
18223
18224 * data.c (set_internal): Set the value in the `cons-cell' (for
18225 Buffer_Local_values) not only for frame-local variables.
18226
182272007-11-22 Andreas Schwab <schwab@suse.de>
18228
18229 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
18230 values to sprintf.
18231 * keymap.c (Fsingle_key_description): Likewise.
18232 * print.c (print_object): Likewise.
18233
182342007-11-22 Jan Djärv <jan.h.d@swipnet.se>
18235
18236 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
18237 file for image is nil.
18238
182392007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
18240
18241 * term.c: Include stdarg.h.
18242 (fatal): Implement using varargs.
18243 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
18244
182452007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18246
18247 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
18248 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
18249 Update call to buffer_slot_type_mismatch.
18250 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
18251 (buffer_slot_type_mismatch): Update.
18252 * buffer.c (buffer_local_types): Remove.
18253 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
18254 (defvar_per_buffer): Set the type in the buffer_objfwd.
18255
182562007-11-21 Jason Rumney <jasonr@gnu.org>
18257
18258 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
18259 CreateFileMapping returns NULL on failure.
18260
182612007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
18262
18263 * search.c (Fset_match_data): Remove the `evaporate' feature.
18264 (unwind_set_match_data): Don't use the `evaporate' feature.
18265
182662007-11-21 Jason Rumney <jasonr@gnu.org>
18267
18268 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
18269
18270 * w32console.c (w32con_write_glyphs): Remove unused variables.
18271
182722007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
18273
18274 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
18275
18276 * s/darwin.h (MULTI_KBOARD): Remove.
18277
18278 * macfns.c (x_create_tip_frame, Fx_create_frame)
18279 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
18280
182812007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
18282
18283 * buffer.c (Fbuffer_local_value): Remove redundant test.
18284 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
18285 than in `current-buffer' to match the comment.
18286 Do the swap using swap_in_global_binding.
18287
18288 * data.c (store_symval_forwarding, set_internal):
18289 * eval.c (specbind): Remove dead code.
18290
18291 * coding.c (detect_coding, Fupdate_coding_systems_internal):
18292 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
18293 Since we do not want to see internal Lisp_*fwd objects here.
18294
182952007-11-18 Jan Djärv <jan.h.d@swipnet.se>
18296
18297 * sysdep.c (init_system_name): Use getaddrinfo if available.
18298
18299 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
18300 (x_scroll_bar_note_movement): start, end, with, height in struct
18301 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
18302
183032007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
18304
18305 * puresize.h (BASE_PURESIZE): Increase to 1190000.
18306
183072007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
18308
18309 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
18310 This undoes Richard's change of 14-Oct-2002.
18311
18312 * alloc.c (allocate_other_vector):
18313 * lisp.h (allocate_other_vector): Remove.
18314
18315 * window.c (struct save_window_data): Move non-lisp data to the end
18316 and make it `int' rather than Lisp_Object.
18317 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
18318 Done wrap/unwrap integer values.
18319 (Fset_window_configuration, compare_window_configurations):
18320 Update use of fields to their new types.
18321
18322 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
18323 Turn integer fields into `int'. Merge x_window_low and x_window_high.
18324 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
18325 (SET_SCROLL_BAR_X_WINDOW): Remove.
18326 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
18327 Access the new x_window field directly.
18328 * xterm.c (x_scroll_bar_create): Use a pseudovector.
18329 Don't wrap/unwrap integers into Lisp_Objects.
18330 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
18331 (x_scroll_bar_report_motion):
18332 Don't wrap/unwrap integers into Lisp_Objects.
18333 (x_term_init): Use SDATA.
18334 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
18335 (x_scroll_bar_set_handle, x_scroll_bar_remove)
18336 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
18337 (x_scroll_bar_report_motion, x_scroll_bar_clear):
18338 * xfns.c (x_set_background_color):
18339 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
18340 Access the new x_window field directly.
18341
18342 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
18343 (allocate_pseudovector): Make non-static.
18344
18345 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
18346 (allocate_pseudovector): Declare.
18347 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
18348
183492007-11-15 Andreas Schwab <schwab@suse.de>
18350
18351 * editfns.c (Fformat): Correctly format EMACS_INT values.
18352 Also take precision into account when formatting an integer.
18353
18354 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
18355
183562007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
18357
18358 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
18359 (syms_of_keyboard): Defsubr it.
18360
18361 * data.c (swap_in_global_binding): Fix longstanding bug where
18362 store_symval_forwarding was not called with the right second argument,
18363 thus causing objfwd-ing from being dropped.
18364
183652007-11-14 Juanma Barranquero <lekktu@gmail.com>
18366
18367 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
18368 (Fx_display_pixel_height, Fx_display_planes)
18369 (Fx_display_color_cells, Fx_server_max_request_size)
18370 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18371 (Fx_display_visual_class, Fx_display_save_under):
18372 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
18373 (Fx_display_pixel_height, Fx_display_planes)
18374 (Fx_display_color_cells, Fx_server_max_request_size)
18375 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
18376 (Fx_display_mm_height, Fx_display_mm_width)
18377 (Fx_display_backing_store, Fx_display_visual_class)
18378 (Fw32_select_font, Fx_display_save_under):
18379 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
18380 (Fx_display_pixel_height, Fx_display_planes)
18381 (Fx_display_color_cells, Fx_server_max_request_size)
18382 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
18383 (Fx_display_save_under): Fix typos in docstrings.
18384
183852007-11-14 Juanma Barranquero <lekktu@gmail.com>
18386
18387 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
18388 corresponding to deleted entries; they are an implementation detail.
18389 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
18390 Remove variables.
18391 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
18392 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
18393 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
18394 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
18395 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
18396 (Fw32_define_rgb_color, Fw32_load_color_file)
18397 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
18398 Fix typos in docstrings.
18399 (Fx_server_version): Reflow docstring.
18400 (Fw32_shell_execute): Doc fixes.
18401
184022007-11-13 Juanma Barranquero <lekktu@gmail.com>
18403
18404 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
18405 if w32_parse_hot_key returned nil.
18406
184072007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
18408
18409 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
18410
184112007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 18412
aac0c6e3
MR
18413 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
18414
18415 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
18416
18417 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
18418 Remove W32_SCROLL_BAR_CLICK_EVENT.
18419
18420 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
18421 Add MULTIMEDIA_KEY_EVENT.
18422
18423 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
18424 (lispy_multimedia_keys) [WINDOWSNT]: New array.
18425 (make_lispy_event) [WINDOWSNT]: Use it to translate
18426 MULTIMEDIA_KEY_EVENT.
18427
18428 * w32term.h (WM_APPCOMMAND): Define if not already.
18429 (GET_APPCOMMAND_LPARAM): Likewise.
18430
18431 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
18432 WM_APPCOMMAND.
18433
18434 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
18435 (syms_of_w32fns): Export and initialize it.
18436 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
18437
184382007-11-09 Chong Yidong <cyd@stupidchicken.com>
18439
18440 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
18441 twice.
18442
18443 * xdisp.c (handle_face_prop): Fix last change.
18444
184452007-11-09 Richard Stallman <rms@gnu.org>
18446
18447 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
18448 not just for after-strings and before-strings.
18449 Call face_for_overlay_string and pass the overlay to it.
18450 (handle_display_prop): Determine whether property came from an overlay.
18451 Pass OVERLAY arg to handle_single_display_spec.
18452 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
18453 (load_overlay_strings): Fill in it->string_overlays.
18454 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
18455
18456 * xfaces.c (face_for_overlay_string): Function renamed from
18457 face_at_buffer_position_no_overlays, and add arg OVERLAY.
18458
18459 * dispextern.h (struct it): New elt string_overlays.
18460 New elt from_overlay, also in stack.
18461 Rearrange a few elements.
18462 (face_for_overlay_string): Decl renamed from
18463 face_at_buffer_position_no_overlays, and add argument.
18464
184652007-11-09 Richard Stallman <rms@gnu.org>
18466
18467 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
18468 to get the base face for an overlay string.
18469
18470 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
18471
18472 * xfaces.c (face_at_buffer_position_no_overlays): New function.
18473
18474 * xdisp.c (handle_stop): Move some code out of loop.
18475
184762007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18477
18478 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
18479 Fix conversion from Lisp object to ATSUFontID.
18480
184812007-11-09 Jason Rumney <jasonr@gnu.org>
18482
18483 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
18484
184852007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18486
18487 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
18488 Don't assume regions are aligned to page boundary.
18489 (print_load_command_name): Add LC_UUID if defined.
18490
184912007-11-09 Richard Stallman <rms@gnu.org>
18492
18493 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
18494
184952007-11-07 Jason Rumney <jasonr@gnu.org>
18496
18497 * s/windows95.h: Remove.
18498
184992007-11-06 Jan Djärv <jan.h.d@swipnet.se>
18500
18501 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
18502 abort with a message on unhandled store_type values.
18503
185042007-11-01 Jan Djärv <jan.h.d@swipnet.se>
18505
18506 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
18507 Remove HAVE_X11R5 and HAVE_X11R4.
18508
185092007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18510
18511 * Makefile.in: Remove references to sunfns.c and sunfns.o.
18512
185132007-11-01 Johan Bockgård <bojohan@gnu.org>
18514
18515 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
18516 Don't set s->stippled_p here, since it has already been set by
18517 x_set_glyph_string_gc from x_draw_glyph_string.
18518
185192007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
18520
18521 * sunfns.c: Remove file.
18522
18523 * m/sun386.h:
18524 * m/sun2.h:
18525 * m/sparc.h: Remove Sun windows code.
18526
185272007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
18528
18529 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
18530 (init_keyboard): Set current_kboard's window-system to nil.
18531 (tty_read_avail_input): Typo.
18532 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
18533
185342007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
18535
18536 * s/usg5-4.h:
18537 * s/usg5-3.h:
18538 * s/ptx.h:
18539 * m/is386.h:
18540 * m/ibmps2-aix.h:
18541 * Makefile.in: Remove all mentions of X10.
18542
18543 * dispnew.c (syms_of_display): Don't mention version 10.
18544
185452007-10-28 Juanma Barranquero <lekktu@gmail.com>
18546
18547 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
18548 ($(BLD)/abbrev.$(O)): Remove.
18549
185502007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
18551
18552 Rewrite abbrev.c in Elisp.
18553 * image.c (Qcount): Don't declare as extern.
18554 (syms_of_image): Initialize and staticpro `Qcount'.
18555 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
18556 * emacs.c (main): Don't call syms_of_abbrev.
18557 * Makefile.in (obj): Remove abbrev.o.
18558 (abbrev.o): Remove.
18559 * abbrev.c: Remove.
18560
185612007-10-26 Martin Rudalics <rudalics@gmx.at>
18562
18563 * window.c (window_min_size_2): Don't count header-line.
18564
185652007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
18566
18567 * frame.h (struct frame): Move all bit fields after the first bit
18568 field to take advantage of the available space. Group all the
18569 chars together to reduce wasted space due to padding.
18570
185712007-10-26 Juanma Barranquero <lekktu@gmail.com>
18572
18573 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
18574
18575 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
18576 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
18577 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
18578 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
18579 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
18580 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
18581 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
18582 (last_marked, mark_object_loop_halt): Make static.
18583
18584 * frame.c (syms_of_frame) <delete-frame-functions>:
18585 Fix typo in docstring.
18586
185872007-10-25 Juanma Barranquero <lekktu@gmail.com>
18588
18589 * w32.c (init_environment): Fix tiny memory leak.
18590 (w32_get_resource): Remove unused variable `ok'.
18591
185922007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
18593
18594 Make `window-system' into a keyboard-local variable (rather than
18595 frame-local as done originally by multi-tty).
18596
18597 * keyboard.h (struct kboard): Add Vwindow_system.
18598 * keyboard.c (init_kboard): Set a default for Vwindow_system.
18599 (mark_kboards): Mark Vwindow_system.
18600
18601 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
18602 (init_display): Don't set the obsolete `window-system' frame-param.
18603
18604 * xterm.c (x_term_init):
18605 * w32term.c (w32_create_terminal):
18606 * term.c (init_tty): Set Vwindow_system.
18607 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
18608 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
18609
18610 * xfns.c (Fx_create_frame, x_create_tip_frame):
18611 * w32fns.c (Fx_create_frame, x_create_tip_frame):
18612 * macfns.c (Fx_create_frame):
18613 Don't set the obsolete `window-system' frame-param.
18614
18615 * frame.h (Qwindow_system): Remove.
18616 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
18617 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
18618
186192007-10-24 Richard Stallman <rms@gnu.org>
18620
18621 * frame.c (x_figure_window_size): For fullscreen case,
18622 set USPosition | PPosition without clobbering rest of window_prompting.
18623
18624 * keyboard.c (Fcurrent_idle_time): Doc fix.
18625
18626 * print.c (Fwith_output_to_temp_buffer): Doc fix.
18627
186282007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
18629
18630 * process.c (unwind_request_sigio): Only define if __ultrix__.
18631
18632 * callproc.c (child_setup): Remove spurious *.
18633
18634 * lisp.h (Fget_text_property): Declare.
18635 (have_menus_p): Declare it here rather than in sys-dep header files.
18636 * macterm.h (have_menus_p):
18637 * msdos.h (have_menus_p):
18638 * xterm.h (have_menus_p): Remove.
18639
18640 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
18641 (Fmake_variable_frame_local): Just check the variable's const-ness
18642 rather than checking nil or t.
18643
186442007-10-22 Jason Rumney <jasonr@gnu.org>
18645
18646 * w32fns.c: Include math.h.
18647 (w32_abort): Declaration moved to nt/config.nt.
18648
18649 * s/ms-w32.h (HAVE_STDLIB_H): Define.
18650 (abort): Redefinition moved to nt/config.nt.
18651
18652 * m/windowsnt.h: Remove.
18653
186542007-10-22 Juanma Barranquero <lekktu@gmail.com>
18655
18656 * emacs.c (Fdump_emacs): Fix typo in message.
18657 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
18658 <installation-directory>: Reflow docstring.
18659
186602007-10-22 Juri Linkov <juri@jurta.org>
18661
18662 * minibuf.c: Allow minibuffer default to be a list of default values.
18663 With empty input use the first element of this list as returned default.
18664 (string_to_object)
18665 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
18666 (read_minibuf): If defalt is cons, set histstring to its car.
18667 (Fread_string): If default_value is cons, set val to its car.
18668 (Fread_buffer): If def is cons, use its car.
18669 (Fcompleting_read): If defalt is cons, set val to its car.
18670
186712007-10-21 Michael Albinus <michael.albinus@gmx.de>
18672
18673 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
18674
186752007-10-20 Juanma Barranquero <lekktu@gmail.com>
18676
18677 * doc.c (Fdocumentation): Check for advice in all cases.
18678
186792007-10-19 Chong Yidong <cyd@stupidchicken.com>
18680
18681 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
18682
186832007-10-19 Richard Stallman <rms@gnu.org>
18684
18685 * doc.c (Fdocumentation): Check for and handle an advised function.
18686
186872007-10-19 Juanma Barranquero <lekktu@gmail.com>
18688
18689 * process.c (Fset_process_filter): Doc fix.
18690
186912007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
18692
18693 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
18694 which caused key-translation-map to applied repeatedly (thus breaking
18695 double-mode).
18696
186972007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18698
18699 * xselect.c (x_own_selection, x_handle_selection_clear)
18700 (x_clear_frame_selections):
18701 * w32menu.c (list_of_panes, list_of_items):
18702 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
18703 * textprop.c (validate_plist, interval_has_all_properties)
18704 (interval_has_some_properties, interval_has_some_properties_list)
18705 (add_properties, text_property_list):
18706 * process.c (Fget_buffer_process, list_processes_1, status_notify):
18707 * minibuf.c (Fassoc_string):
18708 * macselect.c (x_own_selection, x_clear_frame_selections)
18709 (Fx_disown_selection_internal):
18710 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
18711 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
18712
187132007-10-17 Chong Yidong <cyd@stupidchicken.com>
18714
18715 * process.c: Link to libs for calling res_init() if available.
18716 (Fmake_network_process): Call res_init() before getaddrinfo or
18717 gethostbyname, if possible.
18718
187192007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
18720
18721 * lread.c (read1): Set pvectype for char_tables.
18722
18723 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
18724 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
18725 Add type checks.
18726 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
18727
18728 * alloc.c (free_misc): Use XMISCTYPE.
18729 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
18730
187312007-10-17 Glenn Morris <rgm@gnu.org>
18732
18733 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
18734 (syms_of_minibuf): Add Qcompletion_ignore_case.
18735 * dired.c (Qcompletion_ignore_case): Change to external.
18736 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
18737 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
18738 (Fread_file_name): Use it rather than intern'ing.
18739
18740 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
18741 (Fread_coding_system): Ignore case of user input.
18742
187432007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18744
18745 * xdisp.c (handle_display_prop): Ignore display specs after
18746 replacing one when string text is being replaced.
18747 (handle_single_display_spec): Pretend as if characters with display
18748 property haven't been consumed only when buffer text is being replaced.
18749
187502007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
18751
18752 * xfns.c (Fx_create_frame, Fx_display_list):
18753 * window.c (window_fixed_size_p, enlarge_window)
18754 (shrink_window_lowest_first):
18755 * macterm.c (init_font_name_table):
18756 * macfns.c (Fx_create_frame, Fx_display_list):
18757 * lread.c (close_load_descs):
18758 * keyboard.c (read_char_x_menu_prompt):
18759 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
18760 * coding.c (code_convert_region_unwind): Test the type of an object
18761 rather than just !NILP before extracting data from it.
18762
18763 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
18764
18765 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
18766 (XMISCANY): New macro.
18767 (XMISCTYPE): Use it.
18768 (struct Lisp_Misc_Any): New type.
18769 (union Lisp_Misc): Use it.
18770 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
18771 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
18772 (find_symbol_value, set_internal, default_value, Fset_default)
18773 (Fmake_variable_buffer_local, Fmake_local_variable)
18774 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
18775 (Flocal_variable_if_set_p, Fvariable_binding_locus):
18776 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
18777 * alloc.c (allocate_buffer): Set the size and tag.
18778 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
18779 Use XMISCANY.
18780 (die): Follow the GNU convention for error messages.
18781 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
18782 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
18783 tag any more.
18784 (set_buffer_internal_1):
18785 * frame.c (store_frame_param):
18786 * eval.c (specbind):
18787 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
18788
18789 * doc.c (Fsnarf_documentation): Simplify.
18790
187912007-10-14 Juanma Barranquero <lekktu@gmail.com>
18792
18793 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
18794 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
18795
187962007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
18797
18798 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
18799
188002007-10-14 Juanma Barranquero <lekktu@gmail.com>
18801
18802 * eval.c (do_autoload): Don't save autoloads.
18803
18804 * data.c (Ffset): Save autoload of the function being set.
18805
188062007-10-07 John Paul Wallington <jpw@pobox.com>
18807
18808 * xfns.c (x_create_tip_frame): Set the `display-type' frame
18809 parameter before setting up faces.
18810
188112007-10-13 Eli Zaretskii <eliz@gnu.org>
18812
18813 * ccl.c (Fregister_code_conversion_map):
18814 * keyboard.c (append_tool_bar_item): Reformat last change.
18815
18816 * lisp.h (eabs): Rename from `abs'. All callers changed.
18817
188182007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
18819
18820 * buffer.c (add_overlay_mod_hooklist):
18821 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
18822 * fontset.c (make_fontset):
18823 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
18824 (append_tool_bar_item):
18825 * macmenu.c (grow_menu_items):
18826 * w32menu.c (grow_menu_items):
18827 * xmenu.c (grow_menu_items): Use larger_vector.
18828
188292007-10-13 Eli Zaretskii <eliz@gnu.org>
18830
18831 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
18832 selected frame'' on MSDOS).
18833
188342007-10-12 Martin Rudalics <rudalics@gmx.at>
18835
18836 * frame.c (Qexplicit_name): New variable.
18837 (x_report_frame_params): Report it in parameter alist.
18838 (syms_of_frame): Intern and staticpro it.
18839
188402007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
18841
18842 * macfns.c (x_create_tip_frame): Set terminal for frame.
18843
188442007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
18845
18846 * frame.c (Qenvironment): Remove.
18847 (syms_of_frame) <Qenvironment>: Don't initialize.
18848 (Fdelete_frame): Don't treat the `environment' param specially.
18849 * frame.h (Qenvironment): Don't declare.
18850 * callproc.c (set_initial_environment): Don't set unused frame param.
18851
18852 * frame.c (Fframe_with_environment): Remove.
18853 (syms_of_frame) <Sframe_with_environment>: Don't declare.
18854
18855 * lisp.h (Fframe_with_environment): Don't declare.
18856
188572007-10-10 Juanma Barranquero <lekktu@gmail.com>
18858
18859 * indent.c (indent_tabs_mode, last_known_column)
18860 (last_known_column_modified): Make static.
18861 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
18862
188632007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
18864
18865 * puresize.h (BASE_PURESIZE): Increase to 1170000.
18866
188672007-10-09 Jason Rumney <jasonr@gnu.org>
18868
18869 * w32term.c (x_set_window_size): Disable code that attempts to tell
18870 Lisp code about a size change before it actually happens.
18871
188722007-10-09 Richard Stallman <rms@gnu.org>
18873
18874 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
18875 return HANDLED_RETURN.
18876
188772007-10-08 Martin Rudalics <rudalics@gmx.at>
18878
18879 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
18880 when there's an unread command event.
18881
18882 * frame.c (focus_follows_mouse): Move here from frame.el to allow
18883 window autoselection act appropriately when leaving selected frame.
18884 (syms_of_frame): Initialize focus_follows_mouse.
18885 * frame.h (focus_follows_mouse): Extern it.
18886 * macterm.c (XTread_socket): When focus_follows_mouse is nil
18887 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
18888 * msdos.c (dos_rawgetc): Likewise.
18889 * w32term.c (w32_read_socket): Likewise.
18890 * xterm.c (handle_one_xevent): Likewise.
18891 * xdisp.c (syms_of_xdisp): In doc-string of
18892 mouse-autoselect-window mention focus-follows-mouse.
18893
188942007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18895
18896 * macterm.c (mac_load_query_font): Fix missing return value.
18897 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
18898 Add BLOCK_INPUT.
18899
189002007-10-08 Richard Stallman <rms@gnu.org>
18901
18902 * xdisp.c (get_window_cursor_type): Implement documented behavior
18903 for cursor-in-non-selected-windows = t.
18904
189052007-10-08 Jason Rumney <jasonr@gnu.org>
18906
18907 * w32.c (w32_get_resource): Always close registry keys.
18908
189092007-10-08 Jason Rumney <jasonr@gnu.org>
18910
18911 * makefile.w32-in (LIBS): Add COMCTL32.
18912
18913 * w32fns.c (globals_of_w32fns): Init common controls.
18914
189152007-10-08 Richard Stallman <rms@gnu.org>
18916
18917 * image.c (our_memory_buffer): Rename from omfib_buffer.
18918
189192007-10-08 Richard Stallman <rms@gnu.org>
18920
18921 * buffer.c (Foverlays_at): Doc fix.
18922
189232007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
18924
18925 * fns.c (Fplist_put): Preserve uneven tail data.
18926
189272007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
18928
18929 * termhooks.h (enum event_kind): Remove trailing comma.
18930
18931 * frame.h (enum): Remove trailing comma.
18932
189332007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
18934
18935 * w32proc.c (delete_child): Don't terminate threads of zombies.
18936
189372007-10-08 Martin Rudalics <rudalics@gmx.at>
18938
18939 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
18940
18941 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
18942 last-repeatable-command.
18943 (init_kboard): Initialize Vlast_repeatable_command.
18944 (command_loop_1): Set it to real_this_command unless that was
18945 bound to an input event.
18946 (mark_kboards): Mark it.
18947
189482007-10-08 Richard Stallman <rms@gnu.org>
18949
18950 * eval.c (condition-case): Doc fix.
18951
189522007-10-08 Masatake YAMATO <jet@gyve.org>
18953
18954 * xfaces.c (tty_supports_face_attributes_p): Fix code
18955 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
18956 was copied and not edited.
18957
189582007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
18959
18960 Add new `input-decode-map' keymap and use it for terminal
18961 escape sequences.
18962 * keyboard.h (struct kboard): Add Vinput_decode_map.
18963 Remove Vlocal_key_translation_map.
18964 * keyboard.c (read_key_sequence): Add support for input-decode-map.
18965 (init_kboard): Init input-decode-map.
18966 Replace local-key-translation-map back with key-translation-map.
18967 (syms_of_keyboard): Declare input-decode-map.
18968 Remove local-key-translation-map. Update docstrings.
18969 (mark_kboards): Mark Vinput_decode_map.
18970 Don't mark Vlocal_key_translation_map.
18971 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
18972 Replace local-key-translation-map back with key-translation-map.
18973 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
18974 Bind in input-decode-map rather than function-key-map.
18975
18976 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
18977 This was made redundant by the previous introduction of XSETPVECTYPE.
18978
189792007-10-09 Richard Stallman <rms@gnu.org>
18980
18981 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
18982
189832007-09-29 Richard Stallman <rms@gnu.org>
18984
18985 * eval.c (internal_condition_case_2, internal_condition_case_1)
18986 (internal_condition_case): Reenable abort if x_catching_errors ()
18987 to see if that really happens and why.
18988
189892007-10-06 Andreas Schwab <schwab@suse.de>
18990
18991 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
18992
189932007-10-04 Juanma Barranquero <lekktu@gmail.com>
18994
18995 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
18996
189972007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
18998
18999 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
19000
190012007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
19002
19003 * window.h (struct window):
19004 * window.c (struct save_window_data, struct saved_window):
19005 * termhooks.h (struct terminal):
19006 * process.h (struct Lisp_Process):
19007 * frame.h (struct frame):
19008 * buffer.h (struct buffer):
19009 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
19010 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
19011 The size field of (pseudo)vectors is now unsigned.
19012 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
19013
19014 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
19015 Turn `count' into an integer.
19016
19017 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
19018 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
19019 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
19020 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
19021 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
19022
19023 * alloc.c (allocate_pseudovector): New fun.
19024 (ALLOCATE_PSEUDOVECTOR): New macro.
19025 (allocate_window, allocate_terminal, allocate_frame)
19026 (allocate_process): Use it.
19027 (mark_vectorlike): New function.
19028 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
19029 (mark_terminals): Use it.
19030 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
19031 (Fmake_byte_code): Use XSETPVECTYPE.
19032
19033 * frame.c (Fframe_parameters): Minor simplification.
19034
19035 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
19036
19037 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
19038
19039 * buffer.c (Fget_buffer_create, init_buffer_once):
19040 * lread.c (defsubr):
19041 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
19042
19043 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
19044 defined differently in the m/*.h files.
19045 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
19046 (XSETPVECTYPE): New macro.
19047 (XSETPSEUDOVECTOR): Use it.
19048
19049 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
19050 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
19051
19052 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
19053 * lread.c (defvar_per_buffer):
19054 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
19055
19056 * window.c (candidate_window_p): Only consider as visible frames that
19057 are on the same terminal.
19058
19059 * m/ibms390x.h (MARKBIT): Remove unused macro.
19060
190612007-10-01 Juanma Barranquero <lekktu@gmail.com>
19062
19063 * lread.c (Fload): Fix typo in docstring.
19064
190652007-10-01 Michaël Cadilhac <michael@cadilhac.name>
19066
19067 * floatfns.c (Fexpt): Manually check for overflows, so that a power
19068 of a non-zero value can't yield zero.
19069
190702007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
19071
19072 * term.c (term_clear_mouse_face, term_mouse_highlight)
19073 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
19074
19075 * print.c (safe_debug_print): Use XHASH.
19076
19077 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
19078 Lisp elements such as tags.
19079 (XHASH): New macro.
19080 (EQ): Use it.
19081 (SREF, SSET, STRING_COPYIN): Use SDATA.
19082 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
19083
19084 * alloc.c (mark_terminal): Remove left-over declaration.
19085 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
19086 (allocate_vectorlike): Remove type argument. Adjust callers.
19087 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
19088 Only handle the one remaining MEM_TYPE_VECTORLIKE.
19089
19090 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
19091 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
19092 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
19093 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
19094 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
19095 Use them.
19096
19097 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
19098 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
19099 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
19100
191012007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
19102
19103 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
19104 loaded by default.
19105
191062007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
19107
19108 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
19109 on this tty.
19110 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
19111
19112 * term.c (mouse_face_window): Rename from Qmouse_face_window.
19113 Update all users.
19114 (handle_one_term_event): Use Gpm_DrawPointer.
19115 (Fgpm_mouse_start): Rename from Fterm_open_connection.
19116 Signal errors instead of returning nil. Always return nil.
19117 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
19118 Make it a noop if gpm-mouse was not activated.
19119 (syms_of_term): Update names.
19120
191212007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
19122
19123 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
19124 (init_sys_modes): Check that gpm_tty is the current tty.
19125
19126 * alloc.c (allocate_terminal): Set the vector size to only count the
19127 lisp fields. Initialize those to nil.
19128 (mark_object): Don't treat terminals specially.
19129 (mark_terminal): Remove.
19130 (mark_terminals): Use mark_object instead.
19131
19132 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
19133 the GC to the beginning.
19134
19135 * indent.h:
19136 * indent.c: Use EMACS_INT for ints coming from Elisp data.
19137
19138 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
19139
191402007-09-25 Jason Rumney <jasonr@gnu.org>
19141
19142 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
19143
19144 * w32console.c (create_w32cons_output): Remove.
19145
19146 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
19147
19148 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
19149 (reset_sys_modes): Use reset_terminal_modes_hook.
19150
191512007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
19152
19153 * eval.c (do_autoload): Don't output any message.
19154
191552007-09-24 Juri Linkov <juri@jurta.org>
19156
19157 * emacs.c (standard_args): Change priority of "--no-splash"
19158 from 40 to 3. Add "--no-desktop" with the same priority.
19159
191602007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
19161
19162 * alloc.c (gc_sweep): Check cons cell mark bits word by word
19163 and optimize the case where they are all 1.
19164
191652007-09-23 Johannes Weiner <hannes@saeurebad.de>
19166
19167 * lisp.h (abs): Define if not defined.
19168 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
19169 Don't define `abs', since it's defined in lisp.h.
19170
191712007-09-22 Eli Zaretskii <eliz@gnu.org>
19172
19173 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
19174 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
19175 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
19176 (init_tty): Use DEV_TTY instead of "/dev/tty".
19177 [WINDOWSNT]: No need to protect from NAME arg being null.
19178
191792007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
19180
19181 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
19182 up the tty state.
19183
191842007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19185
19186 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
19187 (gpm_tty): Change its type.
19188 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
19189 (gpm_tty): Change its type and initialize it.
19190 (Fterm_open_connection): Check the frame is indeed a tty.
19191 Use the new gpm_tty.
19192 (Fterm_close_connection): Use the new gpm_tty.
19193 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
19194 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
19195
191962007-09-21 Juanma Barranquero <lekktu@gmail.com>
19197
19198 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
19199 underline_color, to draw strike-through.
19200
192012007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
19202
19203 * lisp.h (allocate_terminal): Declare.
19204
19205 * window.c (candidate_window_p): Consider frames that are being placed
19206 by the user as somewhere between visible and iconified.
19207 (window_loop): Prefer windows on the current frame.
19208 (Fselect_window): Move the use of select-frame to the beginning so we
19209 can just delegate all the work (it'll call us back anyway).
19210
19211 * frame.c (Qdisplay_environment_variable):
19212 * frame.h (Qdisplay_environment_variable): Delete.
19213
19214 * .gdbinit (xbacktrace): Print the arg's address rather than the value
19215 of the first arg, since that value may be a union.
19216
19217 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
19218 parameter rather than Qdisplay_environment_variable. If all else
19219 fails, look for DISPLAY in initial-environment.
19220
192212007-09-21 Glenn Morris <rgm@gnu.org>
19222
19223 * Makefile.in (emacstool): Remove target.
19224 (lisp, shortlisp): Remove termdev.elc.
19225
192262007-09-21 Markus Triska <markus.triska@gmx.at>
19227
19228 * xterm.c (x_delete_display): Compile session management conditionally.
19229
192302007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
19231
19232 * callproc.c (getenv_internal_1): New function.
19233 (getenv_internal): Use it.
19234 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
19235
19236 * terminal.c (get_terminal): Don't accept ints to represent terminals.
19237 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
19238 (Fset_terminal_parameter): Work with dead terminals as well.
19239 (Fmodify_terminal_parameters): Remove.
19240
19241 * terminal.c (get_terminal): Handle terminals.
19242 Make sure the terminal returned is live.
19243 (create_terminal): Use allocate_terminal.
19244 (mark_terminals): Move to alloc.c.
19245 (delete_terminal): Use terminal->name as liveness status.
19246 NULL out fields after freeing their contents.
19247 Don't deallocate the object.
19248 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
19249 rather than an int.
19250 (Fterminal_live_p): Accept non-integer arguments.
19251 (Fterminal_list): Return terminal objects rather than an ints.
19252
19253 * alloc.c (enum mem_type): New member for `terminal' objects.
19254 (allocate_terminal): New function.
19255 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
19256 Handle terminals.
19257 (mark_terminal): New fun.
19258 (mark_terminals): Move from terminal.c.
19259
19260 * term.c (get_tty_terminal): Don't treat output_initial specially.
19261 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
19262 (delete_tty): Use terminal->name as liveness status.
19263
19264 * termhooks.h (struct terminal): Make it into a pseudovector.
19265 Remove `deleted' replaced by checking `name's nullness.
19266
19267 * print.c (print_object): Handle terminals.
19268
19269 * lisp.h (enum pvec_type): New `terminal' pseudovector.
19270 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
19271
19272 * frame.c (make_terminal_frame):
19273 * keyboard.c (tty_read_avail_input):
19274 * w32term.c (x_delete_terminal):
19275 * xfns.c (Fx_create_frame, x_create_tip_frame):
19276 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
19277
192782007-09-20 Glenn Morris <rgm@gnu.org>
19279
19280 * process.c (Fmake_network_process): Doc fix.
19281
192822007-09-19 Jason Rumney <jasonr@gnu.org>
19283
19284 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
19285
192862007-09-19 Michaël Cadilhac <michael@cadilhac.name>
19287
19288 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
19289 Fix a C warning regarding variable constness.
19290
19291 * xterm.c (handle_one_xevent): Fix a C warning.
19292
192932007-09-18 Jason Rumney <jasonr@gnu.org>
19294
19295 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
19296
192972007-09-17 Jan Djärv <jan.h.d@swipnet.se>
19298
19299 * gtkutil.c (gdpy_def): New variable.
19300 (xg_initialize): Initialize gdpy_def.
19301 (xg_display_close): If no other display exists, set gdpy_def to a
19302 new connection.
19303
193042007-09-16 Jan Djärv <jan.h.d@swipnet.se>
19305
19306 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
19307 when we have no file name for the icon.
19308 (xg_tool_bar_expose_callback): Remove.
19309 (xg_create_tool_bar): Don't connect expose signal to
19310 xg_tool_bar_expose_callback.
19311 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
19312
193132007-09-16 Andreas Schwab <schwab@suse.de>
19314
19315 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
19316 values instead of zapping them.
19317
193182007-09-14 Glenn Morris <rgm@gnu.org>
19319
19320 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
19321 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
19322 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
19323 scope and rename to omfib_buffer for clarity.
19324 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
19325
193262007-09-14 Kenichi Handa <handa@m17n.org>
19327
19328 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
19329
193302007-09-13 Jason Rumney <jasonr@gnu.org>
19331
19332 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
19333
19334 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
19335
19336 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
19337 (mac_term_init): Call here instead, passing rif.
19338
193392007-09-13 Glenn Morris <rgm@gnu.org>
19340
19341 * s/hpux.h: No longer define `static' as nothing.
19342
193432007-09-13 Johan Bockgård <bojohan@gnu.org>
19344
19345 * callint.c (Fcall_interactively): Remove unused var `fun'.
19346
193472007-09-12 Romain Francoise <romain@orebokech.com>
19348
19349 * window.c (prefer_window_split_horizontally, display_buffer):
19350 Revert 2007-09-08 change.
19351
193522007-09-12 Glenn Morris <rgm@gnu.org>
19353
19354 * alloca.c: Remove file.
19355 * Makefile.in (alloca): Do not undef.
19356 (allocaobj, alloca.o): Remove.
19357 (otherobj): Remove allocaobj.
19358 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
19359 * regex.c (C_ALLOCA): Remove all references and code that was only
19360 used when this was defined.
19361 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
19362 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
19363 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
19364
19365 * Makefile.in (SOURCES, unlock, relock): Delete.
19366
19367 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
19368 (menu_grab_callback): All uses changed.
19369
19370 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
19371 (x_reply_selection_request): All uses changed.
19372
193732007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
19374
19375 * lread.c (load_warn_old_style_backquotes): Change message to look
19376 better when it appears in the middle of byte-compiler messages.
19377
193782007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
19379
19380 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
19381
19382 * xterm.c (x_create_terminal): Add comment.
19383
19384 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
19385
193862007-09-10 Richard Stallman <rms@gnu.org>
19387
19388 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
19389
193902007-09-10 Michaël Cadilhac <michael@cadilhac.name>
19391
19392 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
19393 (DEFUN): Document `intspec', use it instead of `prompt'.
19394
19395 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
19396
19397 * data.c (Finteractive_form): If the interactive specification starts
19398 with a `(', use it as a Lisp form.
19399
19400 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
19401 name and file modes.
19402
19403 * callint.c (Fcall_interactively): Comment fixes.
19404
194052007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
19406
19407 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
19408 and compiled functions.
19409
194102007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
19411
19412 * window.c (prefer_window_split_horizontally): New variable.
19413 (display_buffer): Consider splitting window horizontally depending
19414 on prefer_window_split_horizontally.
19415
194162007-09-08 Eli Zaretskii <eliz@gnu.org>
19417
19418 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
19419
194202007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19421
19422 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
19423
19424 * frame.c (x_set_frame_parameters): Check number is positive before
19425 using XFASTINT.
19426
19427 * window.c (freeze_window_start): Don't presume selected_window holds
19428 a window object.
19429 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
19430
194312007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
19432
19433 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
19434
194352007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
19436
19437 * window.c (Vsplit_window_preferred_function): New var.
19438 (Fdisplay_buffer): Use it.
19439 (syms_of_window): Export, and initialize it.
19440
194412007-09-06 Pixel <pixel@mandriva.com> (tiny change)
19442
19443 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
19444
194452007-09-06 Glenn Morris <rgm@gnu.org>
19446
19447 * gtkutil.c (menu_grab_callback) <cnt>:
19448 * xselect.c (x_reply_selection_request) <cnt>: Move static
19449 variable to file scope.
19450
194512007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
19452
19453 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
19454 consistent values of selected_frame and selected_window.
19455
194562007-09-04 Jason Rumney <jasonr@gnu.org>
19457
19458 * w32console.c (initialize_w32_display): Zero unused hooks.
19459
194602007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19461
19462 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
19463 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
19464
194652007-09-04 Jason Rumney <jasonr@gnu.org>
19466
19467 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
19468 in w32console.c. Set up input. Remove XXX comments that have been
19469 confirmed as correct.
19470
19471 * s/ms-w32.h (MULTI_KBOARD): Define.
19472
19473 * w32console.c (one_and_only_w32cons): Remove.
19474 (initialize_w32_display): Take terminal argument.
19475
19476 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
19477 initialize_w32_display.
19478 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
19479
19480 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
19481
19482 * keyboard.c (discard_mouse_events): Discard it.
19483 (make_lispy_event): Translate it to a lisp event.
19484 (lispy_wheel_names): Add wheel-left and right events.
19485 (syms_of_keyboard): Enlarge wheel_syms.
19486
19487 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
19488 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
19489
19490 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
19491
19492 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
19493 from WM_MOUSEHWHEEL.
19494 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
19495
19496 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
19497 terminal.
19498
19499 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
19500 keyboard for the terminal.
19501
195022007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
19503
19504 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
19505 (Vresume_tty_hook): Rename from Vresume_tty_functions.
19506 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
19507 and resume-tty-function to resume-tty-hook.
19508 (Fsuspend_tty, Fresume_tty): Use new names.
19509
195102007-09-02 Jan Djärv <jan.h.d@swipnet.se>
19511
19512 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
19513 if it starts with "n:".
19514
195152007-08-31 Jan Djärv <jan.h.d@swipnet.se>
19516
19517 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
19518
195192007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
19520
19521 * frame.h:
19522 * frame.c (Qterm_environment_variable): Remove.
19523 (syms_of_frame): Don't init and staticpro it.
19524
19525 * callproc.c (getenv_internal): Remove special case for $TERM.
19526
19527 * callproc.c (Vinitial_environment): New variable.
19528 (set_initial_environment): Initialize it.
19529 (syms_of_callproc): Declare it.
19530 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
19531 TERM under which a process runs is never related to the TERM in which
19532 Emacs is running.
19533
195342007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19535
19536 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
19537 * s/darwin.h: ... do it here.
19538
195392007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
19540
19541 * lisp.h (set_initial_environment): Rename from set_global_environment.
19542
19543 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
19544 removed by mistake on the multi-tty branch.
19545
19546 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
19547 (Fmodify_frame_parameters): Return a value.
19548
19549 * image.c (png_load): Comment-out var only used in commented-out code.
19550
19551 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
19552 before passing it to mark_object.
19553
19554 * xfaces.c (internal_resolve_face_name): Return a value.
19555 (internal_resolve_face_name, resolve_face_name_error): Comment out.
19556
19557 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
19558 (x_icon): Comment-out var only used in commented-out code.
19559
195602007-08-29 Romain Francoise <romain@orebokech.com>
19561
19562 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
19563 QUIT hasn't been provided.
19564
195652007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
19566
19567 * callproc.c (child_setup, getenv_internal): Use the
19568 display-environment-variable and term-environment-variable frame params.
19569 (set_initial_environment): Initialise Vprocess_environment.
19570
19571 * config.in: Disable multi-keyboard support on a mac.
19572
19573 * frame.c (Qterm_environment_variable)
19574 (Qdisplay_environment_variable): New variables.
19575 (syms_of_frame): Intern and staticpro them.
19576 (Fmake_terminal_frame): Disable output method test.
19577
19578 * frame.h: Declare them here.
19579
19580 * macfns.c (x_set_mouse_color): Get rif from the frame.
19581 (x_set_tool_bar_lines): Don't use updating_frame.
19582 (mac_window): Add 2 new parameters for consistency with other systems.
19583 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
19584 frame parameters following what is done in X11 and w32. Don't use
19585 FRAME_MAC_DISPLAY_INFO.
19586 (Fx_open_connection, start_hourglass): Remove window-system check.
19587 (x_create_tip_frame): Get the keyboard from the terminal.
19588
19589 * macmenu.c: Reorder includes.
19590 (Fx_popup_menu): Use terminal specific mouse_position_hook.
19591
19592 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
19593 terminal parameter.
19594 (x_clear_frame): Add a frame parameter.
19595 (note_mouse_movement): Get rif from the frame.
19596 (mac_term_init): Initialize the terminal.
19597 (mac_initialize): Make static and move terminal initialization ...
19598 (mac_create_terminal): ... to this new function.
19599
19600 * macterm.h (struct mac_display_info): Add terminal.
19601 (mac_initialize): Delete declaration.
19602
19603 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
19604
19605 * sysdep.c: Comment out text after #endif.
19606
19607 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
19608 is defined. Better initialize ttys in windows. Use terminal
19609 specific mouse_position_hook.
19610
19611 * termhooks.h (union display_info): Add mac_display_info.
19612
19613 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
19614 Set the default minibuffer frame, window_system and the rest of the
19615 frame parameters following what is done in X11.
19616
19617 * w32term.c (w32_initialize): Make static.
19618
19619 * xselect.c (x_handle_selection_clear): Only access
19620 terminal->kboard when MULTI_KBOARD is defined.
19621
19622 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
19623 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
19624
196252007-08-29 Jason Rumney <jasonr@gnu.org>
19626
19627 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
19628 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
19629
19630 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
19631 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
19632
19633 * keyboard.c (restore_kboard_configuration): Only define when
19634 MULTI_KBOARD defined.
19635
19636 * makefile.w32-in: Update dependancies from Makefile.in.
19637 (OBJ1): Add terminal.$(O)
19638
19639 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
19640 Don't define function body.
19641 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
19642
19643 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
19644
19645 * w32.c (request_sigio, unrequest_sigio): Remove.
19646
19647 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
19648 (w32con_clear_frame, w32con_clear_end_of_line)
19649 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
19650 (w32con_delete_glyphs, w32con_set_terminal_window)
19651 (scroll_line, w32_sys_ring_bell): Add frame arg.
19652 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
19653 Add terminal arg.
19654 (PICK_FRAME): Remove.
19655 (w32con_write_glyphs): Use frame specific terminal coding.
19656 (one_and_only_w32cons): New global variable.
19657 (initialize_w32_display): Use it for storing hooks.
19658 (create_w32cons_output): New function.
19659
19660 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
19661 arg a frame.
19662
19663 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
19664 Set window_system.
19665 (x_set_tool_bar_lines): Don't use updating_frame.
19666 (Fx_create_frame): Set terminal and ref count.
19667 (Fx_open_connection): Remove window-system check.
19668
19669 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
19670
19671 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
19672 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
19673 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
19674 Add frame arg.
19675 (x_delete_terminal, w32_create_terminal): New functions.
19676 (w32_term_init): Create a terminal.
19677 (w32_initialize): Move terminal specific initialization to
19678 w32_create_terminal.
19679
19680 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
19681 (w32_clear_rect, w32_clear_area): Use background from frame.
19682 (w32_display_info): Add terminal.
19683 (w32_sys_ring_bell, x_delete_display): Declare here.
19684
19685 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
19686
19687 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
19688
196892007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
19690
19691 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
19692 Fix get_named_tty calls for the controlling tty.
19693
196942007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
19695
19696 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
19697
196982007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
19699
19700 * term.c (tty_insert_glyphs): Add missing first parameter.
19701
197022007-08-29 Károly Lőrentey <karoly@lorentey.hu>
19703
19704 * buffer.c (Fbuffer_list, Fbury_buffer):
19705 Take frame->buried_buffer_list into account.
19706
19707 * cm.c (current_tty): New variable, for cmputc().
19708 (cmputc): Use it.
19709 (cmcheckmagic): Add tty parameter, look up terminal streams there.
19710 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
19711 (cmgoto): Add tty parameter. Pass it on to calccost().
19712 Use emacs_tputs() instead of tputs().
19713
19714 * cm.h (emacs_tputs): New macro to set current_tty, and then call
19715 tputs().
19716 (current_tty): New variable, for cmputc().
19717 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
19718
19719 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
19720 (internal_condition_case, internal_condition_case_1)
19721 (internal_condition_case_2): Don't abort when x_catching_errors.
19722
19723 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
19724 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
19725 prevent crashes caused by bogus longjmps in read_char.
19726
19727 * keymap.h (Fset_keymap_parent): Add EXFUN.
19728
19729 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
19730 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19731 Remove redundant definition.
19732
19733 * macfns.c (x_set_mouse_color, x_make_gc):
19734 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19735
19736 * w32term.c (x_free_frame_resources):
19737 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19738 (w32_initialize): Use the accessor macros for terminal characteristics.
19739
19740 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
19741 Use the accessor macros for terminal characteristics.
19742 * msdos.c (internal_terminal_init): Use the accessor macros for
19743 terminal characteristics.
19744 (ScreenVisualBell, internal_terminal_init):
19745 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19746
19747 * termopts.h (no_redraw_on_reenter): Declare.
19748
19749 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
19750 (mark_terminals, mark_ttys): Declare.
19751 (Fgarbage_collect): Call them.
19752 (mark_object): Mark buried_buffer_list.
19753
19754 * prefix-args.c: Include stdlib.h for exit.
19755
19756 * syssignal.h: Add comment.
19757
19758 * indent.c: Include stdio.h.
19759
19760 * window.h (Vinitial_window_system): Declare.
19761 (Vwindow_system): Delete declaration.
19762
19763 * fontset.c (Finternal_char_font): Use FRAME_RIF.
19764
19765 * image.c (lookup_image): Don't initialize `c' until the xasserts
19766 have been run.
19767
19768 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
19769 FRAME_FOREGROUND_PIXEL.
19770
19771 * print.c (print_preprocess): Don't lose print_depth levels while
19772 iterating.
19773
19774 * widget.c (update_from_various_frame_slots):
19775 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19776
19777 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
19778 frames.
19779 (window_internal_height): Remove bogus make_number call.
19780 (init_window_once): Call make_terminal_frame with two zero parameters.
19781
19782 * fileio.c (Fread_file_name): Update comment.
19783
19784 * callint.c (Fcall_interactively):
19785 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
19786 Make sure it is correctly unwound.
19787
19788 * xsmfns.c (x_session_close): New function.
19789
19790 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
19791 Delete declarations.
19792
19793 * xterm.h: Remove declaration for x_fully_uncatch_errors.
19794 (x_output): Remove background_pixel and foreground_pixel fields.
19795 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
19796 (x_delete_device, x_session_close): Declare.
19797
19798 * lread.c: Include setjmp.h. Update declaration of `read_char'.
19799 (read_filtered_event): Call `read_char' with a local
19800 `wrong_kboard_jmpbuf'.
19801
19802 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
19803 Don't call single_kboard_state. Use FRAME_RIF.
19804
19805 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
19806 systems.
19807
19808 * lisp.h (set_process_environment): Rename to `set_global_environment'.
19809 (Fframe_with_environment, Fset_input_meta_mode)
19810 (Fset_quit_char): EXFUN.
19811 (x_create_device, tty_output, terminal, tty_display_info): Declare.
19812 (init_sys_modes, reset_sys_modes): Update prototypes.
19813 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
19814
19815 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
19816 Vlocal_key_translation_map, and Vkeyboard_translate_table.
19817 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
19818 Delete declarations.
19819 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
19820 (temporarily_switch_to_single_kboard, tty_read_avail_input):
19821 New declarations.
19822
19823 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
19824 already does that during init_display(). Call syms_of_keymap
19825 before syms_of_keyboard. Call `syms_of_terminal'.
19826 Call set_initial_environment, not set_process_environment.
19827 (shut_down_emacs): Call reset_all_sys_modes() instead of
19828 reset_sys_modes().
19829
19830 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
19831 (internal_resolve_face_name, resolve_face_name_error): New functions.
19832 (resolve_face_name): Protect against loops and errors thrown by Fget.
19833 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
19834 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
19835
19836 * scroll.c: Replace CURTTY() with local variables throughout the
19837 file (where applicable).
19838 (calculate_scrolling, calculate_direct_scrolling)
19839 (scrolling_1, scroll_cost): Use the accessor macros for terminal
19840 characteristics.
19841
19842 * keymap.c (Vfunction_key_map): Remove.
19843 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
19844 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
19845 (Vkey_translation_map): Remove.
19846 (syms_of_keymap): Remove DEFVAR for key-translation-map.
19847 (Fdescribe_buffer_bindings)
19848 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
19849 Update for terminal-local key-translation-map.
19850
19851 * Makefile.in (callproc.o): Update dependencies.
19852 (lisp, shortlisp): Add termdev.elc.
19853 (obj): Add terminal.o.
19854 (terminal.o): Add dependencies.
19855 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
19856 (data.o, fns.o): Add termhooks.h dependency.
19857 (SOME_MACHINE_LISP): Add dnd.elc.
19858 (minibuf.o): Fix typo.
19859 Update dependencies.
19860
19861 * data.c (do_symval_forwarding, store_symval_forwarding)
19862 (find_symbol_value): Use the selected frame's keyboard, not
19863 current_kboard.
19864
19865 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
19866 Vwindow_system.
19867
19868 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
19869 Fmenu_bar_open.
19870 (syms_of_xmenu): Update defsubr.
19871 (mouse_position_for_popup, Fx_popup_menu)
19872 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
19873 (set_frame_menubar, free_frame_menubar)
b97439ce 19874 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
19875 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
19876 an X frame.
19877
19878 * xselect.c (x_own_selection): Abort if not an X frame.
19879 (some_frame_on_display): Check if it is an X frame.
19880 (x_handle_selection_clear): Deal with MULTI_KBOARD.
19881
19882 * coding.c: Include frame.h and termhooks.h.
19883 (terminal_coding, keyboard_coding): Delete.
19884 (Fset_terminal_coding_system_internal)
19885 (Fset_keyboard_coding_system_internal)
19886 (Fkeyboard_coding_system)
19887 (Fterminal_coding_system): Add a terminal parameter.
19888 Get terminal_coding from the terminal.
19889 (init_coding_once): Don't call setup_coding_system here.
19890
19891 * dispextern.h (set_scroll_region, turn_off_insert)
19892 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
19893 (tty_clear_end_of_line, tty_setup_colors)
19894 (delete_tty, updating_frame)
19895 (produce_special_glyphs, produce_glyphs, write_glyphs)
19896 (insert_glyphs): Remove.
19897 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
19898 (tty_turn_off_highlight, get_tty_size): Add declaration.
19899 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
19900
19901 * frame.h (enum output_method): Add output_initial.
19902 (struct x_output): Delete.
19903 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
19904 Access foreground_pixel and background_pixel directly from the frame.
19905 (tty_display): Delete.
19906 (struct frame): Add buried_buffer_list, foreground_pixel,
19907 background_pixel and terminal. Delete kboard.
19908 (union output_data): Add tty.
19909 (FRAME_KBOARD): Get the kboard from the terminal.
19910 (FRAME_INITIAL_P): New macro.
19911 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
19912 (Qterm_environment_variable, Qdisplay_environment_variable)
19913 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
19914 New declarations.
19915
19916 * termchar.h (tty_output, tty_display_info): New structures.
19917 (tty_list): Declare.
19918 (FRAME_TTY, CURTTY): New macros.
19919 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
19920 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
19921 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
19922 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
19923
19924 * callproc.c: Include frame.h and termhooks.h, for terminal
19925 parameters.
19926 (add_env): New function.
19927 (child_setup): Use it.
19928 (child_setup, getenv_internal): Handle the new Vprocess_environment.
19929 (getenv_internal): Fix get_terminal_param call.
19930 (Fgetenv_internal, egetenv): Update doc.
19931 (syms_of_callproc): Initialize Vprocess_environment to nil.
19932 Register and initialize them. Remove obsolete defvars. Update doc
19933 strings.
19934 (child_setup): Handle Vlocal_environment_variables.
19935 (getenv_internal): Add terminal parameter.
19936 Handle Vlocal_environment_variables.
19937 (Fgetenv_internal): Add terminal parameter.
19938 (child_setup, getenv_internal, Fgetenv_internal): Store the local
19939 environment in a frame (not terminal) parameter. Update doc strings.
19940 (set_initial_environment): Rename from set_global_environment.
19941 Store Emacs environment in initial frame parameter.
19942
19943 * xdisp.c (redisplay_internal): Update references to
19944 `previous_terminal_frame'.
19945 (display_mode_line, Fformat_mode_line): Replace calls to
19946 `push_frame_kboard' with `push_kboard'.
19947 (get_glyph_string_clip_rects): Add extra parentheses and
19948 braces to prevent compiler warnings.
19949 (calc_pixel_width_or_height): Add xassert to check that the
19950 frame is alive. Don't call `lookup_image' on a termcap frame.
19951 (message2_nolog, message3_nolog, redisplay_internal)
19952 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
19953 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
19954 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
19955 (Fx_display_pixel_width, Fx_display_pixel_height)
19956 (Fx_display_planes, Fx_display_color_cells)
19957 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
19958 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
19959 (Fx_display_backing_store, Fx_display_visual_class)
19960 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
19961 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
19962
19963 * xfns.c (x_set_foreground_color x_set_background_color)
19964 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
19965 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
19966 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
19967 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
19968 terminal that is being deleted.
19969 (Fx_create_frame): Use `store_frame_param' to set `window-system'
19970 frame parameter, and make sure it overrides any user-supplied setting.
19971 (Fx_close_connection, Fx_synchronize): Unify argument names with
19972 the rest of the DEFUNs.
19973
19974 * dispnew.c (Fsend_string_to_terminal): Update call to
19975 `get_tty_terminal'.
19976 (Fredraw_frame, Fsend_string_to_terminal)
19977 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
19978 FRAME_TERMCAP_P and FRAME_TTY.
19979 (window_change_signal): Don't believe width/height values that are
19980 impossibly small.
19981 (Vinitial_window_system): Rename from Vwindow_system.
19982 (termscript, Wcm, rif): Delete.
19983
19984 * termhooks.h (struct terminal): New struct containing the
19985 previously global text display hooks and new members NAME,
19986 DELETED and PARAM_ALIST.
19987 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
19988 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
19989 (FRAME_RIF): New macros.
19990 (get_terminal_param, get_device): New declarations.
19991 (termscript): Delete declaration.
19992
19993 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
19994 (XTflash, x_free_frame_resources, x_scroll_bar_create)
19995 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
19996 FRAME_FOREGROUND_PIXEL.
19997 (x_fully_uncatch_errors): Disable definition.
19998 (x_scroll_bar_expose): Fix reference to foreground pixel.
19999 (XTread_socket): Disable loop on all X displays.
20000 (x_delete_terminal): Don't set terminal->deleted and let
20001 delete_terminal delete the frames on the terminal.
20002 (x_delete_display): Doc update to reflect changes in
20003 delete_terminal.
20004 (x_display_info) <terminal>: Move member earlier in the struct.
20005 (deleting_tty): Remove old variable.
20006 (Fsuspend_tty): Call clear_tty_hooks.
20007 (Fresume_tty, init_tty): Call set_tty_hooks.
20008 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
20009 errors on X frames.
20010 (x_catch_errors_unwind): Abort if x_error_message is NULL.
20011 (handle_one_xevent): Initialize `f' to NULL.
20012 (x_delete_terminal, x_create_terminal): New functions.
20013 (XTset_terminal_modes, XTreset_terminal_modes)
20014 (XTread_socket, x_connection_closed, x_term_init)
20015 (x_term_init, x_delete_display): Add terminal parameter.
20016 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
20017 X connections.
20018
20019 * frame.c: Include termchar.h.
20020 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
20021 (Qwindow_system, Qenvironment, Qterm_environment_variable)
20022 (Qdisplay_environment_variable): New vars.
20023 (Fframep): Deal with output_initial.
20024 (Fframe-live-p): Doc fix.
20025 (Fwindow-system): New function.
20026 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
20027 (make_terminal_frame): Don't create frames on a terminal that is
20028 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
20029 (store_frame_param): Check for found_for_frame before calling XFRAME.
20030 (Fmake_terminal_frame): Handle NULL tty names correctly.
20031 (syms_of_frame): Enhance doc string of `default-frame-alist'.
20032 (Fdelete_frame): Remove unused variable `count'. Don't allow other
20033 frames to refer to a deleted frame in their 'environment parameter.
20034 (Fframe_with_environment): New function.
20035 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
20036 (get_future_frame_param): New function.
20037 (Fmake_terminal_frame): Use it.
20038 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
20039
20040 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
20041 * sysdep.c (reset_sys_modes): Update for renames.
20042
20043 * keyboard.c (tty_read_avail_input): New function.
20044 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
20045 (syms_of_keyboard): Defsubr them.
20046 (Fset_input_meta_mode, Fset_quit_char): New functions.
20047 (Fset_input_mode): Split to above functions.
20048 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
20049 parameter. Use it in call to `read_char'.
20050 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
20051 Set wrong_kboard_jmpbuf correctly in recursive calls.
20052 Use current_kboard to access Vkeyboard_translate_table.
20053 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
20054 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
20055 Update longjmp invocations. Remember the original current_kboard,
20056 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
20057 changes it. Comment out unnecessary calls to
20058 `record_single_kboard_state' and `any_kboard_state'.
20059 Update recursive calls.
20060 (wrong_kboard_jmpbuf): Remove global variable.
20061 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
20062 Handle deleted interrupted_kboards correctly; that is a legal
20063 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
20064 and read_char calls. Abort if interrupted_kboard died in read_char.
20065 (any_kboard_state, single_kboard_state)
20066 (push_frame_kboard): Remove function.
20067 (pop_kboard): Switch out of single_kboard mode if the kboard has
20068 been deleted. Remove unused variable. Help debugging by not
20069 changing current_kboard unnecessarily. Set current_kboard to the
20070 kboard of the selected frame when the stored kboard object has
20071 been deleted before pop_kboard.
20072 (temporarily_switch_to_single_kboard): Change first parameter to a
20073 frame pointer. Throw an error when caller wants to change kboards
20074 while in single_kboard mode. Don't push_kboard if we weren't in
20075 single kboard state. Don't pop_kboard if we popped into any
20076 kboard state.
20077 (restore_kboard_configuration): Abort if pop_kboard changed the
20078 kboard in single_kboard mode. Call pop_kboard only after setting
20079 up single_kboard mode.
20080 (Frecursive_edit): Switch to single_kboard mode only in nested
20081 command loops.
20082 (cmd_error, command_loop, command_loop_1, timer_check):
20083 Comment out unnecessary call to `any_kboard_state' and
20084 `record_single_kboard_state'.
20085 (delete_kboard): Exit single_kboard mode if we have just deleted
20086 that kboard. Use FRAME_KBOARD.
20087 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
20088 `fatal_error_signal'.
20089 (record_single_kboard_state): Don't push_kboard if we weren't in
20090 single kboard state. Don't pop_kboard if we popped into any
20091 kboard state.
20092 (push_frame_kboard): Rename to push_kboard.
20093 (kbd_buffer_get_event): Use FRAME_TERMINAL.
20094 (read_avail_input): Read input from all terminals.
20095 (mark_kboards): Also mark Vkeyboard_translate_table.
20096 (kbd_buffer_store_event_hold): Simplify condition.
20097 (read_key_sequence): Reinitialize fkey and keytran at each replay.
20098 (Vkeyboard_translate_table): Move to struct kboard.
20099 (init_kboard): Initialize Vkeyboard_translate_table.
20100 (syms_of_keyboard): Use DEFVAR_KBOARD to define
20101 Vkeyboard_translate_table. Update doc strings. Update docs of
20102 local-function-key-map and function-key-map.
20103
20104 * terminal.c: New file.
20105
20106 * term.c: Include errno.h.
20107 (Vring_bell_function, device_list, initial_device)
20108 (next_device_id, ring_bell, update_begin, update_end)
20109 (set_terminal_window, cursor_to, raw_cursor_to)
20110 (clear_to_end, clear_frame, clear_end_of_line)
20111 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
20112 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
20113 (syms_of_term): Move their initialization to terminal.c.
20114 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
20115 (Ftty_display_color_cells)
20116 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
20117 (clear_tty_hooks, set_tty_hooks)
20118 (init_tty, maybe_fatal): New functions.
20119 (Ftty_type): Return nil if terminal is not on a tty instead of
20120 throwing an error. Doc update.
20121 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
20122 Doc update. Initialize new subrs and variables.
20123 (delete_tty): Use terminal->deleted.
20124 (tty_set_terminal_modes): Rename from set_terminal_modes.
20125 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
20126 (set_scroll_region): Rename to `tty_set_scroll_region'.
20127 (turn_on_insert): Rename to `tty_turn_on_insert'.
20128 (turn_off_insert): Rename to `tty_turn_off_insert'.
20129 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
20130 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
20131 (toggle_highligh): Rename to `tty_toggle_highlight'.
20132 (background_highlight): Rename to `tty_background_highlight'.
20133 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
20134 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
20135 (tty_set_scroll_region, tty_background_highlight)
20136 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
20137 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
20138 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
20139 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
20140 Add static modifier.
20141 (tty_reset_terminal_modes, tty_set_terminal_window)
20142 (tty_set_scroll_region, tty_background_highlight)
20143 (tty_highlight_if_desired, tty_cursor_to)
20144 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
20145 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
20146 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
20147 renames.
20148
201492007-08-28 Jan Djärv <jan.h.d@swipnet.se>
20150
20151 * keyboard.c: Qrtl is new.
20152 (parse_tool_bar_item): Handle :rtl keyword.
20153 (syms_of_keyboard): Intern :rtl keyword.
20154
20155 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
20156
20157 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
20158 so no Lisp code is executed.
20159 (file_for_image, find_rtl_image): New functions.
20160 (xg_get_image_for_pixmap): Use file_for_image.
20161 (update_frame_tool_bar): If direction is RTL, use RTL image if
20162 defined. Use Gtk stock images if defined.
20163
201642007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20165
20166 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
20167 for nonexistent or zero-width glyph in composition glyph.
20168
201692007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
20170
20171 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
20172
20173 * xdisp.c (Finvisible_p): New function.
20174 (syms_of_xdisp): defsubr it.
20175
201762007-08-24 Juanma Barranquero <lekktu@gmail.com>
20177
20178 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
20179 Doc fixes.
20180
201812007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20182
20183 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
20184
201852007-08-24 Martin Rudalics <rudalics@gmx.at>
20186
20187 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
20188 whether decoding has modified buffer contents.
20189
201902007-08-24 Jason Rumney <jasonr@gnu.org>
20191
20192 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
20193 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
20194 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
20195 (init_svg_functions) [HAVE_NTGUI]: New function.
20196 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
20197 (svg_load_image): Use them.
20198 (svg_load_image) [HAVE_NTGUI]: Implement background.
20199
202002007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20201
20202 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
20203 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
20204 (LIBX): Remove @RSVG_LIBS@.
20205 (LIBES): Add $(RSVG_LIBS).
20206
20207 * image.c (svg_load_image): Blend with specified background if exists.
20208 Use IMAGE_BACKGROUND. Add Mac OS Support.
20209
20210 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
20211 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
20212 Remove macros.
20213 [MAC_OSX] (socket_callback): Do nothing.
20214 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
20215 ReceiveNextEvent.
20216 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
20217 socket_callback.
20218 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
20219
202202007-08-22 Glenn Morris <rgm@gnu.org>
20221
20222 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
20223
202242007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
20225
20226 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
20227
20228 * image.c: Add support for SVG images. Some additional comments
20229 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
20230 (svg_image_p): New function to test for SVG image.
20231 (svg_load): New function to load SVG image.
20232 (svg_load_image): New function, helper for svg_load.
20233 (Qsvg): New Lisp_object.
20234 (svg_keyword_index): New enum.
20235 (svg_format): New static `image_keyword' struct.
20236 (svg_type): New static `image_type' struct.
20237 (librsvg/rsvg.h): Include it.
20238
202392007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
20240
20241 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
20242
202432007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
20244
20245 * lread.c (Qold_style_backquotes): New var.
20246 (syms_of_lread): Init and staticpro it.
20247 (load_warn_old_style_backquotes): New fun.
20248 (Fload): Use them to warn about old style backquotes.
20249 (end_of_file_error, Fload): Remove unused vars.
20250
20251 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
20252
20253 * lread.c (Vold_style_backquotes): New var.
20254 (syms_of_lread): Init and export it to Elisp.
20255 (read1): Set it when we find an old-style (back)quote.
20256
202572007-08-22 Jason Rumney <jasonr@gnu.org>
20258
20259 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
20260
202612007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
20262
20263 * puresize.h (BASE_PURESIZE): Increase to 1140000.
20264
202652007-08-19 Richard Stallman <rms@gnu.org>
20266
20267 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
20268
202692007-08-19 Andreas Schwab <schwab@suse.de>
20270
20271 * alloc.c (pure): Round PURESIZE up.
20272
202732007-08-17 Jan Djärv <jan.h.d@swipnet.se>
20274
20275 * xterm.c (handle_one_xevent): Remove check that mouse click is in
20276 active frame.
20277
202782007-08-16 Richard Stallman <rms@gnu.org>
20279
20280 * eval.c (Fcommandp): Add parens to clarify.
20281
20282 * minibuf.c (Fall_completions): Use enum for type of table.
20283
20284 * emacs.c (USAGE2): Improve text.
20285
202862007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
20287
20288 * term.c (tty_default_color_capabilities): Declare static
20289 variables in file scope, to avoid HPUX compiler problem.
20290
202912007-08-13 Jan Djärv <jan.h.d@swipnet.se>
20292
20293 * gtkutil.c (update_frame_tool_bar): Use -1 as index
20294 to gtk_toolbar_insert.
20295
202962007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
20297
20298 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
20299
20300 * insdel.c (reset_var_on_error): New fun.
20301 (signal_before_change, signal_after_change):
20302 Use it to reset (after|before)-change-functions to nil in case of error.
20303 Bind inhibit-modification-hooks to t.
20304 Don't bind (after|before)-change-functions to nil while they run.
20305
203062007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20307
20308 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
20309 filling pixmap with stippled background.
20310
203112007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20312
20313 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
20314 Don't use invisible frame as parent window for repositioning.
20315
203162007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
20317
20318 * print.c (new_backquote_output): Rename from old_backquote_output.
20319 (print): Inverse its logic (according to its name) so as to match the
20320 behavior of new_backquote_flag in lread.c.
20321
203222007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20323
20324 * gmalloc.c (posix_memalign): New function.
20325
20326 * macterm.c (frame_highlight, frame_unhighlight): Don't call
20327 ActivateControl/DeactivateControl here.
20328 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
20329 frame-notice-user-settings is non-nil.
20330 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
20331 for kEventParamFMFontStyle.
20332 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
20333 mac_pass_command_to_system and mac_pass_control_to_system here.
20334 (XTread_socket): Call ActivateControl/DeactivateControl here.
20335 (XTread_socket) [TARGET_API_MAC_CARBON]:
20336 Check mac_pass_command_to_system and mac_pass_control_to_system here.
20337 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
20338 for window repositioning.
20339
203402007-08-08 Glenn Morris <rgm@gnu.org>
20341
20342 * Replace `iff' in doc-strings and comments.
20343
203442007-08-07 Chong Yidong <cyd@stupidchicken.com>
20345
20346 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
20347
203482007-08-07 Martin Rudalics <rudalics@gmx.at>
20349
20350 * fileio.c (Finsert_file_contents): Run format-decode and
20351 after_insert_file_functions on entire buffer when REPLACE is
20352 non-nil and inhibit modification_hooks and point_motion_hooks.
20353 For consistency, run after_insert_file_functions iff something
20354 got inserted. Move signal_after_change and update_compositions
20355 after code running after_insert_file_functions. Make sure that
20356 undo_list doesn't record intermediate steps of the decoding process.
20357
203582007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20359
20360 * emacs.c (main)
20361 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
20362 Call malloc_enable_thread on interactive startup.
20363
20364 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
20365 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
20366 [USE_PTHREAD]: Conditionalize with it.
20367 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
20368 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
20369 New functions.
20370
203712007-08-06 Chong Yidong <cyd@stupidchicken.com>
20372
20373 * xdisp.c (redisplay_window): When restoring original buffer
20374 position, make sure it is still valid.
20375
20376 * image.c (png_load): Ignore png-supplied background color.
20377
203782007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20379
20380 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
20381 Use kCFAbsoluteTimeIntervalSince1970.
20382
20383 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
20384 New variable.
20385 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
20386 event loop should be quit.
20387 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
20388 Quit dialog event loop if quit_dialog_event_loop is set.
20389
20390 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
20391 (Selection): New typedef. Use instead of ScrapRef.
20392 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
20393 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
20394 (mac_clear_selection): Rename from clear_scrap.
20395 (get_flavor_type_from_symbol): New argument SEL and subsume function of
20396 scrap_has_target_type. All uses changed.
20397 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
20398 (mac_selection_has_target_p): New functions.
20399 (mac_put_selection_value): Rename from put_scrap_string.
20400 (mac_get_selection_value): Rename from get_scrap_string.
20401 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
20402 (put_scrap_private_timestamp, scrap_has_target_type)
20403 (get_scrap_private_timestamp): Remove functions.
20404 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
20405 (x_own_selection, x_get_local_selection):
20406 Use mac_valid_selection_value_p.
20407 (x_own_selection): Don't use put_scrap_private_timestamp.
20408 Record OWNERSHIP-INFO into Vselection_alist instead.
20409 (x_get_local_selection): Don't check type if request is local.
20410 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
20411 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
20412
204132007-08-04 Jan Djärv <jan.h.d@swipnet.se>
20414
20415 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
20416 add comment explaining why.
20417
204182007-08-03 Richard Stallman <rms@gnu.org>
20419
20420 * fileio.c (Fvisited_file_modtime): Use make_time.
20421
204222007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
20423
20424 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
20425 build.
20426
204272007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
20428
20429 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
20430
204312007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
20432
20433 * puresize.h (BASE_PURESIZE): Increase to 1130000.
20434
204352007-07-30 Richard Stallman <rms@gnu.org>
20436
20437 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
20438
204392007-07-29 Jan Djärv <jan.h.d@swipnet.se>
20440
20441 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
20442
204432007-07-28 Nick Roberts <nickrob@snap.net.nz>
20444
20445 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
20446 remote default-directory.
20447
20448 * buffer.c (mode-line-format): Update doc string.
20449
204502007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20451
20452 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
20453 scroll bar gap.
20454 (x_scroll_bar_create): Set bar->fringe_extended_p.
20455 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
20456 on frame edge. Check fringe background extension. Don't clear
20457 extended fringe background area.
20458
20459 * w32term.h (struct scroll_bar): New member fringe_extended_p.
20460 (w32_fill_area): Enclose multiple statements with do ... while (0).
20461
20462 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
20463 Extend fringe background to scroll bar gap.
20464 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
20465 Set bar->fringe_extended_p.
20466 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20467 Put leftmost/rightmost scroll bars on frame edge. Check fringe
20468 background extension. Don't clear extended fringe background area.
20469
20470 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
20471 New member fringe_extended_p.
20472
204732007-07-25 Glenn Morris <rgm@gnu.org>
20474
20475 * Relicense all FSF files to GPLv3 or later.
20476
20477 * COPYING: Switch to GPLv3.
20478
204792007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
20480
20481 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
20482
20483 * data.c (Finteractive_form): Check for the presence of an
20484 `interactive-form' symbol property more thoroughly.
20485
20486 * data.c (Finteractive_form): Use an `interactive-form' property if
20487 present, analogous to the function-documentation property.
20488
204892007-07-24 Jason Rumney <jasonr@gnu.org>
20490
20491 * w32fns.c (x_real_positions): Get real position from OS instead of
20492 calculating it.
20493
204942007-07-23 Jason Rumney <jasonr@gnu.org>
20495
20496 * filelock.c (current_lock_owner): Allow for @ sign in username.
20497
204982007-07-22 Nick Roberts <nickrob@snap.net.nz>
20499
20500 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
20501 remote default-directory.
20502
20503 * buffer.c (mode-line-format): Describe above case in doc string.
20504
205052007-07-20 Eli Zaretskii <eliz@gnu.org>
20506
20507 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
20508 Define if not defined.
20509
205102007-07-18 Jason Rumney <jasonr@gnu.org>
20511
20512 * w32proc.c (w32_executable_type): Handle 64 bit executables.
20513
205142007-07-18 Richard Stallman <rms@gnu.org>
20515
20516 * data.c (Fsetq_default): Doc fix.
20517
20518 * eval.c (Fsetq): Doc fix.
20519
205202007-07-18 Juanma Barranquero <lekktu@gmail.com>
20521
20522 * coding.c (Ffind_operation_coding_system):
20523 * eval.c (For, Fand): Doc fixes.
20524 Reported by Johan Bockgård.
20525
205262007-07-18 Jan Djärv <jan.h.d@swipnet.se>
20527
20528 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
20529
20530 * xterm.h: Declare x_ewmh_activate_frame.
20531
20532 * xterm.c (x_ewmh_activate_frame): New function.
20533 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
20534
205352007-07-17 Martin Rudalics <rudalics@gmx.at>
20536
20537 * window.c (Fdisplay_buffer): If largest or LRU window is the
20538 only window, split it even if it is not eligible for splitting.
20539 This restores the original behavior broken by the 2007-07-15
20540 change.
20541
205422007-07-17 Glenn Morris <rgm@gnu.org>
20543
20544 * abbrev.c (abbrev_check_chars): New function.
20545 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20546 Call abbrev_check_chars to check abbrev characters are word
20547 constituents. Doc fix.
20548
205492007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
20550
20551 * process.c (Fstart_process, Fmake_network_process)
20552 (read_process_output): Fix up last changes.
20553
205542007-07-16 Eli Zaretskii <eliz@gnu.org>
20555
20556 * makefile.w32-in (clean): Don't delete *~.
20557
205582007-07-16 Andreas Schwab <schwab@suse.de>
20559
20560 * window.c (Fdisplay_buffer): Use NILP.
20561 (Fset_window_scroll_bars): Likewise.
20562
205632007-07-15 Martin Rudalics <rudalics@gmx.at>
20564
20565 * window.c (window_min_size_2): New function.
20566 (window_min_size_1, size_window, Fdisplay_buffer)
20567 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
20568 windows without mode- or header-lines when window-min-height is
20569 too small.
20570 (size_window): Reset nodelete_p after testing it, following an
20571 earlier note by Kim F. Storm.
20572 (display_buffer): Do not set split_height_threshold to twice the
20573 value of window_min_height to avoid changing the value of a
20574 customizable variable. Rather explicitly check whether the
20575 height of the window that shall be splitted is at least as large
20576 as split_height_threshold.
20577 (Fwindow_full_width_p): New defun.
20578 (syms_of_window): Defsubr it.
20579
20580 * window.h: Add EXFUN for Fwindow_full_width_p.
20581
205822007-07-14 Jason Rumney <jasonr@gnu.org>
20583
20584 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
20585
205862007-07-14 Richard Stallman <rms@gnu.org>
20587
20588 * eval.c (maybe_call_debugger): New function.
20589 (find_handler_clause): Use maybe_call_debugger.
20590 Call it when the handler says `debug'.
20591 Eliminate DEBUGGER_VALUE_PTR.
20592 (Fsignal): Eliminate debugger_value.
20593 (Qdebug): New variable.
20594 (syms_of_eval): Initialize it.
20595
205962007-07-14 Juanma Barranquero <lekktu@gmail.com>
20597
20598 * eval.c (Fprogn):
20599 * keyboard.c (Ftrack_mouse):
20600 * print.c (Fwith_output_to_temp_buffer):
20601 * window.c (Fsave_window_excursion): Doc fix.
20602
206032007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
20604
20605 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
20606
206072007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
20608
20609 * process.h (struct Lisp_Process): Turn slots infd, outfd,
20610 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
20611 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
20612 read_output_delay, and read_output_skip from Lisp_Objects to ints.
20613 Remove unused encoding_carryover.
20614 * process.c: Adjust all functions accordingly.
20615
206162007-07-12 Richard Stallman <rms@gnu.org>
20617
20618 * term.c: Include unistd.h only if HAVE_UNISTD_H.
20619
206202007-07-11 Jason Rumney <jasonr@gnu.org>
20621
20622 * makefile.w32-in (LIBS): Include OLE32.
20623
20624 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
20625 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
20626
206272007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
20628
20629 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
20630 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
20631 from a Lisp_Object into a bare pointer.
20632 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
20633 Adjust the code correspondingly.
20634
20635 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
20636
20637 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
20638 (term_show_mouse_face): Remove unused var `j'.
20639 (handle_one_term_event): Remove unused vars `i' and `j'.
20640 Don't cast return value of ttyname since it's not necessary.
20641
206422007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
20643
20644 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
20645 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
20646
20647 * fns.c (map_char_table): Use an array of int for `indices' rather than
20648 an array of Lisp_Objects (which are only ever integers anyway).
20649 (Fmap_char_table): Update caller.
20650 * lisp.h: Update prototype.
20651 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
20652 * fontset.c (Ffontset_info):
20653 * casetab.c (set_case_table): Update callers.
20654
20655 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
20656
20657 * keymap.c (struct accessible_keymaps_data)
20658 (struct where_is_internal_data): New structures.
20659 (accessible_keymaps_1, where_is_internal_1): Use them to change
20660 interface to adhere to the one used by map_keymap.
20661 (Faccessible_keymaps, where_is_internal): Use map_keymap.
20662 (accessible_keymaps_char_table, where_is_internal_2): Remove.
20663
20664 * keymap.h (map_keymap_function_t): More informative prototype.
20665
206662007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
20667
20668 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
20669 (looking_at_1): Don't change search_regs and last_thing_searched
20670 if `inhibit-changing-match-data' is non-nil.
20671 (string_match_1, search_buffer, set_search_regs): Likewise.
20672 (syms_of_search): Add Lisp level definition for
20673 `inhibit-changing-match-data' and set it to nil.
20674 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
20675 start and end of the match, instead of using values in search_regs.
20676
206772007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
20678
20679 * minibuf.c (Fcompleting_read): New value `confirm-only'
20680 for `require-match'.
20681
206822007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
20683
20684 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
20685 part of the 2007-06-27 change to syms_of_fileio.
20686
206872007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20688
20689 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
20690 Check WINDOWP before using XWINDOW. Consolidate return statements.
20691
206922007-06-27 Richard Stallman <rms@gnu.org>
20693
20694 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
20695
206962007-06-27 Juanma Barranquero <lekktu@gmail.com>
20697
20698 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
20699
207002007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20701
20702 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
20703 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
20704 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
20705 (_free_internal, memalign): Use them.
20706 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
20707 Initialize to PTHREAD_MUTEX_INITIALIZER.
20708 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
20709 (morecore_nolock): Rename from morecore. All uses changed.
20710 Use only nolock versions of internal allocation functions.
20711 (_malloc_internal_nolock, _realloc_internal_nolock)
20712 (_free_internal_nolock): New functions created from
20713 _malloc_internal, _realloc_internal, and _free_internal.
20714 (_malloc_internal, _realloc_internal, _free_internal): Use them.
20715 Copy hook value to automatic variable before its use.
20716 (memalign): Copy hook value to automatic variable before its use.
20717
207182007-06-26 Kenichi Handa <handa@m17n.org>
20719
20720 * coding.c (Ffind_operation_coding_system): Docstring improved.
20721 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
20722
207232007-06-25 David Kastrup <dak@gnu.org>
20724
20725 * keymap.c (Fcurrent_active_maps): Add `position' argument.
20726 (Fwhere_is_internal): Adjust call to `current-active-maps' to
20727 cater for additional parameter.
20728
20729 * keymap.h: Adjust number of parameters to `current-active-maps'.
20730
20731 * doc.c (Fsubstitute_command_keys): Adjust call of
20732 `current-active-maps'.
20733
207342007-06-25 David Kastrup <dak@gnu.org>
20735
20736 * callint.c (Fcall_interactively): Make the parsing of interactive
20737 specs somewhat more readable.
20738
207392007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20740
20741 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
20742 to scroll bar gap also when bitmap fills fringe. Draw only foreground
20743 if extended background has already been filled.
20744
207452007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20746
20747 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
20748 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
20749
20750 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
20751 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
20752 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
20753 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
20754 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
20755 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
20756 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
20757 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
20758 Run timers during dialog popup.
20759 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
20760
207612007-06-21 Jason Rumney <jasonr@gnu.org>
20762
20763 * image.c (convert_mono_to_color_image): Swap fore and background.
20764
207652007-06-20 Jason Rumney <jasonr@gnu.org>
20766
20767 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
20768 (w32_free_bdf_font): Unmap memory not handle.
20769
207702007-06-20 Sam Steingold <sds@gnu.org>
20771
20772 * gmalloc.c (__morecore): Fix the declaration to comply with the
20773 definition.
20774
207752007-06-20 Juanma Barranquero <lekktu@gmail.com>
20776
20777 * w32term.c (w32_delete_display): Remove leftover declaration.
20778 (w32_define_cursor, w32_initialize): Make static.
20779
20780 * w32.c (_wsa_errlist): Fix typo in error message.
20781 (init_environment): Ignore any environment variable from the
20782 registry having a null value.
20783
207842007-06-20 Glenn Morris <rgm@gnu.org>
20785
20786 * Makefile.in (LIBGIF): Default to -lgif.
20787
207882007-06-17 Jason Rumney <jasonr@gnu.org>
20789
20790 * w32menu.c (add_menu_item): Don't use multibyte string functions on
20791 unicode strings.
20792
207932007-06-16 Juanma Barranquero <lekktu@gmail.com>
20794
20795 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
20796 Fix typo in docstring.
20797
207982007-06-16 Eli Zaretskii <eliz@gnu.org>
20799
20800 * w32menu.c (add_menu_item): Escape `&' characters in menu items
20801 and their keybindings.
20802
208032007-06-15 Chong Yidong <cyd@stupidchicken.com>
20804
20805 * composite.c (update_compositions): Fix last fix.
20806
208072007-06-14 Jason Rumney <jasonr@gnu.org>
20808
20809 * w32.c (get_process_times_fn): New function pointer.
20810 (globals_of_w32): Intialize it if present in kernel32.dll.
20811 (w32_get_internal_run_time): New function.
20812
20813 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
20814
208152007-06-14 Kenichi Handa <handa@etlken.m17n.org>
20816
20817 * composite.c (update_compositions): Check the validness of
20818 compositions.
20819
208202007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20821
20822 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
20823 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
20824
20825 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
20826 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
20827
20828 * macgui.h (USE_MAC_TOOLBAR): New define.
20829
20830 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20831 Return immediately unless popup is activated.
20832
20833 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
20834 background to scroll bar gap.
20835 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
20836 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
20837 scroll bars on frame edge. Check fringe background extension.
20838 Don't clear extended fringe background area.
20839 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
20840 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
20841 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
20842 [USE_MAC_TOOLBAR]: New macros.
20843 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
20844 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
20845 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
20846 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
20847 [USE_MAC_TOOLBAR]: New functions.
20848 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
20849 manually if previous repositioning has failed.
20850 (mac_handle_keyboard_event): Use precomputed event kind.
20851 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
20852 as tool bar item click. Handle mouse movement over tool bar items.
20853
20854 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
20855 toolbar_win_gravity.
20856 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
20857 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
20858 Add externs.
20859
20860 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
20861 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
20862
208632007-06-14 Chong Yidong <cyd@stupidchicken.com>
20864
20865 * image.c (search_image_cache): Remove unused variable.
20866
208672007-06-13 Chong Yidong <cyd@stupidchicken.com>
20868
20869 * xfns.c, xmenu.c: Link to xaw3d if available.
20870
208712007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20872
20873 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
20874 frame_foreground and frame_background.
20875
20876 * image.c (lookup_image): Save frame foreground and background colors.
20877 (search_image_cache): Check if saved and current frame colors match.
20878
208792007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
20880
20881 * regex.c (regex_compile): Remove the `regnum' counter.
20882 Use bufp->re_nsub instead. Add support for \(?N:RE\).
20883
208842007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
20885
20886 * term.c: Include intervals.h to declare Fget_text_property.
20887
208882007-06-10 Jason Rumney <jasonr@gnu.org>
20889
20890 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
20891
208922007-06-08 Juanma Barranquero <lekktu@gmail.com>
20893
20894 * callint.c (Fcall_interactively):
20895 * editfns.c (Fdelete_and_extract_region):
20896 * fileio.c (Fread_file_name):
20897 * fns.c (Fmapconcat):
20898 * keyboard.c (cmd_error_internal):
20899 * keymap.c (Fkey_description):
20900 * lread.c (openp):
20901 * minibuf.c (read_minibuf):
20902 * search.c (wordify):
20903 * sunfns.c (sel_read):
20904 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
20905 * xfns.c (x_default_scroll_bar_color_parameter):
20906 * xmenu.c (menu_help_callback):
20907 * xselect.c (Fx_get_atom_name):
20908 * xterm.c (x_term_init): Use empty_unibyte_string.
20909
209102007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
20911
20912 * alloc.c (init_strings): Initialize canonical empty strings.
20913 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
20914 canonical empty string when the requested size is 0.
20915
20916 * emacs.c (empty_unibyte_string): Rename from empty_string.
20917 (empty_multibyte_string): New canonical empty string.
20918 (syms_of_emacs): Don't initialize empty_string.
20919
20920 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
20921 string, if appropriate.
20922 (empty_unibyte_string, empty_multibyte_string): New externs.
20923 (empty_string): Remove extern.
20924
20925 * lread.c (syms_of_lread): Use empty_unibyte_string.
20926
209272007-06-07 Jason Rumney <jasonr@gnu.org>
20928
20929 * s/ms-w32.h: Don't define HAVE_TZNAME.
20930
20931 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
20932
209332007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20934
20935 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
20936
20937 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
20938 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
20939
20940 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
20941 Don't call next handler.
20942 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
20943 Remove argument. Install handler to application.
20944 (set_frame_menubar): Don't change deep_p.
20945 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
20946 FRAME_OUTER_TO_INNER_DIFF_Y.
20947 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
20948 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
20949 [HAVE_DIALOGS]: New macros.
20950 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
20951 Use them.
20952 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
20953
20954 * macselect.c [MAC_OSX] (install_service_handler): Rename from
20955 init_service_handler. All callers changed. Return OSStatus value.
20956
20957 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
20958 All callers changed so as not to call SetPortWindowPort.
20959 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
20960 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
20961 mac_draw_string_common.
20962 (mac_draw_image_string_qd): Likewise.
20963 (mac_draw_string_common): Use them. Add INLINE.
20964 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
20965 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
20966 GetGlobalMouse.
20967 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
20968 and FRAME_OUTER_TO_INNER_DIFF_Y.
20969 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
20970 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
20971 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
20972 repositioning window to mac_handle_window_event.
20973 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
20974 saving window location to mac_handle_window_event
20975 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
20976 (install_menu_target_item_handler): Remove argument in extern.
20977 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
20978 Also accept command events.
20979 (do_keystroke): New function created from XTread_socket.
20980 (init_command_handler): Remove functions.
20981 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
20982 and save window location by kEventWindowShowing and kEventWindowHiding
20983 handlers here. Don't call next handler for window state change and
20984 focus events.
20985 (mac_handle_application_event, mac_handle_keyboard_event)
20986 [TARGET_API_MAC_CARBON]: New functions.
20987 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
20988 kEventWindowShowing and kEventWindowHiding events. Move installation
20989 of mouse, font, text input and menu target item handlers to
20990 install_application_handler.
20991 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
20992 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20993 New function.
20994 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
20995 Register it.
20996 (XTread_socket) [TARGET_API_MAC_CARBON]:
20997 Consolidate SendEventToEventTarget calls.
20998 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
20999 Move application activation handler to mac_handle_application_event.
21000 Move keyboard handler to mac_handle_keyboard_event.
21001 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
21002 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
21003 init_command_handler. Call install_application_handler.
21004
21005 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
21006 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
21007
210082007-06-07 Glenn Morris <rgm@gnu.org>
21009
21010 * emacs.c (main): Use `emacs-copyright' in --version output.
21011
210122007-06-06 Chong Yidong <cyd@stupidchicken.com>
21013
21014 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
21015
210162007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21017
21018 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
21019
21020 * macgui.h: Replace WindowPtr with WindowRef.
21021
21022 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21023 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21024 Replace ControlHandle with ControlRef.
21025 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
21026
21027 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
21028 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
21029 Replace ControlHandle with ControlRef.
21030 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
21031 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
21032
21033 * macterm.h (struct scroll_bar): Rename member control_handle_low
21034 and control_handle_high to control_ref_low and control_ref_high.
21035 All uses changed.
21036 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
21037 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
21038 respectively. All uses changed.
21039 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
21040 (install_window_handler, remove_window_handler): Replace WindowPtr
21041 with WindowRef in externs.
21042
210432007-06-05 Juanma Barranquero <lekktu@gmail.com>
21044
21045 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
21046
210472007-06-03 Nick Roberts <nickrob@snap.net.nz>
21048
21049 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
21050
21051 * frame.c (Fmouse_position, Fmouse_pixel_position):
21052 Condition on HAVE_GPM too.
21053
21054 * term.c (term_mouse_highlight): Remove unused variables.
21055 (Fterm_open_connection): Set gpm_zerobased to 1.
21056 (term_mouse_movement, term_mouse_click, handle_one_term_event):
21057 Use zero based co-ordinates.
21058 (handle_one_term_event): Report a drag as mouse movement too.
21059
21060 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
21061
210622007-06-03 Chong Yidong <cyd@stupidchicken.com>
21063
21064 * image.c (search_image_cache): New function. Require background
21065 color match if background color is unspecified in the image spec.
21066 (uncache_image, lookup_image): Use it.
21067
210682007-06-01 Juanma Barranquero <lekktu@gmail.com>
21069
21070 * window.c (Fshrink_window): Reflow docstring.
21071
210722007-06-02 Chong Yidong <cyd@stupidchicken.com>
21073
21074 * Version 22.1 released.
21075
210762007-06-01 Richard Stallman <rms@gnu.org>
21077
21078 * xfns.c (x_encode_text): Add GCPRO.
21079
210802007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21081
21082 * xfns.c (x_set_name_internal): Save encoded name before
21083 x_encode_text in case string data is relocated.
21084
210852007-05-31 Richard Stallman <rms@gnu.org>
21086
21087 * buffer.c (syms_of_buffer): Doc fix.
21088
210892007-05-30 Nick Roberts <nickrob@snap.net.nz>
21090
21091 * sysdep.c (init_sys_modes): Add rather than replace with
21092 O_NONBLOCK.
21093
21094 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
21095 term_mouse_moveto.
21096
21097 * termhooks.h (term_mouse_moveto): New extern.
21098
21099 * term.c (mouse_face_window): Rename...
21100 (Qmouse_face_window): ...to this.
21101 (term_show_mouse_face, term_clear_mouse_face)
21102 (term_mouse_highlight): Use Qmouse_face_window.
21103 (term_mouse_moveto): New function.
21104 (term_mouse_position): Make it work.
21105 (syms_of_term): Uncomment assignment to mouse_position_hook.
21106 Staticpro Qmouse_face_window.
21107
211082007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21109
21110 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
21111 around current_column call.
21112
211132007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
21114
21115 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
21116 * xdisp.c (next_element_from_buffer):
21117 * window.c (delete_window):
21118 * term.c (term_mouse_highlight):
21119 * msdos.c (getdefdir):
21120 * macterm.c (mac_create_bitmap_from_bitmap_data)
21121 (init_font_name_table):
21122 * fns.c (Fsxhash):
21123 * data.c (Fmake_local_variable):
21124 * ccl.c (ccl_driver): Likewise.
21125
211262007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21127
21128 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
21129 Call mac_wakeup_from_rne on window size change.
21130
211312007-05-25 Chong Yidong <cyd@stupidchicken.com>
21132
21133 * image.c (uncache_image): Fix typo.
21134
211352007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
21136
21137 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
21138
211392007-05-22 Richard Stallman <rms@gnu.org>
21140
21141 * xterm.c (x_connection_closed): Remove NO_RETURN.
21142
211432007-05-22 Martin Rudalics <rudalics@gmx.at>
21144
21145 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
21146
211472007-05-21 Chong Yidong <cyd@stupidchicken.com>
21148
21149 * image.c (uncache_image): New function.
21150 (Fimage_refresh): New function.
21151
211522007-05-20 Jan Djärv <jan.h.d@swipnet.se>
21153
21154 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
21155
211562007-05-20 Nick Roberts <nickrob@snap.net.nz>
21157
21158 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
21159 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
21160
211612007-05-20 Nick Roberts <nickrob@snap.net.nz>
21162
21163 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
21164 conditional on [HAVE_GPM_H].
21165
211662007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
21167
21168 * syntax.c (skip_chars): Update syntax-table only after we checked that
21169 the new location is valid.
21170
211712007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21172
21173 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
21174 mac_get_window_bounds.
21175
211762007-05-20 Nick Roberts <nickrob@snap.net.nz>
21177
21178 * Makefile.in (LIBGPM): Allow it to be set from configure.
21179 If set then link Emacs with it.
21180
21181 * config.in: Regenerate.
21182
21183 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
21184 New externs.
21185
21186 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
21187 Include gpm.h.
21188 (handle_one_term_event, term_gpm): New externs.
21189
21190 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
21191 and allow it to be interrupted by SIGIO.
21192
21193 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
21194 (wait_reading_process_output): Wait on gpm_fd too.
21195 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
21196 (add_gpm_wait_descriptor_called_flag): New variable.
21197 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
21198
21199 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
21200 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
21201 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
21202 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
21203 (make_lispy_event): Add case GPM_CLICK_EVENT.
21204 (read_avail_input): Handle mouse input.
21205
21206 * term.c (write_glyphs_with_face): New function.
21207 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
21208 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
21209 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
21210 (mouse_face_face_id, term_gpm, pos_x, pos_y)
21211 (last_mouse_x, last_mouse_y): New variables.
21212 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
21213 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
21214 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
21215 (Fterm_close_connection): New functions.
21216 (term_init): Initialise mouse_face_window.
21217
212182007-05-19 Chong Yidong <cyd@stupidchicken.com>
21219
21220 * xdisp.c (redisplay_window): If first window line is a
21221 continuation line, recompute the new window start instead of
21222 recentering.
21223
212242007-05-18 Glenn Morris <rgm@gnu.org>
21225
21226 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
21227 Suggested by Alfred M. Szmidt <ams@gnu.org>.
21228
212292007-05-17 Glenn Morris <rgm@gnu.org>
21230
21231 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
21232
212332007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21234
21235 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
21236 dead key repeat and up events.
21237
212382007-05-14 Chong Yidong <cyd@stupidchicken.com>
21239
21240 * image.c (pbm_load): Check image size for monochrome pbm.
21241
212422007-05-13 Chong Yidong <cyd@stupidchicken.com>
21243
21244 * xterm.c (XTread_socket): Revert last change.
21245
212462007-05-12 Chong Yidong <cyd@stupidchicken.com>
21247
21248 * image.c (pbm_load): Correctly check image size for greyscale pbm.
21249
21250 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
21251
212522007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21253
21254 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
21255 mixup (YAILOM).
21256
212572007-05-07 Andreas Schwab <schwab@suse.de>
21258
21259 * keymap.c (Flookup_key): Fix typo in last change.
21260
212612007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
21262
21263 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
21264 mapping for unibyte strings.
21265
212662007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21267
21268 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
21269 (Fx_popup_dialog) [MAC_OSX]: Likewise.
21270
212712007-04-29 Richard Stallman <rms@gnu.org>
21272
21273 * insdel.c (replace_range): For undo, record insertion first.
21274
212752007-04-29 Andreas Schwab <schwab@suse.de>
21276
21277 * lisp.h (VECSIZE): Use OFFSETOF.
21278
212792007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21280
21281 * xdisp.c (try_window_reusing_current_matrix): Fix number of
21282 disabled lines.
21283
212842007-04-28 Richard Stallman <rms@gnu.org>
21285
21286 * lread.c (read_escape): In a string, \s is always space.
21287
212882007-04-27 Jan Djärv <jan.h.d@swipnet.se>
21289
21290 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
21291
21292 * gtkutil.c (xg_update_menubar, create_menus): Create empty
21293 submenu for menu bar items.
21294
21295See ChangeLog.10 for earlier changes.
21296
21297;; Local Variables:
21298;; coding: utf-8
21299;; add-log-time-zone-rule: t
aac0c6e3
MR
21300;; End:
21301
e3eb1dae 21302 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
21303
21304 This file is part of GNU Emacs.
21305
21306 GNU Emacs is free software: you can redistribute it and/or modify
21307 it under the terms of the GNU General Public License as published by
21308 the Free Software Foundation, either version 3 of the License, or
21309 (at your option) any later version.
21310
21311 GNU Emacs is distributed in the hope that it will be useful,
21312 but WITHOUT ANY WARRANTY; without even the implied warranty of
21313 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21314 GNU General Public License for more details.
21315
21316 You should have received a copy of the GNU General Public License
21317 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21318
21319;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40